Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BootstrapCluster ¶
func BootstrapCluster(seed *Seed, k8sGardenClient kubernetes.Client, secrets map[string]*corev1.Secret, imageVector imagevector.ImageVector, numberOfAssociatedShoots int) error
BootstrapCluster bootstraps a Seed cluster and deploys various required manifests.
func DesiredExcessCapacity ¶
DesiredExcessCapacity computes the required resources (CPU and memory) required to deploy new shoot control planes (on the seed) in terms of reserve-excess-capacity deployment replicas. Each deployment replica currently corresponds to resources of (request/limits) 500m of CPU and 1200Mi of Memory. ReplicasRequiredToSupportSingleShoot is 4 which is 2000m of CPU and 4800Mi of RAM. The logic for computation of desired excess capacity corresponds to either deploying 3 new shoot control planes or 5% of existing shoot control planes of current number of shoots deployed in seed (5 if current shoots are 100), whichever of the two is larger
Types ¶
type Seed ¶
type Seed struct { Info *gardenv1beta1.Seed Secret *corev1.Secret CloudProvider gardenv1beta1.CloudProvider CloudProfile *gardenv1beta1.CloudProfile // contains filtered or unexported fields }
Seed is an object containing information about a Seed cluster.
func List ¶
func List(k8sGardenClient kubernetes.Client, k8sGardenInformers gardeninformers.Interface) ([]*Seed, error)
List returns a list of Seed clusters (along with the referenced secrets).
func New ¶
func New(k8sGardenClient kubernetes.Client, k8sGardenInformers gardeninformers.Interface, seed *gardenv1beta1.Seed) (*Seed, error)
New takes a <k8sGardenClient>, the <k8sGardenInformers> and a <seed> manifest, and creates a new Seed representation. It will add the CloudProfile and identify the cloud provider.
func NewFromName ¶
func NewFromName(k8sGardenClient kubernetes.Client, k8sGardenInformers gardeninformers.Interface, seedName string) (*Seed, error)
NewFromName creates a new Seed object based on the name of a Seed manifest.
func (*Seed) CheckMinimumK8SVersion ¶
CheckMinimumK8SVersion checks whether the Kubernetes version of the Seed cluster fulfills the minimal requirements.
func (*Seed) GetIngressFQDN ¶
GetIngressFQDN returns the fully qualified domain name of ingress sub-resource for the Seed cluster. The end result is '<subDomain>.<shootName>.<projectName>.<seed-ingress-domain>'.
func (*Seed) MustReserveExcessCapacity ¶
MustReserveExcessCapacity configures whether we have to reserve excess capacity in the Seed cluster.