AutoProvisioningGroupProps
Properties for defining a AutoProvisioningGroup.
See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-ecs-autoprovisioninggroup
Initializer
import com.aliyun.ros.cdk.ecs.AutoProvisioningGroupProps;
AutoProvisioningGroupProps.builder()
.totalTargetCapacity(java.lang.String)
.totalTargetCapacity(IResolvable)
// .autoProvisioningGroupName(java.lang.String)
// .autoProvisioningGroupName(IResolvable)
// .autoProvisioningGroupType(java.lang.String)
// .autoProvisioningGroupType(IResolvable)
// .checkExecutionStatus(java.lang.Boolean)
// .checkExecutionStatus(IResolvable)
// .dataDiskConfig(IResolvable)
// .dataDiskConfig(java.util.List<IResolvable)
// .dataDiskConfig(DataDiskConfigProperty>)
// .defaultTargetCapacityType(java.lang.String)
// .defaultTargetCapacityType(IResolvable)
// .description(java.lang.String)
// .description(IResolvable)
// .excessCapacityTerminationPolicy(java.lang.String)
// .excessCapacityTerminationPolicy(IResolvable)
// .launchConfiguration(IResolvable)
// .launchConfiguration(LaunchConfigurationProperty)
// .launchTemplateConfig(IResolvable)
// .launchTemplateConfig(java.util.List<IResolvable)
// .launchTemplateConfig(LaunchTemplateConfigProperty>)
// .launchTemplateId(java.lang.String)
// .launchTemplateId(IResolvable)
// .launchTemplateVersion(java.lang.String)
// .launchTemplateVersion(IResolvable)
// .maxSpotPrice(java.lang.Number)
// .maxSpotPrice(IResolvable)
// .minTargetCapacity(java.lang.String)
// .minTargetCapacity(IResolvable)
// .payAsYouGoAllocationStrategy(java.lang.String)
// .payAsYouGoAllocationStrategy(IResolvable)
// .payAsYouGoTargetCapacity(java.lang.String)
// .payAsYouGoTargetCapacity(IResolvable)
// .resourceGroupId(java.lang.String)
// .resourceGroupId(IResolvable)
// .resourcePoolOptions(IResolvable)
// .resourcePoolOptions(ResourcePoolOptionsProperty)
// .spotAllocationStrategy(java.lang.String)
// .spotAllocationStrategy(IResolvable)
// .spotInstanceInterruptionBehavior(java.lang.String)
// .spotInstanceInterruptionBehavior(IResolvable)
// .spotInstancePoolsToUseCount(java.lang.Number)
// .spotInstancePoolsToUseCount(IResolvable)
// .spotTargetCapacity(java.lang.String)
// .spotTargetCapacity(IResolvable)
// .systemDiskConfig(IResolvable)
// .systemDiskConfig(java.util.List<IResolvable)
// .systemDiskConfig(SystemDiskConfigProperty>)
// .terminateInstances(java.lang.Boolean)
// .terminateInstances(IResolvable)
// .terminateInstancesWithExpiration(java.lang.Boolean)
// .terminateInstancesWithExpiration(IResolvable)
// .validFrom(java.lang.String)
// .validFrom(IResolvable)
// .validUntil(java.lang.String)
// .validUntil(IResolvable)
.build();
Properties
| Name | Type | Description |
|---|---|---|
totalTargetCapacity | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property totalTargetCapacity: The total target capacity of the auto provisioning group. |
autoProvisioningGroupName | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property autoProvisioningGroupName: The name of the auto provisioning group to be created. |
autoProvisioningGroupType | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property autoProvisioningGroupType: The delivery type of the auto provisioning group. |
checkExecutionStatus | java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable | Property checkExecutionStatus: Whether check execution status. |
dataDiskConfig | com.aliyun.ros.cdk.core.IResolvable OR java.util.List | Property dataDiskConfig: List of instance data disk information. |
defaultTargetCapacityType | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property defaultTargetCapacityType: Specifies the billing method for the capacity difference when the sum of PayAsYouGoTargetCapacity and SpotTargetCapacity is less than TotalTargetCapacity. |
description | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property description: The description of the auto provisioning group. |
excessCapacityTerminationPolicy | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property excessCapacityTerminationPolicy: Specifies whether to release instances when the real-time capacity of the auto provisioning group exceeds the target capacity and scale-in is triggered. |
launchConfiguration | com.aliyun.ros.cdk.core.IResolvable OR LaunchConfigurationProperty | Property launchConfiguration:. |
launchTemplateConfig | com.aliyun.ros.cdk.core.IResolvable OR java.util.List | Property launchTemplateConfig:. |
launchTemplateId | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property launchTemplateId: The ID of the instance launch template associated with the auto provisioning group. |
launchTemplateVersion | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property launchTemplateVersion: The version of the launch template associated with the auto provisioning group. |
maxSpotPrice | java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable | Property maxSpotPrice: The global maximum price for preemptible instances in the auto provisioning group. |
minTargetCapacity | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property minTargetCapacity: The target minimum capacity of the elastic supply group. |
payAsYouGoAllocationStrategy | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property payAsYouGoAllocationStrategy: The scale-out policy for pay-as-you-go instances. |
payAsYouGoTargetCapacity | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property payAsYouGoTargetCapacity: The target capacity for pay-as-you-go instances in the auto provisioning group. |
resourceGroupId | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property resourceGroupId: The resource group ID. |
resourcePoolOptions | com.aliyun.ros.cdk.core.IResolvable OR ResourcePoolOptionsProperty | Property resourcePoolOptions: Resource pooling policy to use when creating an instance. |
spotAllocationStrategy | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property spotAllocationStrategy: The strategy for creating spot instances. |
spotInstanceInterruptionBehavior | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property spotInstanceInterruptionBehavior: The behavior when a spot instance is interrupted. |
spotInstancePoolsToUseCount | java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable | Property spotInstancePoolsToUseCount: Takes effect only when SpotAllocationStrategy is set to lowest-price. |
spotTargetCapacity | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property spotTargetCapacity: The target capacity for spot instances in the auto provisioning group. |
systemDiskConfig | com.aliyun.ros.cdk.core.IResolvable OR java.util.List | Property systemDiskConfig: List of instance system disk information. |
terminateInstances | java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable | Property terminateInstances: Specifies whether to release instances in the group when you delete the auto provisioning group. |
terminateInstancesWithExpiration | java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable | Property terminateInstancesWithExpiration: Specifies whether to release instances in the group when the auto provisioning group expires. |
validFrom | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property validFrom: The start time of the auto provisioning group. |
validUntil | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property validUntil: The expiration time of the auto provisioning group. |
totalTargetCapacityRequired
public java.lang.Object getTotalTargetCapacity();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property totalTargetCapacity: The total target capacity of the auto provisioning group.
Valid values: Positive integers. The total capacity must be greater than or equal to the sum of PayAsYouGoTargetCapacity (target capacity for pay-as-you-go instances) and SpotTargetCapacity (target capacity for spot instances).
autoProvisioningGroupNameOptional
public java.lang.Object getAutoProvisioningGroupName();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property autoProvisioningGroupName: The name of the auto provisioning group to be created.
It must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-).
autoProvisioningGroupTypeOptional
public java.lang.Object getAutoProvisioningGroupType();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property autoProvisioningGroupType: The delivery type of the auto provisioning group.
Valid values:
- request: One-time asynchronous delivery. The group delivers the instance cluster only at startup. If scheduling fails, no retry occurs.
- instant: One-time synchronous delivery. The group creates instances synchronously at startup and returns the list of successfully created instances and reasons for failures in the response.
- maintain: Continuous provisioning. The group attempts to deliver the instance cluster at startup and monitors real-time capacity. If the target capacity is not met, it continues creating ECS instances. Default value: maintain.
checkExecutionStatusOptional
public java.lang.Object getCheckExecutionStatus();
- Type: java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable
Property checkExecutionStatus: Whether check execution status.
If set true, ROS will check the state of AutoProvisioningGroup to be fulfilled. Otherwise ROS will regard AutoProvisioningGroup create failed.
dataDiskConfigOptional
public java.lang.Object getDataDiskConfig();
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
DataDiskConfigProperty>
Property dataDiskConfig: List of instance data disk information.
defaultTargetCapacityTypeOptional
public java.lang.Object getDefaultTargetCapacityType();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property defaultTargetCapacityType: Specifies the billing method for the capacity difference when the sum of PayAsYouGoTargetCapacity and SpotTargetCapacity is less than TotalTargetCapacity.
Valid values:
- PayAsYouGo: Pay-as-you-go instances.
- Spot: Spot instances. Default value: Spot.
descriptionOptional
public java.lang.Object getDescription();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property description: The description of the auto provisioning group.
excessCapacityTerminationPolicyOptional
public java.lang.Object getExcessCapacityTerminationPolicy();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property excessCapacityTerminationPolicy: Specifies whether to release instances when the real-time capacity of the auto provisioning group exceeds the target capacity and scale-in is triggered.
Valid values:
- termination: Releases scaled-in instances.
- no-termination: Only removes scaled-in instances from the auto provisioning group. Default value: no-termination.
launchConfigurationOptional
public java.lang.Object getLaunchConfiguration();
- Type: com.aliyun.ros.cdk.core.IResolvable OR LaunchConfigurationProperty
Property launchConfiguration:.
launchTemplateConfigOptional
public java.lang.Object getLaunchTemplateConfig();
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
LaunchTemplateConfigProperty>
Property launchTemplateConfig:.
launchTemplateIdOptional
public java.lang.Object getLaunchTemplateId();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property launchTemplateId: The ID of the instance launch template associated with the auto provisioning group.
You can call the DescribeLaunchTemplates operation to query available instance launch templates. An auto provisioning group can be associated with only one instance launch template. But you can configure multiple extended configurations for the launch template through the LaunchTemplateConfig parameter.
launchTemplateVersionOptional
public java.lang.Object getLaunchTemplateVersion();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property launchTemplateVersion: The version of the launch template associated with the auto provisioning group.
Call DescribeLaunchTemplateVersions to query available launch template versions. Default value: The default version of the launch template.
maxSpotPriceOptional
public java.lang.Object getMaxSpotPrice();
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property maxSpotPrice: The global maximum price for preemptible instances in the auto provisioning group.
If both the MaxSpotPrice and LaunchTemplateConfig.N.MaxPrice parameters are specified, the maximum price is the lower value of the two.
minTargetCapacityOptional
public java.lang.Object getMinTargetCapacity();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property minTargetCapacity: The target minimum capacity of the elastic supply group.
Value range: Positive integer. Once you have set this parameter, note that: Only create one-time synchronous delivery type elastic supply group (AutoProvisioningGroupType = instant), the parameters to take effect. If the inventory of instances in the current domain is less than this value, the call to the interface will fail and no instance will be created. If the instance inventory in the current domain is greater than the parameter value, the instance is created normally according to the other parameter values that have been set.
payAsYouGoAllocationStrategyOptional
public java.lang.Object getPayAsYouGoAllocationStrategy();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property payAsYouGoAllocationStrategy: The scale-out policy for pay-as-you-go instances.
Valid values: lowest-price: The cost optimization policy the auto provisioning group follows to select instance types of the lowest cost to create instances. prioritized: The priority-based policy the auto provisioning group follows to create instances. The priority of an instance type is specified by the LaunchTemplateConfig.N.Priority parameter. Default value: lowest-price
payAsYouGoTargetCapacityOptional
public java.lang.Object getPayAsYouGoTargetCapacity();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property payAsYouGoTargetCapacity: The target capacity for pay-as-you-go instances in the auto provisioning group.
Valid values: Integers less than or equal to the value of TotalTargetCapacity.
resourceGroupIdOptional
public java.lang.Object getResourceGroupId();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property resourceGroupId: The resource group ID.
resourcePoolOptionsOptional
public java.lang.Object getResourcePoolOptions();
- Type: com.aliyun.ros.cdk.core.IResolvable OR ResourcePoolOptionsProperty
Property resourcePoolOptions: Resource pooling policy to use when creating an instance.
Once you have set this parameter, note that: This parameter only applies if a pay-as-you-go instance is created. Only create one-time synchronous delivery type elastic supply group (AutoProvisioningGroupType = instant), the parameters to take effect.
spotAllocationStrategyOptional
public java.lang.Object getSpotAllocationStrategy();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property spotAllocationStrategy: The strategy for creating spot instances.
Valid values:
- lowest-price: Cost optimization strategy. Selects the instance type with the lowest price.
- diversified: Balanced zone distribution strategy. Creates instances across the zones specified in the launch template configurations and distributes them evenly.
- capacity-optimized: Capacity optimization strategy. Selects the optimal instance type and zone based on inventory availability. Default value: lowest-price.
spotInstanceInterruptionBehaviorOptional
public java.lang.Object getSpotInstanceInterruptionBehavior();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property spotInstanceInterruptionBehavior: The behavior when a spot instance is interrupted.
Valid values:
- stop: Stops the instance.
- terminate: Releases the instance. Default value: terminate.
spotInstancePoolsToUseCountOptional
public java.lang.Object getSpotInstancePoolsToUseCount();
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property spotInstancePoolsToUseCount: Takes effect only when SpotAllocationStrategy is set to lowest-price.
Specifies the number of lowest-priced instance types from which the auto provisioning group creates instances. Valid values: Less than the value of N in LaunchTemplateConfig.N.
spotTargetCapacityOptional
public java.lang.Object getSpotTargetCapacity();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property spotTargetCapacity: The target capacity for spot instances in the auto provisioning group.
Valid values: Integers less than or equal to the value of TotalTargetCapacity.
systemDiskConfigOptional
public java.lang.Object getSystemDiskConfig();
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
SystemDiskConfigProperty>
Property systemDiskConfig: List of instance system disk information.
terminateInstancesOptional
public java.lang.Object getTerminateInstances();
- Type: java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable
Property terminateInstances: Specifies whether to release instances in the group when you delete the auto provisioning group.
Valid values:
- true: Releases instances in the group.
- false: Retains instances in the group. Default value: false.
terminateInstancesWithExpirationOptional
public java.lang.Object getTerminateInstancesWithExpiration();
- Type: java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable
Property terminateInstancesWithExpiration: Specifies whether to release instances in the group when the auto provisioning group expires.
Valid values:
- true: Releases instances in the group.
- false: Only removes instances from the auto provisioning group. Default value: false.
validFromOptional
public java.lang.Object getValidFrom();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property validFrom: The start time of the auto provisioning group.
Used together with ValidUntil to define the validity period. Specify the time in ISO 8601 format using UTC+0 time. Format: yyyy-MM-ddTHH:mm:ssZ. Default value: The timestamp when the API call takes effect immediately.
validUntilOptional
public java.lang.Object getValidUntil();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property validUntil: The expiration time of the auto provisioning group.
Used together with ValidFrom to define the validity period. Specify the time in ISO 8601 format using UTC+0 time. Format: yyyy-MM-ddTHH:mm:ssZ. Default value: 2099-12-31T23:59:59Z.