Documentation ¶
Index ¶
- Constants
- type AlicloudBotanist
- func (b *AlicloudBotanist) CleanupMachineClasses(existingMachineDeployments operation.MachineDeployments) error
- func (b *AlicloudBotanist) DeployBackupInfrastructure() error
- func (b *AlicloudBotanist) DeployCloudSpecificControlPlane() error
- func (b *AlicloudBotanist) DeployInfrastructure() error
- func (b *AlicloudBotanist) DeployKube2IAMResources() error
- func (b *AlicloudBotanist) DestroyBackupInfrastructure() error
- func (b *AlicloudBotanist) DestroyInfrastructure() error
- func (b *AlicloudBotanist) DestroyKube2IAMResources() error
- func (b *AlicloudBotanist) GenerateCSIConfig() (map[string]interface{}, error)
- func (b *AlicloudBotanist) GenerateCloudConfigUserDataConfig() *common.CloudConfigUserDataConfig
- func (b *AlicloudBotanist) GenerateCloudControllerManagerConfig() (map[string]interface{}, string, error)
- func (b *AlicloudBotanist) GenerateCloudProviderConfig() (string, error)
- func (b *AlicloudBotanist) GenerateEtcdBackupConfig() (map[string][]byte, map[string]interface{}, error)
- func (b *AlicloudBotanist) GenerateKube2IAMConfig() (map[string]interface{}, error)
- func (b *AlicloudBotanist) GenerateKubeAPIServerConfig() (map[string]interface{}, error)
- func (b *AlicloudBotanist) GenerateKubeAPIServerExposeConfig() (map[string]interface{}, error)
- func (b *AlicloudBotanist) GenerateKubeAPIServerServiceConfig() (map[string]interface{}, error)
- func (b *AlicloudBotanist) GenerateKubeControllerManagerConfig() (map[string]interface{}, error)
- func (b *AlicloudBotanist) GenerateKubeSchedulerConfig() (map[string]interface{}, error)
- func (b *AlicloudBotanist) GenerateMachineClassSecretData() map[string][]byte
- func (b *AlicloudBotanist) GenerateMachineConfig() ([]map[string]interface{}, operation.MachineDeployments, error)
- func (b *AlicloudBotanist) GenerateNginxIngressConfig() (map[string]interface{}, error)
- func (b *AlicloudBotanist) GenerateStorageClassesConfig() (map[string]interface{}, error)
- func (b *AlicloudBotanist) GetCloudProviderName() string
- func (b *AlicloudBotanist) GetMachineClassInfo() (classKind, classPlural, classChartName string)
- func (b *AlicloudBotanist) ListMachineClasses() (sets.String, sets.String, error)
- func (b *AlicloudBotanist) RefreshCloudProviderConfig(currentConfig map[string]string) map[string]string
Constants ¶
const ( // AccessKeyID is a constant for the key in a cloud provider secret and backup secret that holds the Alicloud access key id. AccessKeyID = "accessKeyID" // AccessKeySecret is a constant for the key in a cloud provider secret and backup secret that holds the Alicloud access key secret. AccessKeySecret = "accessKeySecret" // UserData is a constant for the key in a cloud provider secret that holds the user data UserData = "userData" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AlicloudBotanist ¶
type AlicloudBotanist struct { *operation.Operation AlicloudClient alicloud.ClientInterface CloudProviderName string }
AlicloudBotanist is a struct which has methods that perform Alicloud cloud-specific operations for a Shoot cluster.
func New ¶
func New(o *operation.Operation, purpose string) (*AlicloudBotanist, error)
New takes an operation object <o> and creates a new AlicloudBotanist object.
func (*AlicloudBotanist) CleanupMachineClasses ¶
func (b *AlicloudBotanist) CleanupMachineClasses(existingMachineDeployments operation.MachineDeployments) error
CleanupMachineClasses deletes all machine classes which are not part of the provided list <existingMachineDeployments>.
func (*AlicloudBotanist) DeployBackupInfrastructure ¶
func (b *AlicloudBotanist) 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 (*AlicloudBotanist) DeployCloudSpecificControlPlane ¶
func (b *AlicloudBotanist) DeployCloudSpecificControlPlane() error
DeployCloudSpecificControlPlane does nothing currently for Alicloud
func (*AlicloudBotanist) DeployInfrastructure ¶
func (b *AlicloudBotanist) DeployInfrastructure() error
DeployInfrastructure kicks off a Terraform job which deploys the infrastructure.
func (*AlicloudBotanist) DeployKube2IAMResources ¶
func (b *AlicloudBotanist) DeployKube2IAMResources() error
DeployKube2IAMResources - Not needed on Alicloud
func (*AlicloudBotanist) DestroyBackupInfrastructure ¶
func (b *AlicloudBotanist) DestroyBackupInfrastructure() error
DestroyBackupInfrastructure kicks off a Terraform job which destroys the infrastructure for etcd backup.
func (*AlicloudBotanist) DestroyInfrastructure ¶
func (b *AlicloudBotanist) DestroyInfrastructure() error
DestroyInfrastructure kicks off a Terraform job which destroys the infrastructure.
func (*AlicloudBotanist) DestroyKube2IAMResources ¶
func (b *AlicloudBotanist) DestroyKube2IAMResources() error
DestroyKube2IAMResources - Not needed on Alicloud
func (*AlicloudBotanist) GenerateCSIConfig ¶
func (b *AlicloudBotanist) GenerateCSIConfig() (map[string]interface{}, error)
GenerateCSIConfig generates the configuration for CSI charts
func (*AlicloudBotanist) GenerateCloudConfigUserDataConfig ¶
func (b *AlicloudBotanist) GenerateCloudConfigUserDataConfig() *common.CloudConfigUserDataConfig
GenerateCloudConfigUserDataConfig generates values which are required to render the chart shoot-cloud-config properly.
func (*AlicloudBotanist) GenerateCloudControllerManagerConfig ¶
func (b *AlicloudBotanist) GenerateCloudControllerManagerConfig() (map[string]interface{}, string, error)
GenerateCloudControllerManagerConfig generates the cloud provider specific values which are required to render the Deployment manifest of the cloud-controller-manager properly.
func (*AlicloudBotanist) GenerateCloudProviderConfig ¶
func (b *AlicloudBotanist) GenerateCloudProviderConfig() (string, error)
GenerateCloudProviderConfig generates the Alicloud cloud provider config. See this for more details: https://github.com/kubernetes/cloud-provider-alibaba-cloud/blob/master/cloud-controller-manager/alicloud.go#L62
func (*AlicloudBotanist) GenerateEtcdBackupConfig ¶
func (b *AlicloudBotanist) GenerateEtcdBackupConfig() (map[string][]byte, map[string]interface{}, error)
GenerateEtcdBackupConfig returns the etcd backup configuration for the etcd Helm chart.
func (*AlicloudBotanist) GenerateKube2IAMConfig ¶
func (b *AlicloudBotanist) GenerateKube2IAMConfig() (map[string]interface{}, error)
GenerateKube2IAMConfig - Not needed on Alicloud.
func (*AlicloudBotanist) GenerateKubeAPIServerConfig ¶
func (b *AlicloudBotanist) 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 (*AlicloudBotanist) GenerateKubeAPIServerExposeConfig ¶
func (b *AlicloudBotanist) GenerateKubeAPIServerExposeConfig() (map[string]interface{}, error)
GenerateKubeAPIServerExposeConfig defines the cloud provider specific values which configure how the kube-apiserver is exposed to the public.
func (*AlicloudBotanist) GenerateKubeAPIServerServiceConfig ¶
func (b *AlicloudBotanist) GenerateKubeAPIServerServiceConfig() (map[string]interface{}, error)
GenerateKubeAPIServerServiceConfig generates the cloud provider specific values which are required to render the Service manifest of the kube-apiserver-service properly.
func (*AlicloudBotanist) GenerateKubeControllerManagerConfig ¶
func (b *AlicloudBotanist) 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 (*AlicloudBotanist) GenerateKubeSchedulerConfig ¶
func (b *AlicloudBotanist) 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 (*AlicloudBotanist) GenerateMachineClassSecretData ¶
func (b *AlicloudBotanist) GenerateMachineClassSecretData() map[string][]byte
GenerateMachineClassSecretData generates the secret data for the machine class secret (except the userData field which is computed elsewhere).
func (*AlicloudBotanist) GenerateMachineConfig ¶
func (b *AlicloudBotanist) GenerateMachineConfig() ([]map[string]interface{}, operation.MachineDeployments, error)
GenerateMachineConfig generates the configuration values for the cloud-specific machine class Helm chart. It also generates a list of corresponding MachineDeployments. The provided worker groups will be distributed over the desired availability zones. It returns the computed list of MachineClasses and MachineDeployments.
func (*AlicloudBotanist) GenerateNginxIngressConfig ¶
func (b *AlicloudBotanist) GenerateNginxIngressConfig() (map[string]interface{}, error)
GenerateNginxIngressConfig generates values which are required to render the chart nginx-ingress properly.
func (*AlicloudBotanist) GenerateStorageClassesConfig ¶
func (b *AlicloudBotanist) GenerateStorageClassesConfig() (map[string]interface{}, error)
GenerateStorageClassesConfig generates values which are required to render the chart shoot-storageclasses properly.
func (*AlicloudBotanist) GetCloudProviderName ¶
func (b *AlicloudBotanist) GetCloudProviderName() string
GetCloudProviderName returns the Kubernetes cloud provider name for this cloud.
func (*AlicloudBotanist) GetMachineClassInfo ¶
func (b *AlicloudBotanist) GetMachineClassInfo() (classKind, classPlural, classChartName string)
GetMachineClassInfo returns the name of the class kind, the plural of it and the name of the Helm chart which contains the machine class template.
func (*AlicloudBotanist) ListMachineClasses ¶
ListMachineClasses returns two sets of strings whereas the first contains the names of all machine classes, and the second the names of all referenced secrets.
func (*AlicloudBotanist) RefreshCloudProviderConfig ¶
func (b *AlicloudBotanist) RefreshCloudProviderConfig(currentConfig map[string]string) map[string]string
RefreshCloudProviderConfig refreshes the cloud provider credentials in the existing cloud provider config. Not needed on Alicloud.