Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewBackupController ¶
func NewBackupController( livenessChecker *health.MultiAlivenessChecker, backupsClient operatorv1alpha1client.EtcdBackupsGetter, kubeClient kubernetes.Interface, eventRecorder events.Recorder, operatorImagePullSpec string, accessor featuregates.FeatureGateAccess, backupInformer factory.Informer, jobInformer factory.Informer) factory.Controller
func NewBackupRemovalController ¶
func NewBackupRemovalController( livenessChecker *health.MultiAlivenessChecker, backupsClient operatorv1alpha1client.EtcdBackupsGetter, kubeClient kubernetes.Interface, eventRecorder events.Recorder, accessor featuregates.FeatureGateAccess, backupInformer factory.Informer, jobInformer factory.Informer) factory.Controller
Types ¶
type BackupController ¶
type BackupController struct {
// contains filtered or unexported fields
}
type BackupRemovalController ¶
type BackupRemovalController struct {
// contains filtered or unexported fields
}
BackupRemovalController is necessary to clean up dangling etcdbackups that have no existing owner refs anymore. This scenario arises from periodically triggered backups, which are not automatically garbage collected by kube-controller-manager. The reason is that etcdbackups are global, whereas the Job/Pods that create them are namespaced. This is a known and documented limitation, which requires us to build this garbage collection below.
Click to show internal directories.
Click to hide internal directories.