Documentation ¶
Overview ¶
Package v1alpha1 contains the configuration of the Gardener Operator. +groupName=operator.gardener.cloud
Index ¶
- Constants
- Variables
- func Kind(kind string) schema.GroupKind
- func Resource(resource string) schema.GroupResource
- type AuditWebhook
- type Authentication
- type AuthenticationWebhook
- type Backup
- type ControlPlane
- type Credentials
- type CredentialsRotation
- type DNS
- type ETCD
- type ETCDEvents
- type ETCDMain
- type Garden
- type GardenList
- type GardenSpec
- type GardenStatus
- type Gardener
- type GardenerAPIServerConfig
- type GardenerAdmissionControllerConfig
- type GardenerControllerManagerConfig
- type GardenerSchedulerConfig
- type GroupResource
- type HighAvailability
- type KubeAPIServerConfig
- type KubeControllerManagerConfig
- type Kubernetes
- type Maintenance
- type Networking
- type ProjectQuotaConfiguration
- type Provider
- type ResourceAdmissionConfiguration
- type ResourceAdmissionWebhookMode
- type ResourceLimit
- type RuntimeCluster
- type RuntimeNetworking
- type SNI
- type SettingLoadBalancerServices
- type SettingTopologyAwareRouting
- type SettingVerticalPodAutoscaler
- type Settings
- type Storage
- type VirtualCluster
Constants ¶
const ( // SecretManagerIdentityOperator is the identity for the secret manager used inside gardener-operator. SecretManagerIdentityOperator = "gardener-operator" // SecretNameCARuntime is a constant for the name of a secret containing the CA for the garden runtime cluster. SecretNameCARuntime = "ca-garden-runtime" // SecretNameCAGardener is a constant for the name of a Kubernetes secret object that contains the CA // certificate of the Gardener control plane. SecretNameCAGardener = "ca-gardener" )
const ( // RuntimeComponentsHealthy is a constant for a condition type indicating the runtime components health. RuntimeComponentsHealthy gardencorev1beta1.ConditionType = "RuntimeComponentsHealthy" // VirtualComponentsHealthy is a constant for a condition type indicating the virtual garden components health. VirtualComponentsHealthy gardencorev1beta1.ConditionType = "VirtualComponentsHealthy" // VirtualGardenAPIServerAvailable is a constant for a condition type indicating that the virtual garden's API server is available. VirtualGardenAPIServerAvailable gardencorev1beta1.ConditionType = "VirtualGardenAPIServerAvailable" // ObservabilityComponentsHealthy is a constant for a condition type indicating the health of observability components. ObservabilityComponentsHealthy gardencorev1beta1.ConditionType = "ObservabilityComponentsHealthy" )
const FinalizerName = "gardener.cloud/operator"
FinalizerName is the name of the finalizer used by gardener-operator.
Variables ¶
var ( // SchemeBuilder is a new Scheme Builder which registers our API. SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) // AddToScheme is a reference to the Scheme Builder's AddToScheme function. AddToScheme = SchemeBuilder.AddToScheme )
var AvailableOperationAnnotations = sets.New( v1beta1constants.GardenerOperationReconcile, v1beta1constants.OperationRotateCAStart, v1beta1constants.OperationRotateCAComplete, v1beta1constants.OperationRotateServiceAccountKeyStart, v1beta1constants.OperationRotateServiceAccountKeyComplete, v1beta1constants.OperationRotateETCDEncryptionKeyStart, v1beta1constants.OperationRotateETCDEncryptionKeyComplete, v1beta1constants.OperationRotateObservabilityCredentials, v1beta1constants.OperationRotateCredentialsStart, v1beta1constants.OperationRotateCredentialsComplete, )
AvailableOperationAnnotations is the set of available operation annotations for Garden resources.
var SchemeGroupVersion = schema.GroupVersion{Group: operator.GroupName, Version: "v1alpha1"}
SchemeGroupVersion is group version used to register these objects
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
Types ¶
type AuditWebhook ¶ added in v1.68.0
type AuditWebhook struct { // BatchMaxSize is the maximum size of a batch. // +kubebuilder:default=30 // +kubebuilder:validation:Minimum=1 // +optional BatchMaxSize *int32 `json:"batchMaxSize,omitempty"` // KubeconfigSecretName specifies the name of a secret containing the kubeconfig for this webhook. // +kubebuilder:validation:MinLength=1 KubeconfigSecretName string `json:"kubeconfigSecretName"` // Version is the API version to send and expect from the webhook. // +kubebuilder:default=audit.k8s.io/v1 // +kubebuilder:validation:Enum=audit.k8s.io/v1 // +optional Version *string `json:"version,omitempty"` }
AuditWebhook contains settings related to an audit webhook configuration.
func (*AuditWebhook) DeepCopy ¶ added in v1.68.0
func (in *AuditWebhook) DeepCopy() *AuditWebhook
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuditWebhook.
func (*AuditWebhook) DeepCopyInto ¶ added in v1.68.0
func (in *AuditWebhook) DeepCopyInto(out *AuditWebhook)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Authentication ¶ added in v1.68.0
type Authentication struct { // Webhook contains settings related to an authentication webhook configuration. // +optional Webhook *AuthenticationWebhook `json:"webhook,omitempty"` }
Authentication contains settings related to authentication.
func (*Authentication) DeepCopy ¶ added in v1.68.0
func (in *Authentication) DeepCopy() *Authentication
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Authentication.
func (*Authentication) DeepCopyInto ¶ added in v1.68.0
func (in *Authentication) DeepCopyInto(out *Authentication)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AuthenticationWebhook ¶ added in v1.68.0
type AuthenticationWebhook struct { // CacheTTL is the duration to cache responses from the webhook authenticator. // +kubebuilder:validation:Type=string // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ns|us|µs|ms|s|m|h))+$" // +optional CacheTTL *metav1.Duration `json:"cacheTTL,omitempty"` // KubeconfigSecretName specifies the name of a secret containing the kubeconfig for this webhook. // +kubebuilder:validation:MinLength=1 KubeconfigSecretName string `json:"kubeconfigSecretName"` // Version is the API version to send and expect from the webhook. // +kubebuilder:default=v1beta1 // +kubebuilder:validation:Enum=v1alpha1;v1beta1;v1 // +optional Version *string `json:"version,omitempty"` }
AuthenticationWebhook contains settings related to an authentication webhook configuration.
func (*AuthenticationWebhook) DeepCopy ¶ added in v1.68.0
func (in *AuthenticationWebhook) DeepCopy() *AuthenticationWebhook
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticationWebhook.
func (*AuthenticationWebhook) DeepCopyInto ¶ added in v1.68.0
func (in *AuthenticationWebhook) DeepCopyInto(out *AuthenticationWebhook)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Backup ¶ added in v1.62.0
type Backup struct { // Provider is a provider name. This field is immutable. // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Provider is immutable" Provider string `json:"provider"` // BucketName is the name of the backup bucket. // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="BucketName is immutable" BucketName string `json:"bucketName"` // SecretRef is a reference to a Secret object containing the cloud provider credentials for the object store where // backups should be stored. It should have enough privileges to manipulate the objects as well as buckets. SecretRef corev1.LocalObjectReference `json:"secretRef"` }
Backup contains the object store configuration for backups for the virtual garden etcd.
func (*Backup) DeepCopy ¶ added in v1.62.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backup.
func (*Backup) DeepCopyInto ¶ added in v1.62.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControlPlane ¶ added in v1.63.0
type ControlPlane struct { // HighAvailability holds the configuration settings for high availability settings. // +optional HighAvailability *HighAvailability `json:"highAvailability,omitempty"` }
ControlPlane holds information about the general settings for the control plane of the virtual garden cluster.
func (*ControlPlane) DeepCopy ¶ added in v1.63.0
func (in *ControlPlane) DeepCopy() *ControlPlane
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlane.
func (*ControlPlane) DeepCopyInto ¶ added in v1.63.0
func (in *ControlPlane) DeepCopyInto(out *ControlPlane)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Credentials ¶ added in v1.62.0
type Credentials struct { // Rotation contains information about the credential rotations. // +optional Rotation *CredentialsRotation `json:"rotation,omitempty"` }
Credentials contains information about the virtual garden cluster credentials.
func (*Credentials) DeepCopy ¶ added in v1.62.0
func (in *Credentials) DeepCopy() *Credentials
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Credentials.
func (*Credentials) DeepCopyInto ¶ added in v1.62.0
func (in *Credentials) DeepCopyInto(out *Credentials)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CredentialsRotation ¶ added in v1.62.0
type CredentialsRotation struct { // CertificateAuthorities contains information about the certificate authority credential rotation. // +optional CertificateAuthorities *gardencorev1beta1.CARotation `json:"certificateAuthorities,omitempty"` // ServiceAccountKey contains information about the service account key credential rotation. // +optional ServiceAccountKey *gardencorev1beta1.ServiceAccountKeyRotation `json:"serviceAccountKey,omitempty"` // ETCDEncryptionKey contains information about the ETCD encryption key credential rotation. // +optional ETCDEncryptionKey *gardencorev1beta1.ETCDEncryptionKeyRotation `json:"etcdEncryptionKey,omitempty"` // Observability contains information about the observability credential rotation. // +optional Observability *gardencorev1beta1.ObservabilityRotation `json:"observability,omitempty"` }
CredentialsRotation contains information about the rotation of credentials.
func (*CredentialsRotation) DeepCopy ¶ added in v1.62.0
func (in *CredentialsRotation) DeepCopy() *CredentialsRotation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CredentialsRotation.
func (*CredentialsRotation) DeepCopyInto ¶ added in v1.62.0
func (in *CredentialsRotation) DeepCopyInto(out *CredentialsRotation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DNS ¶ added in v1.68.0
type DNS struct { // Domains are the external domains of the virtual garden cluster. // The first given domain in this list is immutable. // +kubebuilder:validation:MinItems=1 // +optional Domains []string `json:"domains,omitempty"` }
DNS holds information about DNS settings.
func (*DNS) DeepCopy ¶ added in v1.68.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNS.
func (*DNS) DeepCopyInto ¶ added in v1.68.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ETCD ¶ added in v1.62.0
type ETCD struct { // Main contains configuration for the main etcd. // +optional Main *ETCDMain `json:"main,omitempty"` // Events contains configuration for the events etcd. // +optional Events *ETCDEvents `json:"events,omitempty"` }
ETCD contains configuration for the etcds of the virtual garden cluster.
func (*ETCD) DeepCopy ¶ added in v1.62.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ETCD.
func (*ETCD) DeepCopyInto ¶ added in v1.62.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ETCDEvents ¶ added in v1.62.0
type ETCDEvents struct { // Storage contains storage configuration. // +optional Storage *Storage `json:"storage,omitempty"` }
ETCDEvents contains configuration for the events etcd.
func (*ETCDEvents) DeepCopy ¶ added in v1.62.0
func (in *ETCDEvents) DeepCopy() *ETCDEvents
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ETCDEvents.
func (*ETCDEvents) DeepCopyInto ¶ added in v1.62.0
func (in *ETCDEvents) DeepCopyInto(out *ETCDEvents)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ETCDMain ¶ added in v1.62.0
type ETCDMain struct { // Backup contains the object store configuration for backups for the virtual garden etcd. // +optional Backup *Backup `json:"backup,omitempty"` // Storage contains storage configuration. // +optional Storage *Storage `json:"storage,omitempty"` }
ETCDMain contains configuration for the main etcd.
func (*ETCDMain) DeepCopy ¶ added in v1.62.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ETCDMain.
func (*ETCDMain) DeepCopyInto ¶ added in v1.62.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Garden ¶
type Garden struct { metav1.TypeMeta `json:",inline"` // Standard object metadata. metav1.ObjectMeta `json:"metadata,omitempty"` // Spec contains the specification of this garden. Spec GardenSpec `json:"spec,omitempty"` // Status contains the status of this garden. Status GardenStatus `json:"status,omitempty"` }
Garden describes a list of gardens.
func (*Garden) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Garden.
func (*Garden) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Garden) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GardenList ¶
type GardenList struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ListMeta `json:"metadata,omitempty"` // Items is the list of Garden. Items []Garden `json:"items"` }
GardenList is a list of Garden resources.
func (*GardenList) DeepCopy ¶
func (in *GardenList) DeepCopy() *GardenList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GardenList.
func (*GardenList) DeepCopyInto ¶
func (in *GardenList) DeepCopyInto(out *GardenList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GardenList) DeepCopyObject ¶
func (in *GardenList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GardenSpec ¶
type GardenSpec struct { // RuntimeCluster contains configuration for the runtime cluster. RuntimeCluster RuntimeCluster `json:"runtimeCluster"` // VirtualCluster contains configuration for the virtual cluster. VirtualCluster VirtualCluster `json:"virtualCluster"` }
GardenSpec contains the specification of a garden environment.
func (*GardenSpec) DeepCopy ¶
func (in *GardenSpec) DeepCopy() *GardenSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GardenSpec.
func (*GardenSpec) DeepCopyInto ¶
func (in *GardenSpec) DeepCopyInto(out *GardenSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GardenStatus ¶
type GardenStatus struct { // Gardener holds information about the Gardener which last acted on the Garden. // +optional Gardener *gardencorev1beta1.Gardener `json:"gardener,omitempty"` // Conditions is a list of conditions. Conditions []gardencorev1beta1.Condition `json:"conditions,omitempty"` // LastOperation holds information about the last operation on the Garden. // +optional LastOperation *gardencorev1beta1.LastOperation `json:"lastOperation,omitempty"` // ObservedGeneration is the most recent generation observed for this resource. ObservedGeneration int64 `json:"observedGeneration,omitempty"` // Credentials contains information about the virtual garden cluster credentials. // +optional Credentials *Credentials `json:"credentials,omitempty"` // EncryptedResources is the list of resources which are currently encrypted in the virtual garden by the virtual kube-apiserver. // Resources which are encrypted by default will not appear here. // See https://github.com/gardener/gardener/blob/master/docs/concepts/operator.md#etcd-encryption-config for more details. // +optional EncryptedResources []string `json:"encryptedResources,omitempty"` }
GardenStatus is the status of a garden environment.
func (*GardenStatus) DeepCopy ¶
func (in *GardenStatus) DeepCopy() *GardenStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GardenStatus.
func (*GardenStatus) DeepCopyInto ¶
func (in *GardenStatus) DeepCopyInto(out *GardenStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Gardener ¶ added in v1.76.0
type Gardener struct { // ClusterIdentity is the identity of the garden cluster. This field is immutable. // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" ClusterIdentity string `json:"clusterIdentity"` // APIServer contains configuration settings for the gardener-apiserver. // +optional APIServer *GardenerAPIServerConfig `json:"gardenerAPIServer,omitempty"` // AdmissionController contains configuration settings for the gardener-admission-controller. // +optional AdmissionController *GardenerAdmissionControllerConfig `json:"gardenerAdmissionController,omitempty"` // ControllerManager contains configuration settings for the gardener-controller-manager. // +optional ControllerManager *GardenerControllerManagerConfig `json:"gardenerControllerManager,omitempty"` // Scheduler contains configuration settings for the gardener-scheduler. // +optional Scheduler *GardenerSchedulerConfig `json:"gardenerScheduler,omitempty"` }
Gardener contains the configuration settings for the Gardener components.
func (*Gardener) DeepCopy ¶ added in v1.76.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Gardener.
func (*Gardener) DeepCopyInto ¶ added in v1.76.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GardenerAPIServerConfig ¶ added in v1.76.0
type GardenerAPIServerConfig struct { gardencorev1beta1.KubernetesConfig `json:",inline"` // AdmissionPlugins contains the list of user-defined admission plugins (additional to those managed by Gardener), // and, if desired, the corresponding configuration. // +optional AdmissionPlugins []gardencorev1beta1.AdmissionPlugin `json:"admissionPlugins,omitempty"` // AuditConfig contains configuration settings for the audit of the kube-apiserver. // +optional AuditConfig *gardencorev1beta1.AuditConfig `json:"auditConfig,omitempty"` // AuditWebhook contains settings related to an audit webhook configuration. // +optional AuditWebhook *AuditWebhook `json:"auditWebhook,omitempty"` // Logging contains configuration for the log level and HTTP access logs. // +optional Logging *gardencorev1beta1.APIServerLogging `json:"logging,omitempty"` // Requests contains configuration for request-specific settings for the kube-apiserver. // +optional Requests *gardencorev1beta1.APIServerRequests `json:"requests,omitempty"` // WatchCacheSizes contains configuration of the API server's watch cache sizes. // Configuring these flags might be useful for large-scale Garden clusters with a lot of parallel update requests // and a lot of watching controllers (e.g. large ManagedSeed clusters). When the API server's watch cache's // capacity is too small to cope with the amount of update requests and watchers for a particular resource, it // might happen that controller watches are permanently stopped with `too old resource version` errors. // Starting from kubernetes v1.19, the API server's watch cache size is adapted dynamically and setting the watch // cache size flags will have no effect, except when setting it to 0 (which disables the watch cache). // +optional WatchCacheSizes *gardencorev1beta1.WatchCacheSizes `json:"watchCacheSizes,omitempty"` // EncryptionConfig contains customizable encryption configuration of the Gardener API server. // +optional EncryptionConfig *gardencorev1beta1.EncryptionConfig `json:"encryptionConfig,omitempty"` }
GardenerAPIServerConfig contains configuration settings for the gardener-apiserver.
func (*GardenerAPIServerConfig) DeepCopy ¶ added in v1.76.0
func (in *GardenerAPIServerConfig) DeepCopy() *GardenerAPIServerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GardenerAPIServerConfig.
func (*GardenerAPIServerConfig) DeepCopyInto ¶ added in v1.76.0
func (in *GardenerAPIServerConfig) DeepCopyInto(out *GardenerAPIServerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GardenerAdmissionControllerConfig ¶ added in v1.77.0
type GardenerAdmissionControllerConfig struct { // LogLevel is the configured log level for the gardener-admission-controller. Must be one of [info,debug,error]. // Defaults to info. // +kubebuilder:validation:Enum=info;debug;error // +kubebuilder:default=info // +optional LogLevel *string `json:"logLevel,omitempty"` // ResourceAdmissionConfiguration is the configuration for resource size restrictions for arbitrary Group-Version-Kinds. // +optional ResourceAdmissionConfiguration *ResourceAdmissionConfiguration `json:"resourceAdmissionConfiguration,omitempty"` }
GardenerAdmissionControllerConfig contains configuration settings for the gardener-admission-controller.
func (*GardenerAdmissionControllerConfig) DeepCopy ¶ added in v1.77.0
func (in *GardenerAdmissionControllerConfig) DeepCopy() *GardenerAdmissionControllerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GardenerAdmissionControllerConfig.
func (*GardenerAdmissionControllerConfig) DeepCopyInto ¶ added in v1.77.0
func (in *GardenerAdmissionControllerConfig) DeepCopyInto(out *GardenerAdmissionControllerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GardenerControllerManagerConfig ¶ added in v1.76.0
type GardenerControllerManagerConfig struct { gardencorev1beta1.KubernetesConfig `json:",inline"` // DefaultProjectQuotas is the default configuration matching projects are set up with if a quota is not already // specified. // +optional DefaultProjectQuotas []ProjectQuotaConfiguration `json:"defaultProjectQuotas,omitempty"` // LogLevel is the configured log level for the gardener-controller-manager. Must be one of [info,debug,error]. // Defaults to info. // +kubebuilder:validation:Enum=info;debug;error // +kubebuilder:default=info // +optional LogLevel *string `json:"logLevel,omitempty"` }
GardenerControllerManagerConfig contains configuration settings for the gardener-controller-manager.
func (*GardenerControllerManagerConfig) DeepCopy ¶ added in v1.76.0
func (in *GardenerControllerManagerConfig) DeepCopy() *GardenerControllerManagerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GardenerControllerManagerConfig.
func (*GardenerControllerManagerConfig) DeepCopyInto ¶ added in v1.76.0
func (in *GardenerControllerManagerConfig) DeepCopyInto(out *GardenerControllerManagerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GardenerSchedulerConfig ¶ added in v1.76.0
type GardenerSchedulerConfig struct { gardencorev1beta1.KubernetesConfig `json:",inline"` // LogLevel is the configured log level for the gardener-scheduler. Must be one of [info,debug,error]. // Defaults to info. // +kubebuilder:validation:Enum=info;debug;error // +kubebuilder:default=info // +optional LogLevel *string `json:"logLevel,omitempty"` }
GardenerSchedulerConfig contains configuration settings for the gardener-scheduler.
func (*GardenerSchedulerConfig) DeepCopy ¶ added in v1.76.0
func (in *GardenerSchedulerConfig) DeepCopy() *GardenerSchedulerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GardenerSchedulerConfig.
func (*GardenerSchedulerConfig) DeepCopyInto ¶ added in v1.76.0
func (in *GardenerSchedulerConfig) DeepCopyInto(out *GardenerSchedulerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GroupResource ¶ added in v1.68.0
type GroupResource struct { // Group is the API group name. // +kubebuilder:validation:MinLength=1 Group string `json:"group"` // Resource is the resource name. // +kubebuilder:validation:MinLength=1 Resource string `json:"resource"` }
GroupResource contains a list of resources which should be stored in etcd-events instead of etcd-main.
func (*GroupResource) DeepCopy ¶ added in v1.68.0
func (in *GroupResource) DeepCopy() *GroupResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GroupResource.
func (*GroupResource) DeepCopyInto ¶ added in v1.68.0
func (in *GroupResource) DeepCopyInto(out *GroupResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HighAvailability ¶ added in v1.63.0
type HighAvailability struct{}
HighAvailability specifies the configuration settings for high availability for a resource.
func (*HighAvailability) DeepCopy ¶ added in v1.63.0
func (in *HighAvailability) DeepCopy() *HighAvailability
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HighAvailability.
func (*HighAvailability) DeepCopyInto ¶ added in v1.63.0
func (in *HighAvailability) DeepCopyInto(out *HighAvailability)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubeAPIServerConfig ¶ added in v1.68.0
type KubeAPIServerConfig struct { // KubeAPIServerConfig contains all configuration values not specific to the virtual garden cluster. // +optional *gardencorev1beta1.KubeAPIServerConfig `json:",inline"` // AuditWebhook contains settings related to an audit webhook configuration. // +optional AuditWebhook *AuditWebhook `json:"auditWebhook,omitempty"` // Authentication contains settings related to authentication. // +optional Authentication *Authentication `json:"authentication,omitempty"` // ResourcesToStoreInETCDEvents contains a list of resources which should be stored in etcd-events instead of // etcd-main. The 'events' resource is always stored in etcd-events. Note that adding or removing resources from // this list will not migrate them automatically from the etcd-main to etcd-events or vice versa. // +optional ResourcesToStoreInETCDEvents []GroupResource `json:"resourcesToStoreInETCDEvents,omitempty"` // SNI contains configuration options for the TLS SNI settings. // +optional SNI *SNI `json:"sni,omitempty"` }
KubeAPIServerConfig contains configuration settings for the kube-apiserver.
func (*KubeAPIServerConfig) DeepCopy ¶ added in v1.68.0
func (in *KubeAPIServerConfig) DeepCopy() *KubeAPIServerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeAPIServerConfig.
func (*KubeAPIServerConfig) DeepCopyInto ¶ added in v1.68.0
func (in *KubeAPIServerConfig) DeepCopyInto(out *KubeAPIServerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubeControllerManagerConfig ¶ added in v1.71.0
type KubeControllerManagerConfig struct { // KubeControllerManagerConfig contains all configuration values not specific to the virtual garden cluster. // +optional *gardencorev1beta1.KubeControllerManagerConfig `json:",inline"` // CertificateSigningDuration is the maximum length of duration signed certificates will be given. Individual CSRs // may request shorter certs by setting `spec.expirationSeconds`. // +kubebuilder:validation:Type=string // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ns|us|µs|ms|s|m|h))+$" // +kubebuilder:default=`48h` // +optional CertificateSigningDuration *metav1.Duration `json:"certificateSigningDuration,omitempty"` }
KubeControllerManagerConfig contains configuration settings for the kube-controller-manager.
func (*KubeControllerManagerConfig) DeepCopy ¶ added in v1.71.0
func (in *KubeControllerManagerConfig) DeepCopy() *KubeControllerManagerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeControllerManagerConfig.
func (*KubeControllerManagerConfig) DeepCopyInto ¶ added in v1.71.0
func (in *KubeControllerManagerConfig) DeepCopyInto(out *KubeControllerManagerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Kubernetes ¶ added in v1.68.0
type Kubernetes struct { // KubeAPIServer contains configuration settings for the kube-apiserver. // +optional KubeAPIServer *KubeAPIServerConfig `json:"kubeAPIServer,omitempty"` // KubeControllerManager contains configuration settings for the kube-controller-manager. // +optional KubeControllerManager *KubeControllerManagerConfig `json:"kubeControllerManager,omitempty"` // Version is the semantic Kubernetes version to use for the virtual garden cluster. // +kubebuilder:validation:MinLength=1 Version string `json:"version"` }
Kubernetes contains the version and configuration options for the Kubernetes components of the virtual garden cluster.
func (*Kubernetes) DeepCopy ¶ added in v1.68.0
func (in *Kubernetes) DeepCopy() *Kubernetes
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Kubernetes.
func (*Kubernetes) DeepCopyInto ¶ added in v1.68.0
func (in *Kubernetes) DeepCopyInto(out *Kubernetes)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Maintenance ¶ added in v1.62.0
type Maintenance struct { // TimeWindow contains information about the time window for maintenance operations. TimeWindow gardencorev1beta1.MaintenanceTimeWindow `json:"timeWindow"` }
Maintenance contains information about the time window for maintenance operations.
func (*Maintenance) DeepCopy ¶ added in v1.62.0
func (in *Maintenance) DeepCopy() *Maintenance
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Maintenance.
func (*Maintenance) DeepCopyInto ¶ added in v1.62.0
func (in *Maintenance) DeepCopyInto(out *Maintenance)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Networking ¶ added in v1.68.0
type Networking struct { // Services is the CIDR of the service network. This field is immutable. // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Services string `json:"services"` }
Networking defines networking parameters for the virtual garden cluster.
func (*Networking) DeepCopy ¶ added in v1.68.0
func (in *Networking) DeepCopy() *Networking
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Networking.
func (*Networking) DeepCopyInto ¶ added in v1.68.0
func (in *Networking) DeepCopyInto(out *Networking)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProjectQuotaConfiguration ¶ added in v1.76.0
type ProjectQuotaConfiguration struct { // Config is the quota specification used for the project set-up. // Only v1.ResourceQuota resources are supported. Config runtime.RawExtension `json:"config"` // ProjectSelector is an optional setting to select the projects considered for quotas. // Defaults to empty LabelSelector, which matches all projects. // +optional ProjectSelector *metav1.LabelSelector `json:"projectSelector,omitempty"` }
ProjectQuotaConfiguration defines quota configurations.
func (*ProjectQuotaConfiguration) DeepCopy ¶ added in v1.76.0
func (in *ProjectQuotaConfiguration) DeepCopy() *ProjectQuotaConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectQuotaConfiguration.
func (*ProjectQuotaConfiguration) DeepCopyInto ¶ added in v1.76.0
func (in *ProjectQuotaConfiguration) DeepCopyInto(out *ProjectQuotaConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Provider ¶
type Provider struct { // Zones is the list of availability zones the cluster is deployed to. // +optional Zones []string `json:"zones,omitempty"` }
Provider defines the provider-specific information for this cluster.
func (*Provider) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Provider.
func (*Provider) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceAdmissionConfiguration ¶ added in v1.77.0
type ResourceAdmissionConfiguration struct { // Limits contains configuration for resources which are subjected to size limitations. Limits []ResourceLimit `json:"limits"` // UnrestrictedSubjects contains references to users, groups, or service accounts which aren't subjected to any resource size limit. // +optional UnrestrictedSubjects []rbacv1.Subject `json:"unrestrictedSubjects,omitempty"` // OperationMode specifies the mode the webhooks operates in. Allowed values are "block" and "log". Defaults to "block". // +optional OperationMode *ResourceAdmissionWebhookMode `json:"operationMode,omitempty"` }
ResourceAdmissionConfiguration contains settings about arbitrary kinds and the size each resource should have at most.
func (*ResourceAdmissionConfiguration) DeepCopy ¶ added in v1.77.0
func (in *ResourceAdmissionConfiguration) DeepCopy() *ResourceAdmissionConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceAdmissionConfiguration.
func (*ResourceAdmissionConfiguration) DeepCopyInto ¶ added in v1.77.0
func (in *ResourceAdmissionConfiguration) DeepCopyInto(out *ResourceAdmissionConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceAdmissionWebhookMode ¶ added in v1.77.0
type ResourceAdmissionWebhookMode string
ResourceAdmissionWebhookMode is an alias type for the resource admission webhook mode.
type ResourceLimit ¶ added in v1.77.0
type ResourceLimit struct { // APIGroups is the name of the APIGroup that contains the limited resource. WildcardAll represents all groups. // +optional APIGroups []string `json:"apiGroups,omitempty"` // APIVersions is the version of the resource. WildcardAll represents all versions. // +optional APIVersions []string `json:"apiVersions,omitempty"` // Resources is the name of the resource this rule applies to. WildcardAll represents all resources. Resources []string `json:"resources"` // Size specifies the imposed limit. Size resource.Quantity `json:"size"` }
ResourceLimit contains settings about a kind and the size each resource should have at most.
func (*ResourceLimit) DeepCopy ¶ added in v1.77.0
func (in *ResourceLimit) DeepCopy() *ResourceLimit
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceLimit.
func (*ResourceLimit) DeepCopyInto ¶ added in v1.77.0
func (in *ResourceLimit) DeepCopyInto(out *ResourceLimit)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RuntimeCluster ¶
type RuntimeCluster struct { // Ingress configures Ingress specific settings for the Garden cluster. This field is immutable. Ingress gardencorev1beta1.Ingress `json:"ingress"` // Networking defines the networking configuration of the runtime cluster. Networking RuntimeNetworking `json:"networking"` // Provider defines the provider-specific information for this cluster. Provider Provider `json:"provider"` // Settings contains certain settings for this cluster. // +optional Settings *Settings `json:"settings,omitempty"` }
RuntimeCluster contains configuration for the runtime cluster.
func (*RuntimeCluster) DeepCopy ¶
func (in *RuntimeCluster) DeepCopy() *RuntimeCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuntimeCluster.
func (*RuntimeCluster) DeepCopyInto ¶
func (in *RuntimeCluster) DeepCopyInto(out *RuntimeCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RuntimeNetworking ¶ added in v1.71.0
type RuntimeNetworking struct { // Nodes is the CIDR of the node network. This field is immutable. // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" // +optional Nodes *string `json:"nodes,omitempty"` // Pods is the CIDR of the pod network. This field is immutable. // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Pods string `json:"pods"` // Services is the CIDR of the service network. This field is immutable. // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Services string `json:"services"` // BlockCIDRs is a list of network addresses that should be blocked. // +optional BlockCIDRs []string `json:"blockCIDRs,omitempty"` }
RuntimeNetworking defines the networking configuration of the runtime cluster.
func (*RuntimeNetworking) DeepCopy ¶ added in v1.71.0
func (in *RuntimeNetworking) DeepCopy() *RuntimeNetworking
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuntimeNetworking.
func (*RuntimeNetworking) DeepCopyInto ¶ added in v1.71.0
func (in *RuntimeNetworking) DeepCopyInto(out *RuntimeNetworking)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SNI ¶ added in v1.68.0
type SNI struct { // SecretName is the name of a secret containing the TLS certificate and private key. // +kubebuilder:validation:MinLength=1 SecretName string `json:"secretName"` // DomainPatterns is a list of fully qualified domain names, possibly with prefixed wildcard segments. The domain // patterns also allow IP addresses, but IPs should only be used if the apiserver has visibility to the IP address // requested by a client. If no domain patterns are provided, the names of the certificate are extracted. // Non-wildcard matches trump over wildcard matches, explicit domain patterns trump over extracted names. // +optional DomainPatterns []string `json:"domainPatterns,omitempty"` }
SNI contains configuration options for the TLS SNI settings.
func (*SNI) DeepCopy ¶ added in v1.68.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SNI.
func (*SNI) DeepCopyInto ¶ added in v1.68.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SettingLoadBalancerServices ¶ added in v1.63.0
type SettingLoadBalancerServices struct { // Annotations is a map of annotations that will be injected/merged into every load balancer service object. // +optional Annotations map[string]string `json:"annotations,omitempty"` }
SettingLoadBalancerServices controls certain settings for services of type load balancer that are created in the runtime cluster.
func (*SettingLoadBalancerServices) DeepCopy ¶ added in v1.63.0
func (in *SettingLoadBalancerServices) DeepCopy() *SettingLoadBalancerServices
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SettingLoadBalancerServices.
func (*SettingLoadBalancerServices) DeepCopyInto ¶ added in v1.63.0
func (in *SettingLoadBalancerServices) DeepCopyInto(out *SettingLoadBalancerServices)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SettingTopologyAwareRouting ¶ added in v1.68.0
type SettingTopologyAwareRouting struct { // Enabled controls whether certain Services deployed in the cluster should be topology-aware. // These Services are virtual-garden-etcd-main-client, virtual-garden-etcd-events-client and virtual-garden-kube-apiserver. // Additionally, other components that are deployed to the runtime cluster via other means can read this field and // according to its value enable/disable topology-aware routing for their Services. Enabled bool `json:"enabled"` }
SettingTopologyAwareRouting controls certain settings for topology-aware traffic routing in the cluster. See https://github.com/gardener/gardener/blob/master/docs/operations/topology_aware_routing.md.
func (*SettingTopologyAwareRouting) DeepCopy ¶ added in v1.68.0
func (in *SettingTopologyAwareRouting) DeepCopy() *SettingTopologyAwareRouting
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SettingTopologyAwareRouting.
func (*SettingTopologyAwareRouting) DeepCopyInto ¶ added in v1.68.0
func (in *SettingTopologyAwareRouting) DeepCopyInto(out *SettingTopologyAwareRouting)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SettingVerticalPodAutoscaler ¶
type SettingVerticalPodAutoscaler struct { // Enabled controls whether the VPA components shall be deployed into this cluster. It is true by default because // the operator (and Gardener) heavily rely on a VPA being deployed. You should only disable this if your runtime // cluster already has another, manually/custom managed VPA deployment. If this is not the case, but you still // disable it, then reconciliation will fail. // +kubebuilder:default=true // +optional Enabled *bool `json:"enabled,omitempty"` }
SettingVerticalPodAutoscaler controls certain settings for the vertical pod autoscaler components deployed in the seed.
func (*SettingVerticalPodAutoscaler) DeepCopy ¶
func (in *SettingVerticalPodAutoscaler) DeepCopy() *SettingVerticalPodAutoscaler
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SettingVerticalPodAutoscaler.
func (*SettingVerticalPodAutoscaler) DeepCopyInto ¶
func (in *SettingVerticalPodAutoscaler) DeepCopyInto(out *SettingVerticalPodAutoscaler)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Settings ¶
type Settings struct { // LoadBalancerServices controls certain settings for services of type load balancer that are created in the runtime // cluster. // +optional LoadBalancerServices *SettingLoadBalancerServices `json:"loadBalancerServices,omitempty"` // VerticalPodAutoscaler controls certain settings for the vertical pod autoscaler components deployed in the // cluster. // +optional VerticalPodAutoscaler *SettingVerticalPodAutoscaler `json:"verticalPodAutoscaler,omitempty"` // TopologyAwareRouting controls certain settings for topology-aware traffic routing in the cluster. // See https://github.com/gardener/gardener/blob/master/docs/operations/topology_aware_routing.md. // +optional TopologyAwareRouting *SettingTopologyAwareRouting `json:"topologyAwareRouting,omitempty"` }
Settings contains certain settings for this cluster.
func (*Settings) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Settings.
func (*Settings) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Storage ¶ added in v1.62.0
type Storage struct { // Capacity is the storage capacity for the volumes. // +kubebuilder:default=`10Gi` // +optional Capacity *resource.Quantity `json:"capacity,omitempty"` // ClassName is the name of a storage class. // +optional ClassName *string `json:"className,omitempty"` }
Storage contains storage configuration.
func (*Storage) DeepCopy ¶ added in v1.62.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Storage.
func (*Storage) DeepCopyInto ¶ added in v1.62.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VirtualCluster ¶ added in v1.62.0
type VirtualCluster struct { // ControlPlane holds information about the general settings for the control plane of the virtual cluster. // +optional ControlPlane *ControlPlane `json:"controlPlane,omitempty"` // DNS holds information about DNS settings. DNS DNS `json:"dns"` // ETCD contains configuration for the etcds of the virtual garden cluster. // +optional ETCD *ETCD `json:"etcd,omitempty"` // Gardener contains the configuration options for the Gardener control plane components. Gardener Gardener `json:"gardener"` // Kubernetes contains the version and configuration options for the Kubernetes components of the virtual garden // cluster. Kubernetes Kubernetes `json:"kubernetes"` // Maintenance contains information about the time window for maintenance operations. Maintenance Maintenance `json:"maintenance"` // Networking contains information about cluster networking such as CIDRs, etc. Networking Networking `json:"networking"` }
VirtualCluster contains configuration for the virtual cluster.
func (*VirtualCluster) DeepCopy ¶ added in v1.62.0
func (in *VirtualCluster) DeepCopy() *VirtualCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualCluster.
func (*VirtualCluster) DeepCopyInto ¶ added in v1.62.0
func (in *VirtualCluster) DeepCopyInto(out *VirtualCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.