Skip to content

ScalingConfigurationProps

Properties for defining a ScalingConfiguration.

See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-ess-scalingconfiguration

Initializer

using AlibabaCloud.SDK.ROS.CDK.Ess;
new ScalingConfigurationProps {
    object ScalingGroupId,
    object Affinity = null,
    object Cpu = null,
    object CreditSpecification = null,
    object DedicatedHostId = null,
    object DeploymentSetId = null,
    object DiskMappings = null,
    object HostName = null,
    object HpcClusterId = null,
    object ImageFamily = null,
    object ImageId = null,
    object ImageName = null,
    object ImageOptionsLoginAsNonRoot = null,
    object InstanceDescription = null,
    object InstanceId = null,
    object InstanceName = null,
    object InstancePatternInfos = null,
    object InstanceType = null,
    object InstanceTypeOverrides = null,
    object InstanceTypes = null,
    object InternetChargeType = null,
    object InternetMaxBandwidthIn = null,
    object InternetMaxBandwidthOut = null,
    object IoOptimized = null,
    object Ipv6AddressCount = null,
    object KeyPairName = null,
    object LoadBalancerWeight = null,
    object Memory = null,
    object Password = null,
    object PasswordInherit = null,
    object PrivatePoolOptions = null,
    object RamRoleName = null,
    object ResourceGroupId = null,
    object ScalingConfigurationName = null,
    object SecurityEnhancementStrategy = null,
    object SecurityGroupId = null,
    object SecurityGroupIds = null,
    object SpotDuration = null,
    object SpotInterruptionBehavior = null,
    object SpotPriceLimit = null,
    object SpotPriceLimitForInstanceType = null,
    object SpotStrategy = null,
    object SystemDiskAutoSnapshotPolicyId = null,
    object SystemDiskBurstingEnabled = null,
    object SystemDiskCategories = null,
    object SystemDiskCategory = null,
    object SystemDiskDescription = null,
    object SystemDiskDiskName = null,
    object SystemDiskEncryptAlgorithm = null,
    object SystemDiskEncrypted = null,
    object SystemDiskKmsKeyId = null,
    object SystemDiskPerformanceLevel = null,
    object SystemDiskProvisionedIops = null,
    object SystemDiskSize = null,
    object TagList = null,
    object Tenancy = null,
    object UserData = null,
    object ZoneId = null
};

Properties

Name Type Description
ScalingGroupId object Property scalingGroupId: Scaling group id to create the scaling configuration.
Affinity object Property affinity: Specifies whether to associate an ECS instance on a dedicated host with the dedicated host.
Cpu object Property cpu: The number of vCPUs.
CreditSpecification object Property creditSpecification: The performance mode of the burstable instance.
DedicatedHostId object Property dedicatedHostId: The ID of the dedicated host on which you want to create an ECS instance.
DeploymentSetId object Property deploymentSetId: Deployment set ID.
DiskMappings object Property diskMappings: Disk mappings to attach to instance.
HostName object Property hostName: The hostname of the ECS instance.
HpcClusterId object Property hpcClusterId: The HPC cluster ID to which the instance belongs.
ImageFamily object Property imageFamily: The name of the image family.
ImageId object Property imageId: Image ID to create ecs instance .
ImageName object Property imageName: The name of the image.
ImageOptionsLoginAsNonRoot object Property imageOptionsLoginAsNonRoot: Whether the ecs instance is logged in as ecs-user.Valid values: - true - false Default value: false.
InstanceDescription object Property instanceDescription: The description of the ECS instance.
InstanceId object Property instanceId: Source ECS instance to copy configuration, if the properties is setting, Which will copy the InstanceType, ImageId, InternetChargeType, IoOptimized,UserData, KeyPairName, RamRoleName, InternetMaxBandwidthIn,InternetMaxBandwidthOut, and first security group id from source instance, you can also specify the relative properties to overwrite the properties copy from source instance id.
InstanceName object Property instanceName: The name of the instance launched from the current scaling configuration.
InstancePatternInfos object Property instancePatternInfos: Details of the intelligent configuration settings that determine the range of instance types that meet the specified criteria.
InstanceType object Property instanceType: ecs supported instance type.
InstanceTypeOverrides object Property instanceTypeOverrides: The instance types.
InstanceTypes object Property instanceTypes: ecs supported instance types.
InternetChargeType object Property internetChargeType: Instance internet access charge type.Support 'PayByBandwidth' and 'PayByTraffic' only.
InternetMaxBandwidthIn object Property internetMaxBandwidthIn: Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second).
InternetMaxBandwidthOut object Property internetMaxBandwidthOut: Maximum outgoing bandwidth from the public network, measured in Mbps (Mega bit per second).
IoOptimized object Property ioOptimized: The 'optimized' instance can provide better IO performance.
Ipv6AddressCount object Property ipv6AddressCount: The number of randomly generated IPv6 addresses to be assigned to the elastic network interface (ENI).
KeyPairName object Property keyPairName: SSH key pair name.
LoadBalancerWeight object Property loadBalancerWeight: The weight of the ECS instance as a backend server.
Memory object Property memory: The memory size.
Password object Property password: Password of created ecs instance.
PasswordInherit object Property passwordInherit: Whether to use the password pre-configured in the image you select or not.
PrivatePoolOptions object Property privatePoolOptions: Option settings for private pools.
RamRoleName object Property ramRoleName: Instance RAM role name.
ResourceGroupId object Property resourceGroupId: Resource group id.
ScalingConfigurationName object Property scalingConfigurationName: Name of created scaling configuration.
SecurityEnhancementStrategy object Property securityEnhancementStrategy: Specifies whether to enable security hardening.
SecurityGroupId object Property securityGroupId: Security Group to create ecs instance.
SecurityGroupIds object Property securityGroupIds: The IDs of the security groups with which you want to associate the ECS instances that are created by using the scaling configuration.
SpotDuration object Property spotDuration: The retention period of the preemptible instance.
SpotInterruptionBehavior object Property spotInterruptionBehavior: The interruption mode of the preemptible instance.
SpotPriceLimit object Property spotPriceLimit: Set the hourly maximum price for the instance.
SpotPriceLimitForInstanceType object Property spotPriceLimitForInstanceType: Set the hourly maximum price for the instance of specified instance type.
SpotStrategy object Property spotStrategy: Preemption strategy for post-paid instances.
SystemDiskAutoSnapshotPolicyId object Property systemDiskAutoSnapshotPolicyId: Auto snapshot policy ID.
SystemDiskBurstingEnabled object Property systemDiskBurstingEnabled: Specifies whether to enable the burst feature for the system disk.
SystemDiskCategories object Property systemDiskCategories: The categories of the system disks.
SystemDiskCategory object Property systemDiskCategory: Category of system disk.
SystemDiskDescription object Property systemDiskDescription: The description of the system disk.
SystemDiskDiskName object Property systemDiskDiskName: The name of the system disk.
SystemDiskEncryptAlgorithm object Property systemDiskEncryptAlgorithm: The encryption algorithm that you want to use to encrypt the system disk.
SystemDiskEncrypted object Property systemDiskEncrypted: Specifies whether to encrypt the system disk.
SystemDiskKmsKeyId object Property systemDiskKmsKeyId: The ID of the KMS key that you want to use to encrypt the system disk.
SystemDiskPerformanceLevel object Property systemDiskPerformanceLevel: The performance level of an ESSD.
SystemDiskProvisionedIops object Property systemDiskProvisionedIops: The IOPS metric that is preconfigured for the system disk.
SystemDiskSize object Property systemDiskSize: Size of system disk.
TagList object Property tagList: The tags of an instance in list format.
Tenancy object Property tenancy: Specifies whether to create an ECS instance on a dedicated host.
UserData object Property userData: User data to pass to instance.
ZoneId object Property zoneId: The zone ID of the ECS instance.

ScalingGroupIdRequired

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

Property scalingGroupId: Scaling group id to create the scaling configuration.


AffinityOptional

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

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

Valid values:

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

CpuOptional

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

Property cpu: The number of vCPUs.

You can specify the number of vCPUs and the memory size to determine the range of instance types. For example, you can set CPU to 2 and Memory to 16 to specify instance types that have 2 vCPUs and 16 GiB of memory. If you specify Cpu and Memory, Auto Scaling determines the available instance types based on factors such as I/O optimization requirements and zones. Then, Auto Scaling preferentially creates instances by using the lowest-priced instance type. Note: You can specify Cpu and Memory to determine the range of instance types only if you set Scaling Policy to Cost Optimization Policy and you do not specify instance types in the scaling configuration.


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: The ID of the dedicated host on which you want to create an ECS instance.

You cannot create preemptible instances on dedicated hosts. If you specify DedicatedHostId, SpotStrategy and SpotPriceLimit are ignored. You can call the DescribeDedicatedHosts operation to query dedicated host IDs.


DeploymentSetIdOptional

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

Property deploymentSetId: Deployment set ID.


DiskMappingsOptional

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

Property diskMappings: Disk mappings to attach to instance.


HostNameOptional

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

Property hostName: The hostname of the ECS instance.

The hostname cannot start or end with a period (.) or a hyphen (-). The hostname cannot contain consecutive periods (.) or hyphens (-). Naming conventions for different types of instances: Windows instances: The hostname must be 2 to 15 characters in length, and can contain letters, digits, and hyphens (-). The hostname cannot contain periods (.) or contain only digits. Other instances such as Linux instances: 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

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

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


ImageFamilyOptional

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

Property imageFamily: The name of the image family.

You can configure this parameter to obtain the latest available images within the specified image family. The images are used to create ECS instances. If you have set the ImageId parameter, you cannot set the ImageFamily parameter.


ImageIdOptional

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

Property imageId: Image ID to create ecs instance .


ImageNameOptional

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

Property imageName: The name of the image.

Each image name must be unique in a region. If you specify ImageId, ImageName is ignored. You cannot use ImageName to specify images that are purchased from Alibaba Cloud Marketplace.


ImageOptionsLoginAsNonRootOptional

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

Property imageOptionsLoginAsNonRoot: Whether the ecs instance is logged in as ecs-user.Valid values: - true - false Default value: false.


InstanceDescriptionOptional

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

Property instanceDescription: The description of the ECS instance.

The description must be 2 to 256 characters in length. The description can contain letters and cannot start with http:// or https://.


InstanceIdOptional

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

Property instanceId: Source ECS instance to copy configuration, if the properties is setting, Which will copy the InstanceType, ImageId, InternetChargeType, IoOptimized,UserData, KeyPairName, RamRoleName, InternetMaxBandwidthIn,InternetMaxBandwidthOut, and first security group id from source instance, you can also specify the relative properties to overwrite the properties copy from source instance id.


InstanceNameOptional

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

Property instanceName: The name of the instance launched from the current scaling configuration.


InstancePatternInfosOptional

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

Property instancePatternInfos: Details of the intelligent configuration settings that determine the range of instance types that meet the specified criteria.


InstanceTypeOptional

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

Property instanceType: ecs supported instance type.


InstanceTypeOverridesOptional

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

Property instanceTypeOverrides: The instance types.


InstanceTypesOptional

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

Property instanceTypes: ecs supported instance types.

Length [1,10]. If InstanceTypes is specified,the InstanceType will be ignored.


InternetChargeTypeOptional

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

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


InternetMaxBandwidthInOptional

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

Property internetMaxBandwidthIn: Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second).

The value range is [1,200]. If this parameter value is not specified, AliyunAPI automatically sets the value to 200 Mbps.


InternetMaxBandwidthOutOptional

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

Property internetMaxBandwidthOut: Maximum outgoing bandwidth from the public network, measured in Mbps (Mega bit per second).

The value range for PayByBandwidth is [0,100]. If this parameter value is not specified, AliyunAPI automatically sets the value to 0 Mbps. The value range for PayByTraffic is [0,100]. If this parameter value is not specified, an error is reported


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


Ipv6AddressCountOptional

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

Property ipv6AddressCount: The number of randomly generated IPv6 addresses to be assigned to the elastic network interface (ENI).


KeyPairNameOptional

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

Property keyPairName: SSH key pair name.


LoadBalancerWeightOptional

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

Property loadBalancerWeight: The weight of the ECS instance as a backend server.

Valid values: 1 to 100. Default value: 50.


MemoryOptional

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

Property memory: The memory size.

Unit: GiB. You can specify the number of vCPUs and the memory size to determine the range of instance types. For example, you can set Cpu to 2 and Memory to 16 to specify instance types that have 2 vCPUs and 16 GiB of memory. If you specify Cpu and Memory, Auto Scaling determines the available instance types based on factors such as I/O optimization requirements and zones. Then, Auto Scaling preferentially creates instances by using the lowest-priced instance type. Note: You can specify Cpu and Memory to determine the range of instance types only if you set Scaling Policy to Cost Optimization Policy and you do not specify instance types in the scaling configuration.


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: Whether to use the password pre-configured in the image you select or not.

When PasswordInherit is specified, the Password must be null. For a secure access, make sure that the selected image has password configured.


PrivatePoolOptionsOptional

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

Property privatePoolOptions: Option settings for private pools.


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.


ScalingConfigurationNameOptional

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

Property scalingConfigurationName: Name of created scaling configuration.


SecurityEnhancementStrategyOptional

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

Property securityEnhancementStrategy: Specifies whether to enable security hardening.

Valid values:

  • Active: enables security hardening. This value is applicable only to public images.
  • Deactive: disables security hardening. This value is applicable to all image types.

SecurityGroupIdOptional

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

Property securityGroupId: Security Group to create ecs instance.


SecurityGroupIdsOptional

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

Property securityGroupIds: The IDs of the security groups with which you want to associate the ECS instances that are created by using the scaling configuration.

Note: If you specify SecurityGroupId, you cannot specify SecurityGroupIds.


SpotDurationOptional

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

Property spotDuration: The retention period of the preemptible instance.

Unit: hours. Valid values: 0, 1, 2, 3, 4, 5, and 6. The following retention periods are available in invitational preview: 2, 3, 4, 5, and 6 hours. If you want to set this parameter to one of these values, submit a ticket. If you set this parameter to 0, no protection period is specified 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. This value specifies that the preemptible instance is to be released.


SpotPriceLimitOptional

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

Property spotPriceLimit: Set the hourly maximum price for the instance.

Supports a maximum of 3 decimal places, and the parameter takes effect only when the value of SpotStrategy is SpotWithPriceLimit.It is a default value for all instance types, and can be overwrite by SpotPriceLimitForInstanceType


SpotPriceLimitForInstanceTypeOptional

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

Property spotPriceLimitForInstanceType: Set the hourly maximum price for the instance of specified instance type.

The parameter takes effect only when the value of SpotStrategy is SpotWithPriceLimit. You should input the information of the tag with the format of the Key-Value, such as {"key1":"value1","key2":"value2", ... "key5":"value5"}. At most 50 items can be specified. Key ecs instance type Value Supports a maximum of 3 decimal places.


SpotStrategyOptional

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

Property spotStrategy: Preemption strategy for post-paid instances.

It takes effect when the parameter InstanceChargeType takes the value of PostPaid. Ranges: NoSpot: Normal pay-per-use instance SpotWithPriceLimit: Set a preemptive instance of the cap price SpotAsPriceGo: System automatic bidding, following the current market actual price Default: NoSpot.


SystemDiskAutoSnapshotPolicyIdOptional

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

Property systemDiskAutoSnapshotPolicyId: Auto snapshot policy ID.


SystemDiskBurstingEnabledOptional

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

Property systemDiskBurstingEnabled: Specifies whether to enable the burst feature for the system disk.

Valid values:

  • true
  • false Note: This parameter is available only if you set SystemDiskCategory to cloud_auto.

SystemDiskCategoriesOptional

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

Property systemDiskCategories: The categories of the system disks.

If Auto Scaling cannot create instances by using the disk category that has the highest priority, Auto Scaling creates instances by using the disk category that has the next highest priority. Valid values:

  • cloud: basic disk
  • cloud_efficiency: ultra disk
  • cloud_ssd: standard SSD
  • cloud_essd: ESSD Note: If you specify SystemDiskCategories, you cannot specify SystemDiskCategory.

SystemDiskCategoryOptional

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

Property systemDiskCategory: Category of system disk.

Default is cloud.support cloud|cloud_efficiency|cloud_ssd|cloud_essd|ephemeral_ssd|cloud_auto


SystemDiskDescriptionOptional

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

Property systemDiskDescription: The description of the system disk.

The description must be 2 to 256 characters in length. The description can contain letters and cannot start with http:// or https://.


SystemDiskDiskNameOptional

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

Property systemDiskDiskName: The name of the system disk.

The name must be 2 to 128 characters in length. The name can contain letters, digits, colons (:), underscores (_), and hyphens (-). The name must start with a letter but cannot start with http:// or https://.


SystemDiskEncryptAlgorithmOptional

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

Property systemDiskEncryptAlgorithm: The encryption algorithm that you want to use to encrypt the system disk.

Valid values:

  • AES-256
  • SM4-128 Default value: AES-256

SystemDiskEncryptedOptional

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

Property systemDiskEncrypted: Specifies whether to encrypt the system disk.

Valid values:

  • true
  • false Default value: false

SystemDiskKmsKeyIdOptional

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

Property systemDiskKmsKeyId: The ID of the KMS key that you want to use to encrypt the system disk.


SystemDiskPerformanceLevelOptional

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

Property systemDiskPerformanceLevel: The performance level of an ESSD.


SystemDiskProvisionedIopsOptional

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

Property systemDiskProvisionedIops: The IOPS metric that is preconfigured for the system disk.

Note: IOPS measures the number of read and write operations that an EBS device can process per second.


SystemDiskSizeOptional

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

Property systemDiskSize: Size of system disk.

Unit is GB.


TagListOptional

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

Property tagList: The tags of an instance in list format.

Do not use with Tags at the same time. You should input the information of the tag with the format of Key-Value list, such as [{"Key":"key1","Value":"value1"}, ...]. At most 20 tags can be specified. Key It can be up to 64 characters in length. Cannot begin with aliyun. Cannot begin with http:// or https://. Cannot be a null string. Value It can be up to 128 characters in length. Cannot begin with aliyun. Cannot begin with http:// or https://. Can be a null string.If less then 20 tags are specified, ros will add a tag(Key: "ros-aliyun-created", Value:"stack") if possible.


TenancyOptional

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

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

Valid values:

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

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.


ZoneIdOptional

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

Property zoneId: The zone ID of the ECS instance.