gardener: Index | Files | Directories

package seed

import ""


Package Files

seed.go types.go

func BootstrapCluster Uses

func BootstrapCluster(k8sGardenClient, k8sSeedClient kubernetes.Interface, seed *Seed, secrets map[string]*corev1.Secret, imageVector imagevector.ImageVector, componentImageVectors imagevector.ComponentImageVectors) error

BootstrapCluster bootstraps a Seed cluster and deploys various required manifests.

func DesiredExcessCapacity Uses

func DesiredExcessCapacity() int

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) 2 cores of CPU and 6Gi of RAM. This roughly corresponds to a single, moderately large control-plane. The logic for computation of desired excess capacity corresponds to deploying 2 such shoot control planes. This excess capacity can be used for hosting new control planes or newly vertically scaled old control-planes.

func GetWildcardCertificate Uses

func GetWildcardCertificate(ctx context.Context, c client.Client) (*corev1.Secret, error)

GetWildcardCertificate gets the wildcard certificate for the seed's ingress domain. Nil is returned if no wildcard certificate is configured.

type Builder Uses

type Builder struct {
    // contains filtered or unexported fields

Builder is an object that builds Seed objects.

func NewBuilder Uses

func NewBuilder() *Builder

NewBuilder returns a new Builder.

func (*Builder) Build Uses

func (b *Builder) Build() (*Seed, error)

Build initializes a new Seed object.

func (*Builder) WithSeedObject Uses

func (b *Builder) WithSeedObject(seedObject *gardencorev1beta1.Seed) *Builder

WithSeedObject sets the seedObjectFunc attribute at the Builder.

func (*Builder) WithSeedObjectFromLister Uses

func (b *Builder) WithSeedObjectFromLister(seedLister gardencorelisters.SeedLister, seedName string) *Builder

WithSeedObjectFromLister sets the seedObjectFunc attribute at the Builder after fetching it from the given lister.

func (*Builder) WithSeedSecret Uses

func (b *Builder) WithSeedSecret(seedSecret *corev1.Secret) *Builder

WithSeedSecret sets the seedSecretFunc attribute at the Builder.

func (*Builder) WithSeedSecretFromClient Uses

func (b *Builder) WithSeedSecretFromClient(ctx context.Context, c client.Client) *Builder

WithSeedSecretFromClient sets the seedSecretFunc attribute at the Builder after reading it with the client.

type Seed Uses

type Seed struct {
    Info                           *gardencorev1beta1.Seed
    Secret                         *corev1.Secret
    LoadBalancerServiceAnnotations map[string]string

Seed is an object containing information about a Seed cluster.

func (*Seed) CheckMinimumK8SVersion Uses

func (s *Seed) CheckMinimumK8SVersion(seedClient kubernetes.Interface) (string, error)

CheckMinimumK8SVersion checks whether the Kubernetes version of the Seed cluster fulfills the minimal requirements.

func (*Seed) GetIngressFQDN Uses

func (s *Seed) GetIngressFQDN(subDomain string) string

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) GetIngressFQDNDeprecated Uses

func (s *Seed) GetIngressFQDNDeprecated(subDomain, shootName, projectName string) string

GetIngressFQDNDeprecated returns the fully qualified domain name of ingress sub-resource for the Seed cluster. The end result is '<subDomain>.<shootName>.<projectName>.<seed-ingress-domain>'. Only necessary to renew certificates for Alertmanager, Grafana, Prometheus TODO: (timuthy) remove in future version.

func (*Seed) GetValidVolumeSize Uses

func (s *Seed) GetValidVolumeSize(size string) string

GetValidVolumeSize is to get a valid volume size. If the given size is smaller than the minimum volume size permitted by cloud provider on which seed cluster is running, it will return the minimum size.



Package seed imports 33 packages (graph) and is imported by 7 packages. Updated 2020-08-13. Refresh now. Tools for package owners.