awsbotanist

package
v0.0.0-...-133fb1b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 15, 2018 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// AccessKeyID is a constant for the key in a cloud provider secret that holds the AWS access key id.
	AccessKeyID = "accessKeyID"
	// SecretAccessKey is a constant for the key in a cloud provider secret that holds the AWS secret access key.
	SecretAccessKey = "secretAccessKey"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type AWSBotanist

type AWSBotanist struct {
	*operation.Operation
	CloudProviderName string
	SeedAWSClient     aws.ClientInterface
	ShootAWSClient    aws.ClientInterface
}

AWSBotanist is a struct which has methods that perform AWS cloud-specific operations for a Shoot cluster.

func New

New takes an operation object <o> and creates a new AWSBotanist object.

func (*AWSBotanist) ApplyCreateHook

func (b *AWSBotanist) ApplyCreateHook() error

ApplyCreateHook updates the AWS ELB health check to SSL and deploys the readvertiser. https://github.com/gardener/aws-lb-readvertiser

func (*AWSBotanist) ApplyDeleteHook

func (b *AWSBotanist) ApplyDeleteHook() error

ApplyDeleteHook does currently nothing for AWS.

func (*AWSBotanist) CheckIfClusterGetsScaled

func (b *AWSBotanist) CheckIfClusterGetsScaled() (bool, int, error)

CheckIfClusterGetsScaled checks whether the Shoot cluster gets currently scaled. It returns a boolean value and the number of instances which are healthy from the perspective of AWS (those which have the InService state).

func (*AWSBotanist) DeployAutoNodeRepair

func (b *AWSBotanist) DeployAutoNodeRepair() error

DeployAutoNodeRepair deploys the auto-node-repair into the Seed cluster. It primary job is to repair unHealthy Nodes by replacing them by newer ones.

func (*AWSBotanist) DeployBackupInfrastructure

func (b *AWSBotanist) DeployBackupInfrastructure() error

DeployBackupInfrastructure kicks off a Terraform job which deploys the infrastructure resources for backup. It sets up the User and the Bucket to store the backups. Allocate permission to the User to access the bucket.

func (*AWSBotanist) DeployInfrastructure

func (b *AWSBotanist) DeployInfrastructure() error

DeployInfrastructure kicks off a Terraform job which deploys the infrastructure.

func (*AWSBotanist) DeployKube2IAMResources

func (b *AWSBotanist) DeployKube2IAMResources() error

DeployKube2IAMResources creates the respective IAM roles which have been specified in the Shoot manifest addon section. Moreover, some default IAM roles will be created.

func (*AWSBotanist) DestroyBackupInfrastructure

func (b *AWSBotanist) DestroyBackupInfrastructure() error

DestroyBackupInfrastructure kicks off a Terraform job which destroys the infrastructure for etcd backup.

func (*AWSBotanist) DestroyInfrastructure

func (b *AWSBotanist) DestroyInfrastructure() error

DestroyInfrastructure kicks off a Terraform job which destroys the infrastructure.

func (*AWSBotanist) DestroyKube2IAMResources

func (b *AWSBotanist) DestroyKube2IAMResources() error

DestroyKube2IAMResources destroy the kube2iam resources created by Terraform. This comprises IAM roles and policies.

func (*AWSBotanist) GenerateAdmissionControlConfig

func (b *AWSBotanist) GenerateAdmissionControlConfig() (map[string]interface{}, error)

GenerateAdmissionControlConfig generates values which are required to render the chart admissions-controls properly.

func (*AWSBotanist) GenerateCalicoConfig

func (b *AWSBotanist) GenerateCalicoConfig() (map[string]interface{}, error)

GenerateCalicoConfig generates values which are required to render the chart calico properly.

func (*AWSBotanist) GenerateCloudConfigUserDataConfig

func (b *AWSBotanist) GenerateCloudConfigUserDataConfig() *common.CloudConfigUserDataConfig

GenerateCloudConfigUserDataConfig generates values which are required to render the chart shoot-cloud-config properly.

func (*AWSBotanist) GenerateCloudProviderConfig

func (b *AWSBotanist) GenerateCloudProviderConfig() (string, error)

GenerateCloudProviderConfig generates the AWS cloud provider config. See this for more details: https://github.com/kubernetes/kubernetes/blob/release-1.7/pkg/cloudprovider/providers/aws/aws.go#L399-L444

func (*AWSBotanist) GenerateClusterAutoscalerConfig

func (b *AWSBotanist) GenerateClusterAutoscalerConfig() (map[string]interface{}, error)

GenerateClusterAutoscalerConfig generates the values which are required to render the chart of aws-cluster-autosclaer properly.

func (*AWSBotanist) GenerateEtcdBackupSecretData

func (b *AWSBotanist) GenerateEtcdBackupSecretData() (map[string][]byte, error)

GenerateEtcdBackupSecretData generates the data for the secret which is required by the etcd-operator to store the backups on the S3 backup, i.e. the secret contains the AWS credentials and the respective region.

func (*AWSBotanist) GenerateEtcdConfig

func (b *AWSBotanist) GenerateEtcdConfig(secretName string) (map[string]interface{}, error)

GenerateEtcdConfig returns the etcd deployment configuration (including backup settings) for the etcd Helm chart.

func (*AWSBotanist) GenerateKube2IAMConfig

func (b *AWSBotanist) GenerateKube2IAMConfig() (map[string]interface{}, error)

GenerateKube2IAMConfig generates the values which are required to render the chart of kube2iam properly.

func (*AWSBotanist) GenerateKubeAPIServerConfig

func (b *AWSBotanist) GenerateKubeAPIServerConfig() (map[string]interface{}, error)

GenerateKubeAPIServerConfig generates the cloud provider specific values which are required to render the Deployment manifest of the kube-apiserver properly.

func (*AWSBotanist) GenerateKubeControllerManagerConfig

func (b *AWSBotanist) GenerateKubeControllerManagerConfig() (map[string]interface{}, error)

GenerateKubeControllerManagerConfig generates the cloud provider specific values which are required to render the Deployment manifest of the kube-controller-manager properly.

func (*AWSBotanist) GenerateKubeSchedulerConfig

func (b *AWSBotanist) GenerateKubeSchedulerConfig() (map[string]interface{}, error)

GenerateKubeSchedulerConfig generates the cloud provider specific values which are required to render the Deployment manifest of the kube-scheduler properly.

func (*AWSBotanist) GenerateNginxIngressConfig

func (b *AWSBotanist) GenerateNginxIngressConfig() (map[string]interface{}, error)

GenerateNginxIngressConfig generates values which are required to render the chart nginx-ingress properly.

func (*AWSBotanist) GetASGs

func (b *AWSBotanist) GetASGs() []map[string]interface{}

GetASGs returns the set of AutoScalingGroups used for a Shoot cluster.

func (*AWSBotanist) GetCloudProviderName

func (b *AWSBotanist) GetCloudProviderName() string

GetCloudProviderName returns the Kubernetes cloud provider name for this cloud.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL