InstanceGroupCloneProps
Properties for defining a InstanceGroupClone.
See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-ecs-instancegroupclone
Initializer
import "github.com/alibabacloud-go/ros-cdk/alicloudroscdkecs"
&alicloudroscdkecs.InstanceGroupCloneProps {
MaxAmount: interface{},
SourceInstanceId: interface{},
AutoReleaseTime: interface{},
AutoRenew: interface{},
AutoRenewPeriod: interface{},
BackendServerWeight: interface{},
CpuOptions: interface{},
DeletionProtection: interface{},
DeploymentSetId: interface{},
Description: interface{},
DiskMappings: interface{},
EniMappings: interface{},
HostNames: interface{},
HpcClusterId: interface{},
ImageId: interface{},
ImageOptions: interface{},
InstanceName: interface{},
InternetMaxBandwidthIn: interface{},
InternetMaxBandwidthOut: interface{},
Ipv6AddressCount: interface{},
Ipv6Addresses: interface{},
KeyPairName: interface{},
LaunchTemplateId: interface{},
LaunchTemplateName: interface{},
LaunchTemplateVersion: interface{},
LoadBalancerIdToAttach: interface{},
NetworkInterfaceQueueNumber: interface{},
NetworkOptions: interface{},
Password: interface{},
PasswordInherit: interface{},
Period: interface{},
PeriodUnit: interface{},
RamRoleName: interface{},
ResourceGroupId: interface{},
SecurityGroupId: interface{},
SecurityGroupIds: interface{},
SecurityOptions: interface{},
SpotPriceLimit: interface{},
SpotStrategy: interface{},
SystemDiskAutoSnapshotPolicyId: interface{},
SystemDiskBurstingEnabled: interface{},
SystemDiskCategory: interface{},
SystemDiskDescription: interface{},
SystemDiskDiskName: interface{},
SystemDiskEncryptAlgorithm: interface{},
SystemDiskEncrypted: interface{},
SystemDiskKmsKeyId: interface{},
SystemDiskProvisionedIops: interface{},
SystemDiskStorageClusterId: interface{},
Tags: *[]github.com/alibabacloud-go/ros-cdk/alicloudroscdkecs.RosInstanceGroupClone.TagsProperty,
UniqueSuffix: interface{},
UpdatePolicy: interface{},
ZoneId: interface{},
}
Properties
| Name | Type | Description |
|---|---|---|
MaxAmount |
interface{} |
Property maxAmount: Max number of instances to create, should be bigger than 'MinAmount' and smaller than 1000. |
SourceInstanceId |
interface{} |
Property sourceInstanceId: Source ecs instance used to copy properties to clone new ecs instance. |
AutoReleaseTime |
interface{} |
Property autoReleaseTime: Auto release time for created instance, Follow ISO8601 standard using UTC time. |
AutoRenew |
interface{} |
Property autoRenew: Whether renew the fee automatically? |
AutoRenewPeriod |
interface{} |
Property autoRenewPeriod: The time period of auto renew. |
BackendServerWeight |
interface{} |
Property backendServerWeight: The weight of backend server of load balancer. |
CpuOptions |
interface{} |
Property cpuOptions: Cpu options. |
DeletionProtection |
interface{} |
Property deletionProtection: Whether an instance can be released manually through the console or API, deletion protection only support postPaid instance. |
DeploymentSetId |
interface{} |
Property deploymentSetId: Deployment set ID. |
Description |
interface{} |
Property description: Description of the instance, [2, 256] characters. |
DiskMappings |
interface{} |
Property diskMappings: Disk mappings to attach to instance. |
EniMappings |
interface{} |
Property eniMappings: NetworkInterface to attach to instance. |
HostNames |
interface{} |
Property hostNames: The hostname of instance N. |
HpcClusterId |
interface{} |
Property hpcClusterId: The HPC cluster ID to which the instance belongs.The change of the property does not affect existing instances. |
ImageId |
interface{} |
Property imageId: Image ID to create ecs instance. |
ImageOptions |
interface{} |
Property imageOptions: Image options. |
InstanceName |
interface{} |
Property instanceName: Display name of the instance, [2, 128] English or Chinese characters, must start with a letter or Chinese in size, can contain numbers, '_' or '.', '-'. Support to use the regular expression to set the different instance name for each ECS instance. InstanceName could be specified as 'name_prefix[begin_number,bits]name_suffix', such as 'testinstance[123,4]tail'. If you creates 3 instances with the instance name 'testinstance[123,4]tail', all the instances' names are testinstance0123tail, testinstance0124tail, testinstance0125tail. The 'name_prefix[begin_number,bits]name_suffix' should follow those rules: 1. 'name_prefix' is required. 2. 'name_suffix' is optional. 3. The name regular expression can't include any spaces. 4. The 'bits' must be in range [1, 6]. 5. The 'begin_number' must be in range [0, 999999]. 6. You could only specify 'begin_number'. The 'bits' will be set as 6 by default. 7. You also could only specify the [] or [,]. The 'begin_number' will be set as 0 by default, the 'bits' will be set as 6 by default. 8. If the bits of 'begin_number' is less than the 'bits' you specified, like [1234,1], the 'bits' will be set as 6 by default. |
InternetMaxBandwidthIn |
interface{} |
Property internetMaxBandwidthIn: Max internet out band width setting, unit in Mbps(Mega bit per second). |
InternetMaxBandwidthOut |
interface{} |
Property internetMaxBandwidthOut: Set internet output bandwidth of instance. |
Ipv6AddressCount |
interface{} |
Property ipv6AddressCount: Specifies the number of randomly generated IPv6 addresses for the elastic NIC. |
Ipv6Addresses |
interface{} |
Property ipv6Addresses: Specify one or more IPv6 addresses for the elastic NIC. |
KeyPairName |
interface{} |
Property keyPairName: SSH key pair name.Old instances will not be changed. |
LaunchTemplateId |
interface{} |
Property launchTemplateId: ID of launch template. |
LaunchTemplateName |
interface{} |
Property launchTemplateName: Name of launch template. |
LaunchTemplateVersion |
interface{} |
Property launchTemplateVersion: Version of launch template. |
LoadBalancerIdToAttach |
interface{} |
Property loadBalancerIdToAttach: After the instance is created. |
NetworkInterfaceQueueNumber |
interface{} |
Property networkInterfaceQueueNumber: The number of queues supported by the primary ENI. |
NetworkOptions |
interface{} |
Property networkOptions: Network options. |
Password |
interface{} |
Property password: Password of created ecs instance. |
PasswordInherit |
interface{} |
Property passwordInherit: Specifies whether to use the password preset in the image. |
Period |
interface{} |
Property period: Prepaid time period. |
PeriodUnit |
interface{} |
Property periodUnit: Unit of prepaid time period, it could be Week\/Month\/Year. |
RamRoleName |
interface{} |
Property ramRoleName: Instance RAM role name. |
ResourceGroupId |
interface{} |
Property resourceGroupId: Resource group id. |
SecurityGroupId |
interface{} |
Property securityGroupId: Security group to create ecs instance. |
SecurityGroupIds |
interface{} |
Property securityGroupIds: The IDs of security groups N to which the instance belongs. |
SecurityOptions |
interface{} |
Property securityOptions: Security options. |
SpotPriceLimit |
interface{} |
Property spotPriceLimit: The hourly price threshold of a instance, and it takes effect only when parameter InstanceChargeType is PostPaid. |
SpotStrategy |
interface{} |
Property spotStrategy: The spot strategy of a Pay-As-You-Go instance, and it takes effect only when parameter InstanceChargeType is PostPaid. |
SystemDiskAutoSnapshotPolicyId |
interface{} |
Property systemDiskAutoSnapshotPolicyId: Auto snapshot policy ID. |
SystemDiskBurstingEnabled |
interface{} |
Property systemDiskBurstingEnabled: Whether enable bursting. |
SystemDiskCategory |
interface{} |
Property systemDiskCategory: Category of system disk. |
SystemDiskDescription |
interface{} |
Property systemDiskDescription: Description of created system disk.Old instances will not be changed. |
SystemDiskDiskName |
interface{} |
Property systemDiskDiskName: Name of created system disk.Old instances will not be changed. |
SystemDiskEncryptAlgorithm |
interface{} |
Property systemDiskEncryptAlgorithm: The algorithm to use to encrypt the system disk. |
SystemDiskEncrypted |
interface{} |
Property systemDiskEncrypted: Specifies whether to encrypt the system disk. |
SystemDiskKmsKeyId |
interface{} |
Property systemDiskKmsKeyId: The ID of the KMS key to use for the system disk. |
SystemDiskProvisionedIops |
interface{} |
Property systemDiskProvisionedIops: Provisioning IOPS. |
SystemDiskStorageClusterId |
interface{} |
Property systemDiskStorageClusterId: The ID of the dedicated block storage cluster. |
Tags |
*[]TagsProperty |
Property tags: Tags to attach to instance. |
UniqueSuffix |
interface{} |
Property uniqueSuffix: Specifies whether to automatically append incremental suffixes to the hostname specified by the HostName parameter and to the instance name specified by the InstanceName parameter when you batch create instances. |
UpdatePolicy |
interface{} |
Property updatePolicy: Specify the policy at update. |
ZoneId |
interface{} |
Property zoneId: The ID of the zone to which the instance belongs. |
MaxAmountRequired
MaxAmount interface{}
- Type: interface{}
Property maxAmount: Max number of instances to create, should be bigger than 'MinAmount' and smaller than 1000.
SourceInstanceIdRequired
SourceInstanceId interface{}
- Type: interface{}
Property sourceInstanceId: Source ecs instance used to copy properties to clone new ecs instance.
It will copy the InstanceType, ImageId, InternetChargeType, InternetMaxBandwidthIn, InternetMaxBandwidthOut and the system disk and data disk configurations. If the instance network is VPC, it will also clone the relative properties. If specified instance with more than one security group, it will use the first security group to create instance. you can also specify the SecurityGroupId to override it.
AutoReleaseTimeOptional
AutoReleaseTime interface{}
- Type: interface{}
Property autoReleaseTime: Auto release time for created instance, Follow ISO8601 standard using UTC time.
format is 'yyyy-MM-ddTHH:mm:ssZ'. Not bigger than 3 years from this day onwards
AutoRenewOptional
AutoRenew interface{}
- Type: interface{}
Property autoRenew: Whether renew the fee automatically?
When the parameter InstanceChargeType is PrePaid, it will take effect. Range of value:True: automatic renewal.False: no automatic renewal. Default value is False.Old instances will not be changed.
AutoRenewPeriodOptional
AutoRenewPeriod interface{}
- Type: interface{}
Property autoRenewPeriod: The time period of auto renew.
When the parameter InstanceChargeType is PrePaid, it will take effect.It could be 1, 2, 3, 6, 12, 24, 36, 48, 60. Default value is 1.Old instances will not be changed.
BackendServerWeightOptional
BackendServerWeight interface{}
- Type: interface{}
Property backendServerWeight: The weight of backend server of load balancer.
From 0 to 100, 0 means offline. Default is 100.
CpuOptionsOptional
CpuOptions interface{}
- Type: interface{}
Property cpuOptions: Cpu options.
DeletionProtectionOptional
DeletionProtection interface{}
- Type: interface{}
Property deletionProtection: Whether an instance can be released manually through the console or API, deletion protection only support postPaid instance.
DeploymentSetIdOptional
DeploymentSetId interface{}
- Type: interface{}
Property deploymentSetId: Deployment set ID.
The change of the property does not affect existing instances.
DescriptionOptional
Description interface{}
- Type: interface{}
Property description: Description of the instance, [2, 256] characters.
Do not fill or empty, the default is empty. Old instances will not be changed.
DiskMappingsOptional
DiskMappings interface{}
- Type: interface{}
Property diskMappings: Disk mappings to attach to instance.
Max support 16 disks. If the image contains a data disk, you can specify other parameters of the data disk via the same value of parameter "Device". If parameter "Category" is not specified, it will be cloud_efficiency instead of "Category" of data disk in the image.Old instances will not be changed.
EniMappingsOptional
EniMappings interface{}
- Type: interface{}
Property eniMappings: NetworkInterface to attach to instance.
Max support 2 ENIs.
HostNamesOptional
HostNames interface{}
- Type: interface{}
Property hostNames: The hostname of instance N.
You can use this parameter to specify different hostnames for multiple instances. Take note of the following items:
- The maximum value of N must be the same as the Amount value. For example, if you set Amount to 2, you can use HostNames.1 and HostNames.2 to specify hostnames for the individual instances. Examples: HostNames.1=test1 and HostNames.2=test2.
- You cannot specify both HostName and HostNames.N.
- The hostname cannot start or end with a period (.) or hyphen (-). The hostname cannot contain consecutive periods (.) or hyphens (-).
- For Windows instances, the hostname must be 2 to 15 characters in length and cannot contain periods (.) or contain only digits. The hostname can contain letters, digits, and hyphens (-).
- For instances that run other operating systems such as Linux, the hostname must be 2 to 64 characters in length. You can use periods (.) to separate a hostname into multiple segments. Each segment can contain letters, digits, and hyphens (-).
HpcClusterIdOptional
HpcClusterId interface{}
- Type: interface{}
Property hpcClusterId: The HPC cluster ID to which the instance belongs.The change of the property does not affect existing instances.
ImageIdOptional
ImageId interface{}
- Type: interface{}
Property imageId: Image ID to create ecs instance.
ImageOptionsOptional
ImageOptions interface{}
- Type: interface{}
Property imageOptions: Image options.
InstanceNameOptional
InstanceName interface{}
- Type: interface{}
Property instanceName: Display name of the instance, [2, 128] English or Chinese characters, must start with a letter or Chinese in size, can contain numbers, '_' or '.', '-'. Support to use the regular expression to set the different instance name for each ECS instance. InstanceName could be specified as 'name_prefix[begin_number,bits]name_suffix', such as 'testinstance[123,4]tail'. If you creates 3 instances with the instance name 'testinstance[123,4]tail', all the instances' names are testinstance0123tail, testinstance0124tail, testinstance0125tail. The 'name_prefix[begin_number,bits]name_suffix' should follow those rules: 1. 'name_prefix' is required. 2. 'name_suffix' is optional. 3. The name regular expression can't include any spaces. 4. The 'bits' must be in range [1, 6]. 5. The 'begin_number' must be in range [0, 999999]. 6. You could only specify 'begin_number'. The 'bits' will be set as 6 by default. 7. You also could only specify the [] or [,]. The 'begin_number' will be set as 0 by default, the 'bits' will be set as 6 by default. 8. If the bits of 'begin_number' is less than the 'bits' you specified, like [1234,1], the 'bits' will be set as 6 by default.
InternetMaxBandwidthInOptional
InternetMaxBandwidthIn interface{}
- Type: interface{}
Property internetMaxBandwidthIn: Max internet out band width setting, unit in Mbps(Mega bit per second).
The range is [0,200], default is 200 Mbps.
InternetMaxBandwidthOutOptional
InternetMaxBandwidthOut interface{}
- Type: interface{}
Property internetMaxBandwidthOut: Set internet output bandwidth of instance.
Unit is Mbps(Mega bit per second). Range is [0,200]. Default is 1.While the property is not 0, public ip will be assigned for instance.
Ipv6AddressCountOptional
Ipv6AddressCount interface{}
- Type: interface{}
Property ipv6AddressCount: Specifies the number of randomly generated IPv6 addresses for the elastic NIC.
Note You cannot specify the parameters Ipv6Addresses and Ipv6AddressCount at the same time. The change of the property does not affect existing instances.
Ipv6AddressesOptional
Ipv6Addresses interface{}
- Type: interface{}
Property ipv6Addresses: Specify one or more IPv6 addresses for the elastic NIC.
Currently, the maximum list size is 1. Example value: 2001:db8:1234:1a00::*** . Note You cannot specify the parameters Ipv6Addresses and Ipv6AddressCount at the same time. The change of the property does not affect existing instances.
KeyPairNameOptional
KeyPairName interface{}
- Type: interface{}
Property keyPairName: SSH key pair name.Old instances will not be changed.
LaunchTemplateIdOptional
LaunchTemplateId interface{}
- Type: interface{}
Property launchTemplateId: ID of launch template.
Launch template id or name must be specified to use launch template
LaunchTemplateNameOptional
LaunchTemplateName interface{}
- Type: interface{}
Property launchTemplateName: Name of launch template.
Launch template id or name must be specified to use launch template
LaunchTemplateVersionOptional
LaunchTemplateVersion interface{}
- Type: interface{}
Property launchTemplateVersion: Version of launch template.
Default version is used if version is not specified.
LoadBalancerIdToAttachOptional
LoadBalancerIdToAttach interface{}
- Type: interface{}
Property loadBalancerIdToAttach: After the instance is created.
Automatic attach it to the load balancer.
NetworkInterfaceQueueNumberOptional
NetworkInterfaceQueueNumber interface{}
- Type: interface{}
Property networkInterfaceQueueNumber: The number of queues supported by the primary ENI.
Take note of the following items:
- The value of this parameter cannot exceed the maximum number of queues per ENI allowed for the instance type.
- The total number of queues for all ENIs on the instance cannot exceed the queue quota for the instance type.
- If NetworkInterface.N.InstanceType is set to Primary, you cannot specify NetworkInterfaceQueueNumber but can specify NetworkInterface.N.QueueNumber
NetworkOptionsOptional
NetworkOptions interface{}
- Type: interface{}
Property networkOptions: Network options.
PasswordOptional
Password interface{}
- Type: interface{}
Property password: Password of created ecs instance.
Must contain at least 3 types of special character, lower character, upper character, number.
PasswordInheritOptional
PasswordInherit interface{}
- Type: interface{}
Property passwordInherit: Specifies whether to use the password preset in the image.
To use the PasswordInherit parameter, the Password parameter must be empty and you must make sure that the selected image has a password configured.
PeriodOptional
Period interface{}
- Type: interface{}
Property period: Prepaid time period.
Unit is month, it could be from 1 to 9 or 12, 24, 36, 48, 60. Default value is 1.Old instances will not be changed.
PeriodUnitOptional
PeriodUnit interface{}
- Type: interface{}
Property periodUnit: Unit of prepaid time period, it could be Week\/Month\/Year.
Default value is Month.Old instances will not be changed.
RamRoleNameOptional
RamRoleName interface{}
- Type: interface{}
Property ramRoleName: Instance RAM role name.
The name is provided and maintained by Resource Access Management (RAM) and can be queried using ListRoles. For more information, see RAM API CreateRole and ListRoles.
ResourceGroupIdOptional
ResourceGroupId interface{}
- Type: interface{}
Property resourceGroupId: Resource group id.
SecurityGroupIdOptional
SecurityGroupId interface{}
- Type: interface{}
Property securityGroupId: Security group to create ecs instance.
For classic instance need the security group not belong to VPC, for VPC instance, please make sure the security group belong to specified VPC.
SecurityGroupIdsOptional
SecurityGroupIds interface{}
- Type: interface{}
Property securityGroupIds: The IDs of security groups N to which the instance belongs.
The valid values of N are based on the maximum number of security groups to which an instance can belong. For more information, see Security group limits.Note: You cannot specify both SecurityGroupId and SecurityGroupIds at the same time.
SecurityOptionsOptional
SecurityOptions interface{}
- Type: interface{}
Property securityOptions: Security options.
SpotPriceLimitOptional
SpotPriceLimit interface{}
- Type: interface{}
Property spotPriceLimit: The hourly price threshold of a instance, and it takes effect only when parameter InstanceChargeType is PostPaid.
Three decimals is allowed at most.
SpotStrategyOptional
SpotStrategy interface{}
- Type: interface{}
Property spotStrategy: The spot strategy of a Pay-As-You-Go instance, and it takes effect only when parameter InstanceChargeType is PostPaid.
Value range: "NoSpot: A regular Pay-As-You-Go instance", "SpotWithPriceLimit: A price threshold for a spot instance, ""SpotAsPriceGo: A price that is based on the highest Pay-As-You-Go instance. "Default value: NoSpot.
SystemDiskAutoSnapshotPolicyIdOptional
SystemDiskAutoSnapshotPolicyId interface{}
- Type: interface{}
Property systemDiskAutoSnapshotPolicyId: Auto snapshot policy ID.
SystemDiskBurstingEnabledOptional
SystemDiskBurstingEnabled interface{}
- Type: interface{}
Property systemDiskBurstingEnabled: Whether enable bursting.
SystemDiskCategoryOptional
SystemDiskCategory interface{}
- Type: interface{}
Property systemDiskCategory: Category of system disk.
Default is cloud_efficiency. support cloud|cloud_efficiency|cloud_ssd|cloud_essd|ephemeral_ssd|cloud_auto|cloud_essd_entry.Old instances will not be changed.
SystemDiskDescriptionOptional
SystemDiskDescription interface{}
- Type: interface{}
Property systemDiskDescription: Description of created system disk.Old instances will not be changed.
SystemDiskDiskNameOptional
SystemDiskDiskName interface{}
- Type: interface{}
Property systemDiskDiskName: Name of created system disk.Old instances will not be changed.
SystemDiskEncryptAlgorithmOptional
SystemDiskEncryptAlgorithm interface{}
- Type: interface{}
Property systemDiskEncryptAlgorithm: The algorithm to use to encrypt the system disk.
Valid values:
- aes-256
- sm4-128 Default value: aes-256.
SystemDiskEncryptedOptional
SystemDiskEncrypted interface{}
- Type: interface{}
Property systemDiskEncrypted: Specifies whether to encrypt the system disk.
Valid values:
- true: encrypts the system disk.
- false: does not encrypt the system disk. Default value: false.
SystemDiskKmsKeyIdOptional
SystemDiskKmsKeyId interface{}
- Type: interface{}
Property systemDiskKmsKeyId: The ID of the KMS key to use for the system disk.
SystemDiskProvisionedIopsOptional
SystemDiskProvisionedIops interface{}
- Type: interface{}
Property systemDiskProvisionedIops: Provisioning IOPS.
SystemDiskStorageClusterIdOptional
SystemDiskStorageClusterId interface{}
- Type: interface{}
Property systemDiskStorageClusterId: The ID of the dedicated block storage cluster.
If you want to use disks in a dedicated block storage cluster as system disks when you create instances, you must specify this parameter.
TagsOptional
Tags *[]TagsProperty
- Type: *[]TagsProperty
Property tags: Tags to attach to instance.
Max support 20 tags to add during create instance. Each tag with two properties Key and Value, and Key is required.
UniqueSuffixOptional
UniqueSuffix interface{}
- Type: interface{}
Property uniqueSuffix: Specifies whether to automatically append incremental suffixes to the hostname specified by the HostName parameter and to the instance name specified by the InstanceName parameter when you batch create instances.
The incremental suffixes can range from 001 to 999. Valid values:
- true: appends incremental suffixes to the hostname and the instance name.
- false: does not append incremental suffixes to the hostname or the instance name. Default value: false. When the HostName or InstanceName value is set in the name_prefix[begin_number,bits] format without a suffix (name_suffix), the UniqueSuffix parameter does not take effect. The names are sorted in the specified sequence.
UpdatePolicyOptional
UpdatePolicy interface{}
- Type: interface{}
Property updatePolicy: Specify the policy at update.
The value can be 'ForNewInstances' or 'ForAllInstances'. If UpdatePolicy is 'ForAllInstance', The updatable parameters are InstanceType, ImageId, SystemDiskSize, SystemDiskCategory, Password, UserData,InternetChargeType, InternetMaxBandwidthOut, InternetMaxBandwidthIn. The default is 'ForNewInstances'
ZoneIdOptional
ZoneId interface{}
- Type: interface{}
Property zoneId: The ID of the zone to which the instance belongs.
For more information, call the DescribeZones operation to query the most recent zone list. Default value is empty, which means random selection.