Documentation
¶
Index ¶
Constants ¶
const DefaultMasterInstanceType string = "ecs.g6.xlarge"
DefaultMasterInstanceType holds the default Alibaba Cloud instacne type used by the master.
const DefaultSystemDiskSize int = 120
DefaultSystemDiskSize holds the default Alibaba Cloud system disk size used by the ECS.
const DefaultWorkerInstanceType string = "ecs.g6.large"
DefaultWorkerInstanceType holds the default Alibaba Cloud instacne type used by the worker.
const Name string = "alibabacloud"
Name is name for the Alibaba Cloud platform.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DiskCategory ¶
type DiskCategory string
DiskCategory is the category of the ECS disk. Supported disk category: cloud_essd(ESSD disk), cloud_efficiency(ultra disk).
+kubebuilder:validation:Enum="";cloud_efficiency;cloud_essd
const ( // CloudEfficiencyDiskCategory is the disk category for ultra disk. CloudEfficiencyDiskCategory DiskCategory = "cloud_efficiency" // CloudESSDDiskCategory is the disk category for ESSD. CloudESSDDiskCategory DiskCategory = "cloud_essd" )
const DefaultDiskCategory DiskCategory = CloudESSDDiskCategory
DefaultDiskCategory holds the default Alibaba Cloud disk type used by the ECS.
type MachinePool ¶
type MachinePool struct {
// Zones is list of availability zones that can be used.
// eg. ["cn-hangzhou-i", "cn-hangzhou-h", "cn-hangzhou-j"]
//
// +optional
Zones []string `json:"zones,omitempty"`
// InstanceType defines the ECS instance type.
// eg. ecs.g6.large
//
// +optional
InstanceType string `json:"instanceType,omitempty"`
// SystemDiskCategory defines the category of the system disk.
//
// +optional
SystemDiskCategory DiskCategory `json:"systemDiskCategory,omitempty"`
// SystemDiskSize defines the size of the system disk in gibibytes (GiB).
//
// +kubebuilder:validation:Type=integer
// +kubebuilder:validation:Minimum=120
// +optional
SystemDiskSize int `json:"systemDiskSize,omitempty"`
// ImageID is the Image ID that should be used to create ECS instance.
// If set, the ImageID should belong to the same region as the cluster.
//
// +optional
ImageID string `json:"imageID,omitempty"`
}
MachinePool stores the configuration for a machine pool installed on Alibaba Cloud.
func DefaultMasterMachinePoolPlatform ¶
func DefaultMasterMachinePoolPlatform() MachinePool
DefaultMasterMachinePoolPlatform returns the default machine pool configuration used by the master
func DefaultWorkerMachinePoolPlatform ¶
func DefaultWorkerMachinePoolPlatform() MachinePool
DefaultWorkerMachinePoolPlatform returns the default machine pool configuration used by the worker
func (*MachinePool) Set ¶
func (a *MachinePool) Set(required *MachinePool)
Set sets the values from `required` to `a`.
type Metadata ¶
type Metadata struct {
Region string `json:"region"`
ClusterDomain string `json:"clusterDomain"`
PrivateZoneID string `json:"privateZoneID"`
}
Metadata contains Alibaba Cloud metadata (e.g. for uninstalling the cluster).
type Platform ¶
type Platform struct {
// Region specifies the Alibaba Cloud region where the cluster will be created.
Region string `json:"region"`
// ResourceGroupID is the ID of an already existing resource group where the cluster should be installed.
// If empty, the installer will create a new resource group for the cluster.
// +optional
ResourceGroupID string `json:"resourceGroupID,omitempty"`
// VpcID is the ID of an already existing VPC where the cluster should be installed.
// If empty, the installer will create a new VPC for the cluster.
// +optional
VpcID string `json:"vpcID,omitempty"`
// VSwitchIDs is the ID list of already existing VSwitches where cluster resources will be created.
// The existing VSwitches can only be used when also using existing VPC.
// If empty, the installer will create new VSwitches for the cluster.
// +optional
VSwitchIDs []string `json:"vswitchIDs,omitempty"`
// PrivateZoneID is the ID of an existing private zone into which to add DNS
// records for the cluster's internal API. An existing private zone can
// only be used when also using existing VPC. The private zone must be
// associated with the VPC containing the subnets.
// Leave the private zone unset to have the installer create the private zone
// on your behalf.
// +optional
PrivateZoneID string `json:"privateZoneID,omitempty"`
// Tags additional keys and values that the installer will add
// as tags to all resources that it creates. Resources created by the
// cluster itself may not include these tags.
// +optional
Tags map[string]string `json:"tags,omitempty"`
// DefaultMachinePlatform is the default configuration used when installing
// on Alibaba Cloud for machine pools which do not define their own platform
// configuration.
// +optional
DefaultMachinePlatform *MachinePool `json:"defaultMachinePlatform,omitempty"`
}
Platform stores all the global configuration that all machinesets use.
func (*Platform) ClusterResourceGroupName ¶
ClusterResourceGroupName returns the name of the resource group for the cluster.