Documentation ¶
Index ¶
- Constants
- Variables
- func CalculateMaxNodesForShoot(shoot *gardencorev1beta1.Shoot) (*int64, error)
- func CheckTunnelConnection(ctx context.Context, log logr.Logger, shootClient kubernetes.Interface, ...) (bool, error)
- func CleanVolumeAttachments(ctx context.Context, c client.Client) error
- func ExtractZonesFromNodeSelectorTerm(term corev1.NodeSelectorTerm) []string
- func OperatingSystemConfigUpdatedForAllWorkerPools(workers []gardencorev1beta1.Worker, workerPoolToNodes map[string][]corev1.Node, ...) error
- func WorkerPoolToNodesMap(ctx context.Context, shootClient client.Client) (map[string][]corev1.Node, error)
- func WorkerPoolToOperatingSystemConfigSecretMetaMap(ctx context.Context, shootClient client.Client, roleValue string) (map[string]metav1.ObjectMeta, error)
- type Botanist
- func (b *Botanist) CleanExtendedAPIs(ctx context.Context) error
- func (b *Botanist) CleanKubernetesResources(ctx context.Context) error
- func (b *Botanist) CleanWebhooks(ctx context.Context) error
- func (b *Botanist) DefaultAPIServerProxy() (apiserverproxy.Interface, error)
- func (b *Botanist) DefaultAlertmanager() (alertmanager.Interface, error)
- func (b *Botanist) DefaultBlackboxExporterCluster() (component.DeployWaiter, error)
- func (b *Botanist) DefaultBlackboxExporterControlPlane() (component.DeployWaiter, error)
- func (b *Botanist) DefaultClusterAutoscaler() (clusterautoscaler.Interface, error)
- func (b *Botanist) DefaultClusterIdentity() clusteridentity.Interface
- func (b *Botanist) DefaultContainerRuntime() containerruntime.Interface
- func (b *Botanist) DefaultControlPlane(purpose extensionsv1alpha1.Purpose) extensionscontrolplane.Interface
- func (b *Botanist) DefaultCoreBackupEntry() corebackupentry.Interface
- func (b *Botanist) DefaultCoreDNS() (coredns.Interface, error)
- func (b *Botanist) DefaultDependencyWatchdogAccess() component.Deployer
- func (b *Botanist) DefaultEtcd(role string, class etcd.Class) (etcd.Interface, error)
- func (b *Botanist) DefaultEtcdCopyBackupsTask() etcdcopybackupstask.Interface
- func (b *Botanist) DefaultEventLogger() (component.Deployer, error)
- func (b *Botanist) DefaultExtension(ctx context.Context) (extension.Interface, error)
- func (b *Botanist) DefaultExternalDNSRecord() extensionsdnsrecord.Interface
- func (b *Botanist) DefaultGardenerAccess() component.Deployer
- func (b *Botanist) DefaultInfrastructure() infrastructure.Interface
- func (b *Botanist) DefaultIngressDNSRecord() extensionsdnsrecord.Interface
- func (b *Botanist) DefaultInternalDNSRecord() extensionsdnsrecord.Interface
- func (b *Botanist) DefaultKubeAPIServer(ctx context.Context) (kubeapiserver.Interface, error)
- func (b *Botanist) DefaultKubeAPIServerIngress() component.Deployer
- func (b *Botanist) DefaultKubeAPIServerSNI() component.DeployWaiter
- func (b *Botanist) DefaultKubeAPIServerService() component.DeployWaiter
- func (b *Botanist) DefaultKubeControllerManager() (kubecontrollermanager.Interface, error)
- func (b *Botanist) DefaultKubeProxy() (kubeproxy.Interface, error)
- func (b *Botanist) DefaultKubeScheduler() (component.DeployWaiter, error)
- func (b *Botanist) DefaultKubeStateMetrics() (component.DeployWaiter, error)
- func (b *Botanist) DefaultKubernetesDashboard() (kubernetesdashboard.Interface, error)
- func (b *Botanist) DefaultMachineControllerManager(ctx context.Context) (machinecontrollermanager.Interface, error)
- func (b *Botanist) DefaultMetricsServer() (component.DeployWaiter, error)
- func (b *Botanist) DefaultNetwork() component.DeployMigrateWaiter
- func (b *Botanist) DefaultNginxIngress() (component.DeployWaiter, error)
- func (b *Botanist) DefaultNodeExporter() (component.DeployWaiter, error)
- func (b *Botanist) DefaultNodeLocalDNS() (component.DeployWaiter, error)
- func (b *Botanist) DefaultNodeProblemDetector() (component.DeployWaiter, error)
- func (b *Botanist) DefaultOperatingSystemConfig() (operatingsystemconfig.Interface, error)
- func (b *Botanist) DefaultPlutono() (plutono.Interface, error)
- func (b *Botanist) DefaultPrometheus() (prometheus.Interface, error)
- func (b *Botanist) DefaultResourceManager() (resourcemanager.Interface, error)
- func (b *Botanist) DefaultShootNamespaces() component.DeployWaiter
- func (b *Botanist) DefaultShootSystem() shootsystem.Interface
- func (b *Botanist) DefaultVPNSeedServer() (vpnseedserver.Interface, error)
- func (b *Botanist) DefaultVPNShoot() (component.DeployWaiter, error)
- func (b *Botanist) DefaultVali() (component.Deployer, error)
- func (b *Botanist) DefaultVerticalPodAutoscaler() (vpa.Interface, error)
- func (b *Botanist) DefaultWorker() worker.Interface
- func (b *Botanist) DeleteBastions(ctx context.Context) error
- func (b *Botanist) DeleteKubeAPIServer(ctx context.Context) error
- func (b *Botanist) DeleteManagedResources(ctx context.Context) error
- func (b *Botanist) DeletePublicServiceAccountKeys(ctx context.Context) error
- func (b *Botanist) DeleteSeedNamespace(ctx context.Context) error
- func (b *Botanist) DeployAPIServerProxy(ctx context.Context) error
- func (b *Botanist) DeployAlertManager(ctx context.Context) error
- func (b *Botanist) DeployBackupEntry(ctx context.Context) error
- func (b *Botanist) DeployCloudProviderSecret(ctx context.Context) error
- func (b *Botanist) DeployClusterAutoscaler(ctx context.Context) error
- func (b *Botanist) DeployClusterIdentity(ctx context.Context) error
- func (b *Botanist) DeployContainerRuntime(ctx context.Context) error
- func (b *Botanist) DeployControlPlane(ctx context.Context) error
- func (b *Botanist) DeployControlPlaneExposure(ctx context.Context) error
- func (b *Botanist) DeployCoreDNS(ctx context.Context) error
- func (b *Botanist) DeployDependencyWatchdogAccess(ctx context.Context) error
- func (b *Botanist) DeployEtcd(ctx context.Context) error
- func (b *Botanist) DeployEtcdCopyBackupsTask(ctx context.Context) error
- func (b *Botanist) DeployExtensionsAfterKubeAPIServer(ctx context.Context) error
- func (b *Botanist) DeployExtensionsAfterWorker(ctx context.Context) error
- func (b *Botanist) DeployExtensionsBeforeKubeAPIServer(ctx context.Context) error
- func (b *Botanist) DeployGardenerResourceManager(ctx context.Context) error
- func (b *Botanist) DeployInfrastructure(ctx context.Context) error
- func (b *Botanist) DeployKubeAPIServer(ctx context.Context) error
- func (b *Botanist) DeployKubeAPIServerIngress(ctx context.Context) error
- func (b *Botanist) DeployKubeAPIServerSNI(ctx context.Context) error
- func (b *Botanist) DeployKubeControllerManager(ctx context.Context) error
- func (b *Botanist) DeployKubeProxy(ctx context.Context) error
- func (b *Botanist) DeployKubeStateMetrics(ctx context.Context) error
- func (b *Botanist) DeployKubernetesDashboard(ctx context.Context) error
- func (b *Botanist) DeployLogging(ctx context.Context) error
- func (b *Botanist) DeployMachineControllerManager(ctx context.Context) error
- func (b *Botanist) DeployManagedResourceForGardenerNodeAgent(ctx context.Context) error
- func (b *Botanist) DeployNetwork(ctx context.Context) error
- func (b *Botanist) DeployNginxIngressAddon(ctx context.Context) error
- func (b *Botanist) DeployOperatingSystemConfig(ctx context.Context) error
- func (b *Botanist) DeployOrDestroyExternalDNSRecord(ctx context.Context) error
- func (b *Botanist) DeployOrDestroyIngressDNSRecord(ctx context.Context) error
- func (b *Botanist) DeployOrDestroyInternalDNSRecord(ctx context.Context) error
- func (b *Botanist) DeployPlutono(ctx context.Context) error
- func (b *Botanist) DeployPrometheus(ctx context.Context) error
- func (b *Botanist) DeployReferencedResources(ctx context.Context) error
- func (b *Botanist) DeploySeedNamespace(ctx context.Context) error
- func (b *Botanist) DeployShootSystem(ctx context.Context) error
- func (b *Botanist) DeploySourceBackupEntry(ctx context.Context) error
- func (b *Botanist) DeployVPNServer(ctx context.Context) error
- func (b *Botanist) DeployVerticalPodAutoscaler(ctx context.Context) error
- func (b *Botanist) DeployWorker(ctx context.Context) error
- func (b *Botanist) DestroyDNSRecords(ctx context.Context) error
- func (b *Botanist) DestroyEtcd(ctx context.Context) error
- func (b *Botanist) DestroyExtensionResourcesInParallel(ctx context.Context) error
- func (b *Botanist) DestroyExternalDNSRecord(ctx context.Context) error
- func (b *Botanist) DestroyIngressDNSRecord(ctx context.Context) error
- func (b *Botanist) DestroyInternalDNSRecord(ctx context.Context) error
- func (b *Botanist) DestroyPrometheus(ctx context.Context) error
- func (b *Botanist) DestroyReferencedResources(ctx context.Context) error
- func (b *Botanist) DestroySeedLogging(ctx context.Context) error
- func (b *Botanist) DestroySourceBackupEntry(ctx context.Context) error
- func (b *Botanist) EnsureShootClusterIdentity(ctx context.Context) error
- func (b *Botanist) HibernateControlPlane(ctx context.Context) error
- func (b *Botanist) InitializeSecretsManagement(ctx context.Context) error
- func (b *Botanist) IsCopyOfBackupsRequired(ctx context.Context) (bool, error)
- func (b *Botanist) IsRestorePhase() bool
- func (b *Botanist) KeepObjectsForManagedResources(ctx context.Context) error
- func (b *Botanist) MigrateExtensionResourcesInParallel(ctx context.Context) (err error)
- func (b *Botanist) MigrateExternalDNSRecord(ctx context.Context) error
- func (b *Botanist) MigrateIngressDNSRecord(ctx context.Context) error
- func (b *Botanist) MigrateInternalDNSRecord(ctx context.Context) error
- func (b *Botanist) MigrateOperatingSystemConfigWorkerPoolHashes(ctx context.Context) error
- func (b *Botanist) MigratePrometheus(ctx context.Context) error
- func (b *Botanist) NeedsExternalDNS() bool
- func (b *Botanist) NeedsIngressDNS() bool
- func (b *Botanist) NeedsInternalDNS() bool
- func (b *Botanist) ReconcileBlackboxExporterCluster(ctx context.Context) error
- func (b *Botanist) ReconcileBlackboxExporterControlPlane(ctx context.Context) error
- func (b *Botanist) ReconcileNodeExporter(ctx context.Context) error
- func (b *Botanist) ReconcileNodeLocalDNS(ctx context.Context) error
- func (b *Botanist) RequiredExtensionsReady(ctx context.Context) error
- func (b *Botanist) RestartControlPlanePods(ctx context.Context) error
- func (b *Botanist) RestoreControlPlane(ctx context.Context) error
- func (b *Botanist) ScaleClusterAutoscalerToZero(ctx context.Context) error
- func (b *Botanist) ScaleETCDToZero(ctx context.Context) error
- func (b *Botanist) ScaleGardenerResourceManagerToOne(ctx context.Context) error
- func (b *Botanist) ScaleKubeAPIServerToOne(ctx context.Context) error
- func (b *Botanist) ScaleKubeControllerManagerToOne(ctx context.Context) error
- func (b *Botanist) ScaleMachineControllerManagerToZero(ctx context.Context) error
- func (b *Botanist) ScaleUpETCD(ctx context.Context) error
- func (b *Botanist) SetNginxIngressAddress(address string)
- func (b *Botanist) ShallowDeleteMachineResources(ctx context.Context) error
- func (b *Botanist) ShootUsesDNS() bool
- func (b *Botanist) SnapshotEtcd(ctx context.Context) error
- func (b *Botanist) SourceBackupEntry() corebackupentry.Interface
- func (b *Botanist) SyncPublicServiceAccountKeys(ctx context.Context) error
- func (b *Botanist) ToAdvertisedAddresses() ([]gardencorev1beta1.ShootAdvertisedAddress, error)
- func (b *Botanist) UpdateAdvertisedAddresses(ctx context.Context) error
- func (b *Botanist) WaitForInfrastructure(ctx context.Context) error
- func (b *Botanist) WaitForKubeControllerManagerToBeActive(ctx context.Context) error
- func (b *Botanist) WaitUntilEndpointsDoNotContainPodIPs(ctx context.Context) error
- func (b *Botanist) WaitUntilEtcdsDeleted(ctx context.Context) error
- func (b *Botanist) WaitUntilEtcdsReady(ctx context.Context) error
- func (b *Botanist) WaitUntilExtensionResourcesDeleted(ctx context.Context) error
- func (b *Botanist) WaitUntilExtensionResourcesMigrated(ctx context.Context) error
- func (b *Botanist) WaitUntilManagedResourcesDeleted(ctx context.Context) error
- func (b *Botanist) WaitUntilNginxIngressServiceIsReady(ctx context.Context) error
- func (b *Botanist) WaitUntilNoPodRunning(ctx context.Context) error
- func (b *Botanist) WaitUntilNodesDeleted(ctx context.Context) error
- func (b *Botanist) WaitUntilOperatingSystemConfigUpdatedForAllWorkerPools(ctx context.Context) error
- func (b *Botanist) WaitUntilRequiredExtensionsReady(ctx context.Context) error
- func (b *Botanist) WaitUntilSeedNamespaceDeleted(ctx context.Context) error
- func (b *Botanist) WaitUntilShootManagedResourcesDeleted(ctx context.Context) error
- func (b *Botanist) WaitUntilTunnelConnectionExists(ctx context.Context) error
- func (b *Botanist) WakeUpKubeAPIServer(ctx context.Context) error
Constants ¶
const ( // Provider is the kubernetes provider label. Provider = "provider" // KubernetesProvider is the 'kubernetes' value of the Provider label. KubernetesProvider = "kubernetes" // KubeAggregatorAutoManaged is the label whether an APIService is automanaged by kube-aggregator. KubeAggregatorAutoManaged = autoregister.AutoRegisterManagedLabel // MetadataNameField ist the `metadata.name` field for a field selector. MetadataNameField = "metadata.name" )
const (
// DNSRecordSecretPrefix is a constant for prefixing secrets referenced by DNSRecords
DNSRecordSecretPrefix = "dnsrecord"
)
const DefaultInterval = 5 * time.Second
DefaultInterval is the default interval for retry operations.
const GardenerNodeAgentManagedResourceName = "shoot-gardener-node-agent"
GardenerNodeAgentManagedResourceName is a constant for the name of a ManagedResource in the seed cluster in the shoot namespace which contains resources for gardener-node-agent.
const (
// ManagedResourceName is the name of the managed resource used to deploy referenced resources to the Seed cluster.
ManagedResourceName = "referenced-resources"
)
const SecretLabelKeyManagedResource = "managed-resource"
SecretLabelKeyManagedResource is a key for a label on a secret with the value 'managed-resource'.
Variables ¶
var ( // FinalizeAfterFiveMinutes is an option to finalize resources after five minutes. FinalizeAfterFiveMinutes = utilclient.FinalizeGracePeriodSeconds(5 * 60) // FinalizeAfterOneHour is an option to finalize resources after one hour. FinalizeAfterOneHour = utilclient.FinalizeGracePeriodSeconds(60 * 60) // ZeroGracePeriod can be used for deleting resources with no grace period. ZeroGracePeriod = client.GracePeriodSeconds(0) // GracePeriodFiveMinutes can be used for deleting resources with a grace period of five minutes. GracePeriodFiveMinutes = client.GracePeriodSeconds(5 * 60) // NotSystemComponent is a requirement that something doesn't have the GardenRole GardenRoleSystemComponent. NotSystemComponent = utils.MustNewRequirement(v1beta1constants.GardenRole, selection.NotEquals, v1beta1constants.GardenRoleSystemComponent) // NoCleanupPrevention is a requirement that the ShootNoCleanup label of something is not true. NoCleanupPrevention = utils.MustNewRequirement(v1beta1constants.ShootNoCleanup, selection.NotEquals, "true") // NotKubernetesProvider is a requirement that the Provider label of something is not KubernetesProvider. NotKubernetesProvider = utils.MustNewRequirement(Provider, selection.NotEquals, KubernetesProvider) // NotKubeAggregatorAutoManaged is a requirement that something is not auto-managed by Kube-Aggregator. NotKubeAggregatorAutoManaged = utils.MustNewRequirement(KubeAggregatorAutoManaged, selection.DoesNotExist) // CleanupSelector is a selector that excludes system components and all resources not considered for auto cleanup. CleanupSelector = labels.NewSelector().Add(NotSystemComponent).Add(NoCleanupPrevention) // NoCleanupPreventionListOption are CollectionMatching that exclude system components or non-auto cleaned up resource. NoCleanupPreventionListOption = client.MatchingLabelsSelector{Selector: CleanupSelector} // MutatingWebhookConfigurationCleanOption is the delete selector for MutatingWebhookConfigurations. MutatingWebhookConfigurationCleanOption = utilclient.ListWith{&NoCleanupPreventionListOption} // ValidatingWebhookConfigurationCleanOption is the delete selector for ValidatingWebhookConfigurations. ValidatingWebhookConfigurationCleanOption = utilclient.ListWith{&NoCleanupPreventionListOption} // CustomResourceDefinitionCleanOption is the delete selector for CustomResources. CustomResourceDefinitionCleanOption = utilclient.ListWith{&NoCleanupPreventionListOption} // DaemonSetCleanOption is the delete selector for DaemonSets. DaemonSetCleanOption = utilclient.ListWith{&NoCleanupPreventionListOption} // DeploymentCleanOption is the delete selector for Deployments. DeploymentCleanOption = utilclient.ListWith{&NoCleanupPreventionListOption} // StatefulSetCleanOption is the delete selector for StatefulSets. StatefulSetCleanOption = utilclient.ListWith{&NoCleanupPreventionListOption} // ServiceCleanOption is the delete selector for Services. ServiceCleanOption = utilclient.ListWith{ client.MatchingLabelsSelector{ Selector: labels.NewSelector().Add(NotKubernetesProvider, NotSystemComponent, NoCleanupPrevention), }, } // APIServiceCleanOption is the delete selector for APIServices. APIServiceCleanOption = utilclient.ListWith{ client.MatchingLabelsSelector{ Selector: labels.NewSelector().Add(NotSystemComponent, NotKubeAggregatorAutoManaged), }, } // CronJobCleanOption is the delete selector for CronJobs. CronJobCleanOption = utilclient.ListWith{&NoCleanupPreventionListOption} // IngressCleanOption is the delete selector for Ingresses. IngressCleanOption = utilclient.ListWith{&NoCleanupPreventionListOption} // JobCleanOption is the delete selector for Jobs. JobCleanOption = utilclient.ListWith{&NoCleanupPreventionListOption} // PodCleanOption is the delete selector for Pods. PodCleanOption = utilclient.ListWith{&NoCleanupPreventionListOption} // ReplicaSetCleanOption is the delete selector for ReplicaSets. ReplicaSetCleanOption = utilclient.ListWith{&NoCleanupPreventionListOption} // ReplicationControllerCleanOption is the delete selector for ReplicationControllers. ReplicationControllerCleanOption = utilclient.ListWith{&NoCleanupPreventionListOption} // PersistentVolumeClaimCleanOption is the delete selector for PersistentVolumeClaims. PersistentVolumeClaimCleanOption = utilclient.ListWith{&NoCleanupPreventionListOption} // VolumeSnapshotCleanOption is the delete selector for VolumeSnapshots. VolumeSnapshotCleanOption = utilclient.ListWith{&NoCleanupPreventionListOption} // VolumeSnapshotContentCleanOption is the delete selector for VolumeSnapshotContents. VolumeSnapshotContentCleanOption = utilclient.ListWith{&NoCleanupPreventionListOption} )
var ( // NodeAgentOSCSecretFn is a function for computing the operating system config secret for gardener-node-agent. NodeAgentOSCSecretFn = nodeagent.OperatingSystemConfigSecret // NodeAgentRBACResourcesDataFn is a function for generating the RBAC resources data map for the // gardener-node-agent. NodeAgentRBACResourcesDataFn = nodeagent.RBACResourcesData )
exposed for testing
var ( // IntervalWaitOperatingSystemConfigUpdated is the interval when waiting until the operating system config was // updated for all worker pools. IntervalWaitOperatingSystemConfigUpdated = 5 * time.Second // GetTimeoutWaitOperatingSystemConfigUpdated retrieves the timeout when waiting until the operating system config // was updated for all worker pools. GetTimeoutWaitOperatingSystemConfigUpdated = getTimeoutWaitOperatingSystemConfigUpdated )
exposed for testing
var NewEtcd = etcd.New
NewEtcd is a function exposed for testing.
var NewEtcdCopyBackupsTask = etcdcopybackupstask.New
NewEtcdCopyBackupsTask is a function exposed for testing.
var NowFunc = time.Now
NowFunc is a function returning the current time. Exposed for testing.
var SetupPortForwarder = kubernetes.SetupPortForwarder
SetupPortForwarder is an alias for kubernetes.SetupPortForwarder, exposed for testing
Functions ¶
func CalculateMaxNodesForShoot ¶ added in v1.94.0
func CalculateMaxNodesForShoot(shoot *gardencorev1beta1.Shoot) (*int64, error)
CalculateMaxNodesForShoot returns the maximum number of nodes the shoot supports. Function returns nil if there is no limitation.
func CheckTunnelConnection ¶
func CheckTunnelConnection(ctx context.Context, log logr.Logger, shootClient kubernetes.Interface, tunnelName string) (bool, error)
CheckTunnelConnection checks if the tunnel connection between the control plane and the shoot networks is established.
func CleanVolumeAttachments ¶
CleanVolumeAttachments cleans up all VolumeAttachments in the cluster, waits for them to be gone and finalizes any remaining ones after five minutes.
func ExtractZonesFromNodeSelectorTerm ¶
func ExtractZonesFromNodeSelectorTerm(term corev1.NodeSelectorTerm) []string
ExtractZonesFromNodeSelectorTerm extracts the zones from given term.
func OperatingSystemConfigUpdatedForAllWorkerPools ¶
func OperatingSystemConfigUpdatedForAllWorkerPools( workers []gardencorev1beta1.Worker, workerPoolToNodes map[string][]corev1.Node, workerPoolToOperatingSystemConfigSecretMeta map[string]metav1.ObjectMeta, ) error
OperatingSystemConfigUpdatedForAllWorkerPools checks if all the nodes for all the provided worker pools have successfully applied the desired version of their cloud-config user data.
func WorkerPoolToNodesMap ¶
func WorkerPoolToNodesMap(ctx context.Context, shootClient client.Client) (map[string][]corev1.Node, error)
WorkerPoolToNodesMap lists all the nodes with the given client in the shoot cluster. It returns a map whose key is the name of a worker pool and whose values are the corresponding nodes.
func WorkerPoolToOperatingSystemConfigSecretMetaMap ¶
func WorkerPoolToOperatingSystemConfigSecretMetaMap(ctx context.Context, shootClient client.Client, roleValue string) (map[string]metav1.ObjectMeta, error)
WorkerPoolToOperatingSystemConfigSecretMetaMap lists all the cloud-config secrets with the given client in the shoot cluster. It returns a map whose key is the name of a worker pool and whose values are the corresponding metadata of the cloud-config script stored inside the secret's data.
Types ¶
type Botanist ¶
Botanist is a struct which has methods that perform cloud-independent operations for a Shoot cluster.
func New ¶
New takes an operation object <o> and creates a new Botanist object. It checks whether the given Shoot DNS domain is covered by a default domain, and if so, it sets the <DefaultDomainSecret> attribute on the Botanist object.
func (*Botanist) CleanExtendedAPIs ¶
CleanExtendedAPIs removes API extensions like CRDs and API services from the Shoot cluster.
func (*Botanist) CleanKubernetesResources ¶
CleanKubernetesResources deletes all the Kubernetes resources in the Shoot cluster other than those stored in the exceptions map. It will check whether all the Kubernetes resources in the Shoot cluster other than those stored in the exceptions map have been deleted. It will return an error in case it has not finished yet, and nil if all resources are gone.
func (*Botanist) CleanWebhooks ¶
CleanWebhooks deletes all Webhooks in the Shoot cluster that are not being managed by the addon manager.
func (*Botanist) DefaultAPIServerProxy ¶
func (b *Botanist) DefaultAPIServerProxy() (apiserverproxy.Interface, error)
DefaultAPIServerProxy returns a deployer for the apiserver-proxy.
func (*Botanist) DefaultAlertmanager ¶
func (b *Botanist) DefaultAlertmanager() (alertmanager.Interface, error)
DefaultAlertmanager creates a new alertmanager deployer.
func (*Botanist) DefaultBlackboxExporterCluster ¶ added in v1.95.0
func (b *Botanist) DefaultBlackboxExporterCluster() (component.DeployWaiter, error)
DefaultBlackboxExporterCluster returns a deployer for the blackbox-exporter.
func (*Botanist) DefaultBlackboxExporterControlPlane ¶ added in v1.95.0
func (b *Botanist) DefaultBlackboxExporterControlPlane() (component.DeployWaiter, error)
DefaultBlackboxExporterControlPlane returns a deployer for the blackbox-exporter.
func (*Botanist) DefaultClusterAutoscaler ¶
func (b *Botanist) DefaultClusterAutoscaler() (clusterautoscaler.Interface, error)
DefaultClusterAutoscaler returns a deployer for the cluster-autoscaler.
func (*Botanist) DefaultClusterIdentity ¶
func (b *Botanist) DefaultClusterIdentity() clusteridentity.Interface
DefaultClusterIdentity returns a deployer for the shoot's cluster-identity.
func (*Botanist) DefaultContainerRuntime ¶
func (b *Botanist) DefaultContainerRuntime() containerruntime.Interface
DefaultContainerRuntime creates the default deployer for the ContainerRuntime custom resource.
func (*Botanist) DefaultControlPlane ¶
func (b *Botanist) DefaultControlPlane(purpose extensionsv1alpha1.Purpose) extensionscontrolplane.Interface
DefaultControlPlane creates the default deployer for the ControlPlane custom resource with the given purpose.
func (*Botanist) DefaultCoreBackupEntry ¶
func (b *Botanist) DefaultCoreBackupEntry() corebackupentry.Interface
DefaultCoreBackupEntry creates the default deployer for the core.gardener.cloud/v1beta1.BackupEntry resource.
func (*Botanist) DefaultCoreDNS ¶
DefaultCoreDNS returns a deployer for the CoreDNS.
func (*Botanist) DefaultDependencyWatchdogAccess ¶
DefaultDependencyWatchdogAccess returns an instance of the Deployer which reconciles the resources so that DependencyWatchdogAccess can access a shoot cluster.
func (*Botanist) DefaultEtcd ¶
DefaultEtcd returns a deployer for the etcd.
func (*Botanist) DefaultEtcdCopyBackupsTask ¶
func (b *Botanist) DefaultEtcdCopyBackupsTask() etcdcopybackupstask.Interface
DefaultEtcdCopyBackupsTask creates the default deployer for the EtcdCopyBackupsTask resource.
func (*Botanist) DefaultEventLogger ¶
DefaultEventLogger returns a deployer for the shoot-event-logger.
func (*Botanist) DefaultExtension ¶
DefaultExtension creates the default deployer for the Extension custom resources.
func (*Botanist) DefaultExternalDNSRecord ¶
func (b *Botanist) DefaultExternalDNSRecord() extensionsdnsrecord.Interface
DefaultExternalDNSRecord creates the default deployer for the external DNSRecord resource.
func (*Botanist) DefaultGardenerAccess ¶
DefaultGardenerAccess returns an instance of the Deployer which reconciles the resources so that GardenerAccess can access a shoot cluster.
func (*Botanist) DefaultInfrastructure ¶
func (b *Botanist) DefaultInfrastructure() infrastructure.Interface
DefaultInfrastructure creates the default deployer for the Infrastructure custom resource.
func (*Botanist) DefaultIngressDNSRecord ¶
func (b *Botanist) DefaultIngressDNSRecord() extensionsdnsrecord.Interface
DefaultIngressDNSRecord creates the default deployer for the ingress DNSRecord resource.
func (*Botanist) DefaultInternalDNSRecord ¶
func (b *Botanist) DefaultInternalDNSRecord() extensionsdnsrecord.Interface
DefaultInternalDNSRecord creates the default deployer for the internal DNSRecord resource.
func (*Botanist) DefaultKubeAPIServer ¶
DefaultKubeAPIServer returns a deployer for the kube-apiserver.
func (*Botanist) DefaultKubeAPIServerIngress ¶
DefaultKubeAPIServerIngress returns a deployer for the kube-apiserver ingress.
func (*Botanist) DefaultKubeAPIServerSNI ¶
func (b *Botanist) DefaultKubeAPIServerSNI() component.DeployWaiter
DefaultKubeAPIServerSNI returns a deployer for the kube-apiserver SNI.
func (*Botanist) DefaultKubeAPIServerService ¶
func (b *Botanist) DefaultKubeAPIServerService() component.DeployWaiter
DefaultKubeAPIServerService returns a deployer for the kube-apiserver service.
func (*Botanist) DefaultKubeControllerManager ¶
func (b *Botanist) DefaultKubeControllerManager() (kubecontrollermanager.Interface, error)
DefaultKubeControllerManager returns a deployer for the kube-controller-manager.
func (*Botanist) DefaultKubeProxy ¶
DefaultKubeProxy returns a deployer for the kube-proxy.
func (*Botanist) DefaultKubeScheduler ¶
func (b *Botanist) DefaultKubeScheduler() (component.DeployWaiter, error)
DefaultKubeScheduler returns a deployer for the kube-scheduler.
func (*Botanist) DefaultKubeStateMetrics ¶
func (b *Botanist) DefaultKubeStateMetrics() (component.DeployWaiter, error)
DefaultKubeStateMetrics returns a deployer for the kube-state-metrics.
func (*Botanist) DefaultKubernetesDashboard ¶
func (b *Botanist) DefaultKubernetesDashboard() (kubernetesdashboard.Interface, error)
DefaultKubernetesDashboard returns a deployer for kubernetes-dashboard.
func (*Botanist) DefaultMachineControllerManager ¶
func (b *Botanist) DefaultMachineControllerManager(ctx context.Context) (machinecontrollermanager.Interface, error)
DefaultMachineControllerManager returns a deployer for the machine-controller-manager.
func (*Botanist) DefaultMetricsServer ¶
func (b *Botanist) DefaultMetricsServer() (component.DeployWaiter, error)
DefaultMetricsServer returns a deployer for the metrics-server.
func (*Botanist) DefaultNetwork ¶
func (b *Botanist) DefaultNetwork() component.DeployMigrateWaiter
DefaultNetwork creates the default deployer for the Network custom resource.
func (*Botanist) DefaultNginxIngress ¶
func (b *Botanist) DefaultNginxIngress() (component.DeployWaiter, error)
DefaultNginxIngress returns a deployer for the nginxingress.
func (*Botanist) DefaultNodeExporter ¶
func (b *Botanist) DefaultNodeExporter() (component.DeployWaiter, error)
DefaultNodeExporter returns a deployer for the NodeExporter.
func (*Botanist) DefaultNodeLocalDNS ¶
func (b *Botanist) DefaultNodeLocalDNS() (component.DeployWaiter, error)
DefaultNodeLocalDNS returns a deployer for the node-local-dns.
func (*Botanist) DefaultNodeProblemDetector ¶
func (b *Botanist) DefaultNodeProblemDetector() (component.DeployWaiter, error)
DefaultNodeProblemDetector returns a deployer for the NodeProblemDetector.
func (*Botanist) DefaultOperatingSystemConfig ¶
func (b *Botanist) DefaultOperatingSystemConfig() (operatingsystemconfig.Interface, error)
DefaultOperatingSystemConfig creates the default deployer for the OperatingSystemConfig custom resource.
func (*Botanist) DefaultPlutono ¶
DefaultPlutono returns a deployer for Plutono.
func (*Botanist) DefaultPrometheus ¶ added in v1.95.0
func (b *Botanist) DefaultPrometheus() (prometheus.Interface, error)
DefaultPrometheus creates a new prometheus deployer.
func (*Botanist) DefaultResourceManager ¶
func (b *Botanist) DefaultResourceManager() (resourcemanager.Interface, error)
DefaultResourceManager returns an instance of Gardener Resource Manager with defaults configured for being deployed in a Shoot namespace
func (*Botanist) DefaultShootNamespaces ¶
func (b *Botanist) DefaultShootNamespaces() component.DeployWaiter
DefaultShootNamespaces returns a deployer for the shoot namespaces.
func (*Botanist) DefaultShootSystem ¶
func (b *Botanist) DefaultShootSystem() shootsystem.Interface
DefaultShootSystem returns a deployer for the shoot system resources.
func (*Botanist) DefaultVPNSeedServer ¶
func (b *Botanist) DefaultVPNSeedServer() (vpnseedserver.Interface, error)
DefaultVPNSeedServer returns a deployer for the vpn-seed-server.
func (*Botanist) DefaultVPNShoot ¶
func (b *Botanist) DefaultVPNShoot() (component.DeployWaiter, error)
DefaultVPNShoot returns a deployer for the VPNShoot
func (*Botanist) DefaultVali ¶
DefaultVali returns a deployer for Vali.
func (*Botanist) DefaultVerticalPodAutoscaler ¶
DefaultVerticalPodAutoscaler returns a deployer for the Kubernetes Vertical Pod Autoscaler.
func (*Botanist) DefaultWorker ¶
DefaultWorker creates the default deployer for the Worker custom resource.
func (*Botanist) DeleteBastions ¶
DeleteBastions deletes all bastions from the Shoot namespace in the Seed.
func (*Botanist) DeleteKubeAPIServer ¶
DeleteKubeAPIServer deletes the kube-apiserver deployment in the Seed cluster which holds the Shoot's control plane.
func (*Botanist) DeleteManagedResources ¶
DeleteManagedResources deletes all managed resources labeled with `origin=gardener` from the Shoot namespace in the Seed.
func (*Botanist) DeletePublicServiceAccountKeys ¶ added in v1.91.0
DeletePublicServiceAccountKeys deletes the secret containing the public info of the shoot's service account issuer from the gardener-system-shoot-issuer namespace in the Garden cluster.
func (*Botanist) DeleteSeedNamespace ¶
DeleteSeedNamespace deletes the namespace in the Seed cluster which holds the control plane components. The built-in garbage collection in Kubernetes will automatically delete all resources which belong to this namespace. This comprises volumes and load balancers as well.
func (*Botanist) DeployAPIServerProxy ¶
DeployAPIServerProxy deploys the apiserver-proxy.
func (*Botanist) DeployAlertManager ¶
DeployAlertManager reconciles the shoot alert manager.
func (*Botanist) DeployBackupEntry ¶
DeployBackupEntry deploys the BackupEntry resource in the Garden cluster and triggers the restore operation in case the Shoot is in the restore phase of the control plane migration.
func (*Botanist) DeployCloudProviderSecret ¶
DeployCloudProviderSecret creates or updates the cloud provider secret in the Shoot namespace in the Seed cluster.
func (*Botanist) DeployClusterAutoscaler ¶
DeployClusterAutoscaler deploys the Kubernetes cluster-autoscaler.
func (*Botanist) DeployClusterIdentity ¶
DeployClusterIdentity deploys the shoot's cluster-identity.
func (*Botanist) DeployContainerRuntime ¶
DeployContainerRuntime deploys the ContainerRuntime custom resources and triggers the restore operation in case the Shoot is in the restore phase of the control plane migration
func (*Botanist) DeployControlPlane ¶
DeployControlPlane deploys or restores the ControlPlane custom resource (purpose normal).
func (*Botanist) DeployControlPlaneExposure ¶
DeployControlPlaneExposure deploys or restores the ControlPlane custom resource (purpose exposure).
func (*Botanist) DeployCoreDNS ¶
DeployCoreDNS deploys the CoreDNS system component.
func (*Botanist) DeployDependencyWatchdogAccess ¶
DeployDependencyWatchdogAccess deploys the DependencyWatchdogAccess resources.
func (*Botanist) DeployEtcd ¶
DeployEtcd deploys the etcd main and events.
func (*Botanist) DeployEtcdCopyBackupsTask ¶
DeployEtcdCopyBackupsTask sets the target and destination object stores of the EtcdCopyBackupsTask resource and deploys it.
func (*Botanist) DeployExtensionsAfterKubeAPIServer ¶
DeployExtensionsAfterKubeAPIServer deploys the Extension custom resources and triggers the restore operation in case the Shoot is in the restore phase of the control plane migration.
func (*Botanist) DeployExtensionsAfterWorker ¶ added in v1.92.0
DeployExtensionsAfterWorker deploys the Extension custom resources and triggers the restore operation in case the Shoot is in the restore phase of the control plane migration.
func (*Botanist) DeployExtensionsBeforeKubeAPIServer ¶
DeployExtensionsBeforeKubeAPIServer deploys the Extension custom resources and triggers the restore operation in case the Shoot is in the restore phase of the control plane migration.
func (*Botanist) DeployGardenerResourceManager ¶
DeployGardenerResourceManager deploys the gardener-resource-manager
func (*Botanist) DeployInfrastructure ¶
DeployInfrastructure deploys the Infrastructure custom resource and triggers the restore operation in case the Shoot is in the restore phase of the control plane migration.
func (*Botanist) DeployKubeAPIServer ¶
DeployKubeAPIServer deploys the Kubernetes API server.
func (*Botanist) DeployKubeAPIServerIngress ¶
DeployKubeAPIServerIngress deploys the ingress for the kube-apiserver.
func (*Botanist) DeployKubeAPIServerSNI ¶
DeployKubeAPIServerSNI deploys the kube-apiserver SNI resources.
func (*Botanist) DeployKubeControllerManager ¶
DeployKubeControllerManager deploys the Kubernetes Controller Manager.
func (*Botanist) DeployKubeProxy ¶
DeployKubeProxy deploys the kube-proxy.
func (*Botanist) DeployKubeStateMetrics ¶
DeployKubeStateMetrics deploys or destroys the kube-state-metrics to the shoot namespace in the seed.
func (*Botanist) DeployKubernetesDashboard ¶
DeployKubernetesDashboard deploys the Kubernetes Dashboard component.
func (*Botanist) DeployLogging ¶
DeployLogging will install the logging stack for the Shoot in the Seed clusters.
func (*Botanist) DeployMachineControllerManager ¶
DeployMachineControllerManager deploys the machine-controller-manager.
func (*Botanist) DeployManagedResourceForGardenerNodeAgent ¶
DeployManagedResourceForGardenerNodeAgent creates the ManagedResource that contains: - A secret containing the raw original OperatingSystemConfig for each worker pool. - A secret containing some shared RBAC resources for downloading the OSC secrets + bootstrapping the node.
func (*Botanist) DeployNetwork ¶
DeployNetwork deploys the Network custom resource and triggers the restore operation in case the Shoot is in the restore phase of the control plane migration
func (*Botanist) DeployNginxIngressAddon ¶
DeployNginxIngressAddon deploys the NginxIngress Addon component.
func (*Botanist) DeployOperatingSystemConfig ¶
DeployOperatingSystemConfig deploys the OperatingSystemConfig custom resource and triggers the restore operation in case the Shoot is in the restore phase of the control plane migration.
func (*Botanist) DeployOrDestroyExternalDNSRecord ¶
DeployOrDestroyExternalDNSRecord deploys, restores, or destroys the external DNSRecord and waits for the operation to complete.
func (*Botanist) DeployOrDestroyIngressDNSRecord ¶
DeployOrDestroyIngressDNSRecord deploys, restores, or destroys the ingress DNSRecord and waits for the operation to complete.
func (*Botanist) DeployOrDestroyInternalDNSRecord ¶
DeployOrDestroyInternalDNSRecord deploys, restores, or destroys the internal DNSRecord and waits for the operation to complete.
func (*Botanist) DeployPlutono ¶
DeployPlutono deploys the plutono in the Seed cluster.
func (*Botanist) DeployPrometheus ¶ added in v1.95.0
DeployPrometheus reconciles the shoot Prometheus.
func (*Botanist) DeployReferencedResources ¶
DeployReferencedResources reads all referenced resources from the Garden cluster and writes a managed resource to the Seed cluster.
func (*Botanist) DeploySeedNamespace ¶
DeploySeedNamespace creates a namespace in the Seed cluster which is used to deploy all the control plane components for the Shoot cluster. Moreover, the cloud provider configuration and all the secrets will be stored as ConfigMaps/Secrets.
func (*Botanist) DeployShootSystem ¶
DeployShootSystem deploys the shoot system resources.
func (*Botanist) DeploySourceBackupEntry ¶
DeploySourceBackupEntry deploys the source BackupEntry and sets its bucketName to be equal to the bucketName of the shoot's original BackupEntry if the source BackupEntry doesn't already exist.
func (*Botanist) DeployVPNServer ¶
DeployVPNServer deploys the vpn-seed-server.
func (*Botanist) DeployVerticalPodAutoscaler ¶
DeployVerticalPodAutoscaler deploys or destroys the VPA to the shoot namespace in the seed.
func (*Botanist) DeployWorker ¶
DeployWorker deploys the Worker custom resource and triggers the restore operation in case the Shoot is in the restore phase of the control plane migration
func (*Botanist) DestroyDNSRecords ¶
DestroyDNSRecords deletes all DNSRecord resources from the Shoot namespace.
func (*Botanist) DestroyEtcd ¶
DestroyEtcd destroys the etcd main and events.
func (*Botanist) DestroyExtensionResourcesInParallel ¶
DestroyExtensionResourcesInParallel deletes extension CRs from the Shoot namespace. CRs with kind "Extension" are handled separately and are not deleted by this function.
func (*Botanist) DestroyExternalDNSRecord ¶
DestroyExternalDNSRecord destroys the external DNSRecord and waits for the operation to complete.
func (*Botanist) DestroyIngressDNSRecord ¶
DestroyIngressDNSRecord destroys the ingress DNSRecord and waits for the operation to complete.
func (*Botanist) DestroyInternalDNSRecord ¶
DestroyInternalDNSRecord destroys the internal DNSRecord and waits for the operation to complete.
func (*Botanist) DestroyPrometheus ¶ added in v1.95.0
DestroyPrometheus destroys the shoot Prometheus.
func (*Botanist) DestroyReferencedResources ¶
DestroyReferencedResources deletes the managed resource containing referenced resources from the Seed cluster.
func (*Botanist) DestroySeedLogging ¶
DestroySeedLogging will uninstall the logging stack for the Shoot in the Seed clusters.
func (*Botanist) DestroySourceBackupEntry ¶
DestroySourceBackupEntry destroys the source BackupEntry.
func (*Botanist) EnsureShootClusterIdentity ¶
EnsureShootClusterIdentity ensures that Shoot's `status.clusterIdentity` field is set and updates the Cluster resource in the seed if necessary.
func (*Botanist) HibernateControlPlane ¶
HibernateControlPlane hibernates the entire control plane if the shoot shall be hibernated.
func (*Botanist) InitializeSecretsManagement ¶
InitializeSecretsManagement initializes the secrets management and deploys the required secrets to the shoot namespace in the seed.
func (*Botanist) IsCopyOfBackupsRequired ¶
IsCopyOfBackupsRequired check if etcd backups need to be copied between seeds.
func (*Botanist) IsRestorePhase ¶
IsRestorePhase returns true when the shoot is in phase 'restore'.
func (*Botanist) KeepObjectsForManagedResources ¶
KeepObjectsForManagedResources sets ManagedResource.Spec.KeepObjects to true.
func (*Botanist) MigrateExtensionResourcesInParallel ¶
MigrateExtensionResourcesInParallel migrates extension CRs. CRs with kind "Extension" are handled separately and are not migrated by this function.
func (*Botanist) MigrateExternalDNSRecord ¶
MigrateExternalDNSRecord migrates the external DNSRecord and waits for the operation to complete.
func (*Botanist) MigrateIngressDNSRecord ¶
MigrateIngressDNSRecord migrates the ingress DNSRecord and waits for the operation to complete.
func (*Botanist) MigrateInternalDNSRecord ¶
MigrateInternalDNSRecord migrates the internal DNSRecord and waits for the operation to complete.
func (*Botanist) MigrateOperatingSystemConfigWorkerPoolHashes ¶ added in v1.97.0
MigrateOperatingSystemConfigWorkerPoolHashes performs migration steps for the initial rollout of the operating system config hash calculation. TODO(MichaelEischer) Remove after Gardener 1.99 is released.
func (*Botanist) MigratePrometheus ¶ added in v1.95.0
MigratePrometheus migrate the shoot Prometheus to prometheus-operator. TODO(rfranzke): Remove this function after v1.97 has been released.
func (*Botanist) NeedsExternalDNS ¶
NeedsExternalDNS returns true if the Shoot cluster needs external DNS.
func (*Botanist) NeedsIngressDNS ¶
NeedsIngressDNS returns true if the Shoot cluster needs ingress DNS.
func (*Botanist) NeedsInternalDNS ¶
NeedsInternalDNS returns true if the Shoot cluster needs internal DNS.
func (*Botanist) ReconcileBlackboxExporterCluster ¶ added in v1.95.0
ReconcileBlackboxExporterCluster deploys or destroys the blackbox-exporter component depending on whether shoot monitoring is enabled or not.
func (*Botanist) ReconcileBlackboxExporterControlPlane ¶ added in v1.95.0
ReconcileBlackboxExporterControlPlane deploys or destroys the blackbox-exporter component depending on whether shoot monitoring is enabled or not.
func (*Botanist) ReconcileNodeExporter ¶
ReconcileNodeExporter deploys or destroys the node-exporter component depending on whether shoot monitoring is enabled or not.
func (*Botanist) ReconcileNodeLocalDNS ¶
ReconcileNodeLocalDNS deploys or destroys the node-local-dns component depending on whether it is enabled for the Shoot.
func (*Botanist) RequiredExtensionsReady ¶
RequiredExtensionsReady checks whether all required extensions needed for a shoot operation exist and are ready.
func (*Botanist) RestartControlPlanePods ¶
RestartControlPlanePods restarts (deletes) pods of the shoot control plane.
func (*Botanist) RestoreControlPlane ¶
RestoreControlPlane restores the ControlPlane custom resource (purpose normal)
func (*Botanist) ScaleClusterAutoscalerToZero ¶
ScaleClusterAutoscalerToZero scales cluster-autoscaler replicas to zero.
func (*Botanist) ScaleETCDToZero ¶
ScaleETCDToZero scales ETCD main and events replicas to zero.
func (*Botanist) ScaleGardenerResourceManagerToOne ¶
ScaleGardenerResourceManagerToOne scales the gardener-resource-manager deployment
func (*Botanist) ScaleKubeAPIServerToOne ¶
ScaleKubeAPIServerToOne scales kube-apiserver replicas to one.
func (*Botanist) ScaleKubeControllerManagerToOne ¶
ScaleKubeControllerManagerToOne scales kube-controller-manager replicas to one.
func (*Botanist) ScaleMachineControllerManagerToZero ¶
ScaleMachineControllerManagerToZero scales machine-controller-manager replicas to zero.
func (*Botanist) ScaleUpETCD ¶
ScaleUpETCD scales ETCD main and events replicas to the configured replica count.
func (*Botanist) SetNginxIngressAddress ¶
SetNginxIngressAddress sets the IP address of the API server's LoadBalancer.
func (*Botanist) ShallowDeleteMachineResources ¶
ShallowDeleteMachineResources deletes all machine-related resources by forcefully removing their finalizers.
func (*Botanist) ShootUsesDNS ¶
ShootUsesDNS returns true if the shoot uses internal and external DNS.
func (*Botanist) SnapshotEtcd ¶
SnapshotEtcd executes into the etcd-main pod and triggers a full snapshot.
func (*Botanist) SourceBackupEntry ¶
func (b *Botanist) SourceBackupEntry() corebackupentry.Interface
SourceBackupEntry creates a deployer for a core.gardener.cloud/v1beta1.BackupEntry resource which will be used as source when copying etcd backups.
func (*Botanist) SyncPublicServiceAccountKeys ¶ added in v1.91.0
SyncPublicServiceAccountKeys retrieves the responses of /.well-known/openid-configuration and /openid/v1/jwks from the shoot kube-apiserver and writes them in a secret in the gardener-system-shoot-issuer namespace in the Garden cluster.
func (*Botanist) ToAdvertisedAddresses ¶ added in v1.91.0
func (b *Botanist) ToAdvertisedAddresses() ([]gardencorev1beta1.ShootAdvertisedAddress, error)
ToAdvertisedAddresses returns list of advertised addresses on a Shoot cluster.
func (*Botanist) UpdateAdvertisedAddresses ¶ added in v1.91.0
UpdateAdvertisedAddresses updates the shoot.status.advertisedAddresses with the list of addresses on which the API server of the shoot is accessible.
func (*Botanist) WaitForInfrastructure ¶
WaitForInfrastructure waits until the infrastructure reconciliation has finished and extracts the provider status out of it.
func (*Botanist) WaitForKubeControllerManagerToBeActive ¶
WaitForKubeControllerManagerToBeActive waits for the kube controller manager of a Shoot cluster has acquired leader election, thus is active.
func (*Botanist) WaitUntilEndpointsDoNotContainPodIPs ¶
WaitUntilEndpointsDoNotContainPodIPs waits until all endpoints in the shoot cluster to not contain any IPs from the Shoot's PodCIDR.
func (*Botanist) WaitUntilEtcdsDeleted ¶
WaitUntilEtcdsDeleted waits until both etcd-main and etcd-events are deleted.
func (*Botanist) WaitUntilEtcdsReady ¶
WaitUntilEtcdsReady waits until both etcd-main and etcd-events are ready.
func (*Botanist) WaitUntilExtensionResourcesDeleted ¶
WaitUntilExtensionResourcesDeleted waits until extension CRs have been deleted from the Shoot namespace. CRs with kind "Extension" are handled separately and are not waited by this function.
func (*Botanist) WaitUntilExtensionResourcesMigrated ¶
WaitUntilExtensionResourcesMigrated waits until extension CRs have been successfully migrated. CRs with kind "Extension" are handled separately and are not waited by this function.
func (*Botanist) WaitUntilManagedResourcesDeleted ¶
WaitUntilManagedResourcesDeleted waits until all managed resources labeled with `origin=gardener` are gone or the context is cancelled.
func (*Botanist) WaitUntilNginxIngressServiceIsReady ¶
WaitUntilNginxIngressServiceIsReady waits until the external load balancer of the nginx ingress controller has been created.
func (*Botanist) WaitUntilNoPodRunning ¶
WaitUntilNoPodRunning waits until there is no running Pod in the shoot cluster.
func (*Botanist) WaitUntilNodesDeleted ¶
WaitUntilNodesDeleted waits until no nodes exist in the shoot cluster anymore.
func (*Botanist) WaitUntilOperatingSystemConfigUpdatedForAllWorkerPools ¶
func (b *Botanist) WaitUntilOperatingSystemConfigUpdatedForAllWorkerPools(ctx context.Context) error
WaitUntilOperatingSystemConfigUpdatedForAllWorkerPools waits for a maximum of 6 minutes until all the nodes for all the worker pools in the Shoot have successfully applied the desired version of their operating system config.
func (*Botanist) WaitUntilRequiredExtensionsReady ¶
WaitUntilRequiredExtensionsReady waits until all the extensions required for a shoot reconciliation are ready
func (*Botanist) WaitUntilSeedNamespaceDeleted ¶
WaitUntilSeedNamespaceDeleted waits until the namespace of the Shoot cluster within the Seed cluster is deleted.
func (*Botanist) WaitUntilShootManagedResourcesDeleted ¶
WaitUntilShootManagedResourcesDeleted waits until all managed resources that are describing shoot resources are deleted or the context is cancelled.
func (*Botanist) WaitUntilTunnelConnectionExists ¶
WaitUntilTunnelConnectionExists waits until a port forward connection to the tunnel pod (vpn-shoot) in the kube-system namespace of the Shoot cluster can be established.
Source Files ¶
- advertisedaddresses.go
- apiserverproxy.go
- backupentry.go
- bastion.go
- blackboxexporter.go
- botanist.go
- cleanup.go
- clusterautoscaler.go
- clusteridentity.go
- containerruntime.go
- controlplane.go
- coredns.go
- dependency_watchdog.go
- dns.go
- dnsrecord.go
- etcd.go
- etcdcopybackupstask.go
- extension.go
- gardeneraccess.go
- infrastructure.go
- kubeapiserver.go
- kubeapiserverexposure.go
- kubecontrollermanager.go
- kubeproxy.go
- kubernetesdashboard.go
- kubescheduler.go
- kubestatemetrics.go
- logging.go
- machinecontrollermanager.go
- managedresources.go
- metricsserver.go
- migration.go
- monitoring.go
- namespaces.go
- network.go
- nginxingress.go
- nodeexporter.go
- nodelocaldns.go
- nodeproblemdetector.go
- operatingsystemconfig.go
- plutono.go
- resource_manager.go
- resources.go
- secrets.go
- serviceaccountkeys.go
- shootsystem.go
- tunnel.go
- types.go
- vpa.go
- vpnseedserver.go
- vpnshoot.go
- waiter.go
- worker.go