Skip to content

InstanceProps

Properties for defining a Instance.

See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-ecs-instance

Initializer

using AlibabaCloud.SDK.ROS.CDK.Ecs;
new InstanceProps {
    object InstanceType,
    object Affinity = null,
    object AllocatePublicIp = null,
    object AutoRenew = null,
    object AutoRenewPeriod = null,
    object CreditSpecification = null,
    object DedicatedHostId = null,
    object DeletionProtection = null,
    object DeploymentSetGroupNo = null,
    object DeploymentSetId = null,
    object Description = null,
    object DiskMappings = null,
    object HostName = null,
    object HpcClusterId = null,
    object HttpEndpoint = null,
    object HttpTokens = null,
    object ImageFamily = null,
    object ImageId = null,
    object InstanceChargeType = null,
    object InstanceName = null,
    object InternetChargeType = null,
    object InternetMaxBandwidthOut = null,
    object IoOptimized = null,
    object KeyPairName = null,
    object Password = null,
    object PasswordInherit = null,
    object Period = null,
    object PeriodUnit = null,
    object PrivateIpAddress = null,
    object PrivatePoolOptions = null,
    object RamRoleName = null,
    object ResourceGroupId = null,
    object SecurityEnhancementStrategy = null,
    object SecurityGroupId = null,
    object SecurityGroupIds = null,
    object SpotDuration = null,
    object SpotInterruptionBehavior = null,
    object SpotPriceLimit = null,
    object SpotStrategy = null,
    object StorageSetId = null,
    object StorageSetPartitionNumber = null,
    object SystemDiskCategory = null,
    object SystemDiskDescription = null,
    object SystemDiskDiskName = null,
    object SystemDiskPerformanceLevel = null,
    object SystemDiskSize = null,
    TagsProperty[] Tags = null,
    object Tenancy = null,
    object UseAdditionalService = null,
    object UserData = null,
    object VpcId = null,
    object VSwitchId = null,
    object ZoneId = null,
    object ZoneIds = null
};

Properties

Name Type Description
InstanceType object Property instanceType: Ecs instance supported instance type, make sure it should be correct.
Affinity object Property affinity: Specifies whether to associate the instance on a dedicated host with the dedicated host.
AllocatePublicIp object Property allocatePublicIp: The public ip for ecs instance, if properties is true, will allocate public ip.
AutoRenew object Property autoRenew: Whether renew the fee automatically?
AutoRenewPeriod object Property autoRenewPeriod: The time period of auto renew.
CreditSpecification object Property creditSpecification: The performance mode of the burstable instance.
DedicatedHostId object Property dedicatedHostId: which dedicated host will be deployed.
DeletionProtection object Property deletionProtection: Whether an instance can be released manually through the console or API, deletion protection only support postPaid instance.
DeploymentSetGroupNo object Property deploymentSetGroupNo: The number of the deployment set group to which to deploy the instance.
DeploymentSetId object Property deploymentSetId: Deployment set ID.
Description object Property description: Description of the instance, [2, 256] characters.
DiskMappings object Property diskMappings: Disk mappings to attach to instance.
HostName object Property hostName: Host name of created ecs instance.
HpcClusterId object Property hpcClusterId: The HPC cluster ID to which the instance belongs.
HttpEndpoint object Property httpEndpoint: Specifies whether the access channel is enabled for instance metadata.
HttpTokens object Property httpTokens: Specifies whether the security hardening mode (IMDSv2) is forcefully used to access instance metadata.
ImageFamily object Property imageFamily: The name of the image family.
ImageId object Property imageId: Image ID to create ecs instance.
InstanceChargeType object Property instanceChargeType: Instance Charge type, allowed value: Prepaid and Postpaid.
InstanceName object 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 '.', '-'.
InternetChargeType object Property internetChargeType: Instance internet access charge type.Support 'PayByBandwidth' and 'PayByTraffic' only. Default is PayByTraffic.
InternetMaxBandwidthOut object Property internetMaxBandwidthOut: Set internet output bandwidth of instance.
IoOptimized object Property ioOptimized: The 'optimized' instance can provide better IO performance.
KeyPairName object Property keyPairName: SSH key pair name.
Password object Property password: Password of created ecs instance.
PasswordInherit object Property passwordInherit: Specifies whether to use the password preset in the image.
Period object Property period: Prepaid time period.
PeriodUnit object Property periodUnit: Unit of prepaid time period, it could be Week\/Month\/Year.
PrivateIpAddress object Property privateIpAddress: Private IP for the instance created.
PrivatePoolOptions object Property privatePoolOptions: The options of the private pool.
RamRoleName object Property ramRoleName: Instance RAM role name.
ResourceGroupId object Property resourceGroupId: Resource group id.
SecurityEnhancementStrategy object Property securityEnhancementStrategy:.
SecurityGroupId object Property securityGroupId: Security group to create ecs instance.
SecurityGroupIds object Property securityGroupIds: The ID list of security group to which to assign the instance.
SpotDuration object Property spotDuration: The protection period of the preemptible instance.
SpotInterruptionBehavior object Property spotInterruptionBehavior: The interruption mode of the preemptible instance.
SpotPriceLimit object Property spotPriceLimit: The hourly price threshold of a instance, and it takes effect only when parameter InstanceChargeType is PostPaid.
SpotStrategy object Property spotStrategy: The spot strategy of a Pay-As-You-Go instance, and it takes effect only when parameter InstanceChargeType is PostPaid.
StorageSetId object Property storageSetId: The storage set ID.
StorageSetPartitionNumber object Property storageSetPartitionNumber: The maximum number of partitions in the storage set.
SystemDiskCategory object Property systemDiskCategory: Category of system disk.
SystemDiskDescription object Property systemDiskDescription: Description of created system disk.
SystemDiskDiskName object Property systemDiskDiskName: Name of created system disk.
SystemDiskPerformanceLevel object Property systemDiskPerformanceLevel: The performance level of the enhanced SSD used as the system disk.Default value: PL1. Valid values:PL0: A single enhanced SSD delivers up to 10,000 random read\/write IOPS.PL1: A single enhanced SSD delivers up to 50,000 random read\/write IOPS.PL2: A single enhanced SSD delivers up to 100,000 random read\/write IOPS.PL3: A single enhanced SSD delivers up to 1,000,000 random read\/write IOPS.
SystemDiskSize object Property systemDiskSize: Disk size of the system disk, range from 20 to 500 GB.
Tags TagsProperty[] Property tags: Tags to attach to instance.
Tenancy object Property tenancy: Specifies whether to create the instance on a dedicated host.
UseAdditionalService object Property useAdditionalService: Specifies whether to use the system configurations for virtual machines provided by Alibaba Cloud.
UserData object Property userData: User data to pass to instance.
VpcId object Property vpcId: The VPC id to create ecs instance.
VSwitchId object Property vSwitchId: The vSwitch Id to create ecs instance.
ZoneId object Property zoneId: The ID of the zone to which the instance belongs.
ZoneIds object Property zoneIds: Zone ids for query parameters.

InstanceTypeRequired

public object InstanceType { get; set; }
  • Type: object

Property instanceType: Ecs instance supported instance type, make sure it should be correct.


AffinityOptional

public object Affinity { get; set; }
  • Type: object

Property affinity: Specifies whether to associate the instance on a dedicated host with the dedicated host.

Valid values:

  • default: does not associate the ECS instance with the dedicated host. When you start an instance that was stopped in economical mode, the instance is automatically deployed to another dedicated host in the automatic deployment resource pool if the available resources of the original dedicated host are insufficient.
  • host: associates the ECS instance with the dedicated host. When you start an instance that was stopped in economical mode, the instance remains on the original dedicated host. If the available resources of the original dedicated host are insufficient, the instance cannot start. Default value: default.

AllocatePublicIpOptional

public object AllocatePublicIp { get; set; }
  • Type: object

Property allocatePublicIp: The public ip for ecs instance, if properties is true, will allocate public ip.

If property InternetMaxBandwidthOut set to 0, it will not assign public ip.


AutoRenewOptional

public object AutoRenew { get; set; }
  • Type: object

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.


AutoRenewPeriodOptional

public object AutoRenewPeriod { get; set; }
  • Type: object

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.


CreditSpecificationOptional

public object CreditSpecification { get; set; }
  • Type: object

Property creditSpecification: The performance mode of the burstable instance.

Valid values:

  • Standard: the standard mode.
  • Unlimited: the unlimited mode.

DedicatedHostIdOptional

public object DedicatedHostId { get; set; }
  • Type: object

Property dedicatedHostId: which dedicated host will be deployed.


DeletionProtectionOptional

public object DeletionProtection { get; set; }
  • Type: object

Property deletionProtection: Whether an instance can be released manually through the console or API, deletion protection only support postPaid instance.


DeploymentSetGroupNoOptional

public object DeploymentSetGroupNo { get; set; }
  • Type: object

Property deploymentSetGroupNo: The number of the deployment set group to which to deploy the instance.

If the deployment set specified by DeploymentSetId uses the high availability group strategy (AvailabilityGroup), you can use DeploymentSetGroupNo to specify a deployment set group in the deployment set. Valid values: 1 to 7.


DeploymentSetIdOptional

public object DeploymentSetId { get; set; }
  • Type: object

Property deploymentSetId: Deployment set ID.


DescriptionOptional

public object Description { get; set; }
  • Type: object

Property description: Description of the instance, [2, 256] characters.

Do not fill or empty, the default is empty.


DiskMappingsOptional

public object DiskMappings { get; set; }
  • Type: object

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.


HostNameOptional

public object HostName { get; set; }
  • Type: object

Property hostName: Host name of created ecs instance.

at least 2 characters, and '.' '-' Is not the first and last characters as hostname, not continuous use. Windows platform can be up to 15 characters, allowing letters (without limiting case), numbers and '-', and does not support the number of points, not all is digital ('.').Other (Linux, etc.) platform up to 64 characters, allowing support number multiple points for the period between the points, each permit letters (without limiting case), numbers and '-' components.


HpcClusterIdOptional

public object HpcClusterId { get; set; }
  • Type: object

Property hpcClusterId: The HPC cluster ID to which the instance belongs.


HttpEndpointOptional

public object HttpEndpoint { get; set; }
  • Type: object

Property httpEndpoint: Specifies whether the access channel is enabled for instance metadata.

Valid values:

  • enabled
  • disabled Default value: enabled.

HttpTokensOptional

public object HttpTokens { get; set; }
  • Type: object

Property httpTokens: Specifies whether the security hardening mode (IMDSv2) is forcefully used to access instance metadata.

Valid values:

  • optional: does not forcefully use the security-enhanced mode (IMDSv2).
  • required: forcefully uses the security-enhanced mode (IMDSv2). After you set this parameter to required, you cannot access instance metadata in normal mode. Default value: optional.

ImageFamilyOptional

public object ImageFamily { get; set; }
  • Type: object

Property imageFamily: The name of the image family.

You can set this parameter to obtain the latest available custom image from the specified image family to create the instance.

  • ImageFamily must be empty if ImageId is specified.
  • ImageFamily can be specified if ImageId is not specified.

ImageIdOptional

public object ImageId { get; set; }
  • Type: object

Property imageId: Image ID to create ecs instance.


InstanceChargeTypeOptional

public object InstanceChargeType { get; set; }
  • Type: object

Property instanceChargeType: Instance Charge type, allowed value: Prepaid and Postpaid.

If specified Prepaid, please ensure you have sufficient balance in your account. Or instance creation will be failure. Default value is Postpaid.


InstanceNameOptional

public object InstanceName { get; set; }
  • Type: object

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 '.', '-'.


InternetChargeTypeOptional

public object InternetChargeType { get; set; }
  • Type: object

Property internetChargeType: Instance internet access charge type.Support 'PayByBandwidth' and 'PayByTraffic' only. Default is PayByTraffic.


InternetMaxBandwidthOutOptional

public object InternetMaxBandwidthOut { get; set; }
  • Type: object

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.


IoOptimizedOptional

public object IoOptimized { get; set; }
  • Type: object

Property ioOptimized: The 'optimized' instance can provide better IO performance.

Support 'none' and 'optimized' only, default is 'optimized'.


KeyPairNameOptional

public object KeyPairName { get; set; }
  • Type: object

Property keyPairName: SSH key pair name.


PasswordOptional

public object Password { get; set; }
  • Type: object

Property password: Password of created ecs instance.

Must contain at least 3 types of special character, lower character, upper character, number.


PasswordInheritOptional

public object PasswordInherit { get; set; }
  • Type: object

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

public object Period { get; set; }
  • Type: object

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.


PeriodUnitOptional

public object PeriodUnit { get; set; }
  • Type: object

Property periodUnit: Unit of prepaid time period, it could be Week\/Month\/Year.

Default value is Month.


PrivateIpAddressOptional

public object PrivateIpAddress { get; set; }
  • Type: object

Property privateIpAddress: Private IP for the instance created.

Only works for VPC instance and cannot duplicated with existing instance.


PrivatePoolOptionsOptional

public object PrivatePoolOptions { get; set; }
  • Type: object

Property privatePoolOptions: The options of the private pool.


RamRoleNameOptional

public object RamRoleName { get; set; }
  • Type: object

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

public object ResourceGroupId { get; set; }
  • Type: object

Property resourceGroupId: Resource group id.


SecurityEnhancementStrategyOptional

public object SecurityEnhancementStrategy { get; set; }
  • Type: object

Property securityEnhancementStrategy:.


SecurityGroupIdOptional

public object SecurityGroupId { get; set; }
  • Type: object

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

public object SecurityGroupIds { get; set; }
  • Type: object

Property securityGroupIds: The ID list of security group to which to assign the instance.

The max length is based on the maximum number of security groups to which an instance can belong. For more information, see the "Security group limits" section in Limits.


SpotDurationOptional

public object SpotDuration { get; set; }
  • Type: object

Property spotDuration: The protection period of the preemptible instance.

Unit: hours. Valid values: 0, 1, 2, 3, 4, 5, and 6. Protection periods of 2, 3, 4, 5, and 6 hours are in invitational preview. If you want to set this parameter to one of these values, submit a ticket. If this parameter is set to 0, no protection period is configured for the preemptible instance. Default value: 1.


SpotInterruptionBehaviorOptional

public object SpotInterruptionBehavior { get; set; }
  • Type: object

Property spotInterruptionBehavior: The interruption mode of the preemptible instance.

Default value: Terminate. Set the value to Terminate, which specifies to release the instance.


SpotPriceLimitOptional

public object SpotPriceLimit { get; set; }
  • Type: object

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

public object SpotStrategy { get; set; }
  • Type: object

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.


StorageSetIdOptional

public object StorageSetId { get; set; }
  • Type: object

Property storageSetId: The storage set ID.


StorageSetPartitionNumberOptional

public object StorageSetPartitionNumber { get; set; }
  • Type: object

Property storageSetPartitionNumber: The maximum number of partitions in the storage set.

The value must be greater than or equal to 2.


SystemDiskCategoryOptional

public object SystemDiskCategory { get; set; }
  • Type: object

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


SystemDiskDescriptionOptional

public object SystemDiskDescription { get; set; }
  • Type: object

Property systemDiskDescription: Description of created system disk.


SystemDiskDiskNameOptional

public object SystemDiskDiskName { get; set; }
  • Type: object

Property systemDiskDiskName: Name of created system disk.


SystemDiskPerformanceLevelOptional

public object SystemDiskPerformanceLevel { get; set; }
  • Type: object

Property systemDiskPerformanceLevel: The performance level of the enhanced SSD used as the system disk.Default value: PL1. Valid values:PL0: A single enhanced SSD delivers up to 10,000 random read\/write IOPS.PL1: A single enhanced SSD delivers up to 50,000 random read\/write IOPS.PL2: A single enhanced SSD delivers up to 100,000 random read\/write IOPS.PL3: A single enhanced SSD delivers up to 1,000,000 random read\/write IOPS.


SystemDiskSizeOptional

public object SystemDiskSize { get; set; }
  • Type: object

Property systemDiskSize: Disk size of the system disk, range from 20 to 500 GB.

If you specify with your own image, make sure the system disk size bigger than image size.


TagsOptional

public TagsProperty[] Tags { get; set; }

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.


TenancyOptional

public object Tenancy { get; set; }
  • Type: object

Property tenancy: Specifies whether to create the instance on a dedicated host.

Valid values:

  • default: creates the instance on a non-dedicated host.
  • host: creates the instance on a dedicated host. If you do not specify DedicatedHostId, Alibaba Cloud selects a dedicated host for the instance. Default value: default.

UseAdditionalServiceOptional

public object UseAdditionalService { get; set; }
  • Type: object

Property useAdditionalService: Specifies whether to use the system configurations for virtual machines provided by Alibaba Cloud.

System configurations for Windows: NTP and KMS. System configurations for Linux: NTP and YUM.


UserDataOptional

public object UserData { get; set; }
  • Type: object

Property userData: User data to pass to instance.

[1, 16KB] characters.User data should not be base64 encoded. If you want to pass base64 encoded string to the property, use function Fn::Base64Decode to decode the base64 string first.


VpcIdOptional

public object VpcId { get; set; }
  • Type: object

Property vpcId: The VPC id to create ecs instance.


VSwitchIdOptional

public object VSwitchId { get; set; }
  • Type: object

Property vSwitchId: The vSwitch Id to create ecs instance.


ZoneIdOptional

public object ZoneId { get; set; }
  • Type: object

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.


ZoneIdsOptional

public object ZoneIds { get; set; }
  • Type: object

Property zoneIds: Zone ids for query parameters.