ScalingGroup
- Implements: IScalingGroup
This class encapsulates and extends the ROS resource type ALIYUN::ESS::ScalingGroup.
Initializers
import com.aliyun.ros.cdk.ess.ScalingGroup;
ScalingGroup.Builder.create(Construct scope, java.lang.String id, java.lang.Boolean enableResourcePropertyConstraint)
.maxSize(java.lang.Number)
.maxSize(IResolvable)
.minSize(java.lang.Number)
.minSize(IResolvable)
// .allocationStrategy(java.lang.String)
// .allocationStrategy(IResolvable)
// .azBalance(java.lang.Boolean)
// .azBalance(IResolvable)
// .compensateWithOnDemand(java.lang.Boolean)
// .compensateWithOnDemand(IResolvable)
// .containerGroupId(java.lang.String)
// .containerGroupId(IResolvable)
// .customPolicyArn(java.lang.String)
// .customPolicyArn(IResolvable)
// .dbInstanceIds(IResolvable)
// .dbInstanceIds(java.util.List<java.lang.String)
// .dbInstanceIds(IResolvable>)
// .defaultCooldown(java.lang.Number)
// .defaultCooldown(IResolvable)
// .desiredCapacity(java.lang.Number)
// .desiredCapacity(IResolvable)
// .groupDeletionProtection(java.lang.Boolean)
// .groupDeletionProtection(IResolvable)
// .groupType(java.lang.String)
// .groupType(IResolvable)
// .healthCheckType(java.lang.String)
// .healthCheckType(IResolvable)
// .healthCheckTypes(IResolvable)
// .healthCheckTypes(java.util.List<java.lang.String)
// .healthCheckTypes(IResolvable>)
// .instanceId(java.lang.String)
// .instanceId(IResolvable)
// .launchTemplateId(java.lang.String)
// .launchTemplateId(IResolvable)
// .launchTemplateOverrides(IResolvable)
// .launchTemplateOverrides(java.util.List<IResolvable)
// .launchTemplateOverrides(LaunchTemplateOverridesProperty>)
// .launchTemplateVersion(java.lang.String)
// .launchTemplateVersion(IResolvable)
// .loadBalancerIds(IResolvable)
// .loadBalancerIds(java.util.List<java.lang.String)
// .loadBalancerIds(IResolvable>)
// .maxInstanceLifetime(java.lang.Number)
// .maxInstanceLifetime(IResolvable)
// .multiAzPolicy(java.lang.String)
// .multiAzPolicy(IResolvable)
// .notificationConfigurations(IResolvable)
// .notificationConfigurations(java.util.List<IResolvable)
// .notificationConfigurations(NotificationConfigurationsProperty>)
// .onDemandBaseCapacity(java.lang.Number)
// .onDemandBaseCapacity(IResolvable)
// .onDemandPercentageAboveBaseCapacity(java.lang.Number)
// .onDemandPercentageAboveBaseCapacity(IResolvable)
// .protectedInstances(IResolvable)
// .protectedInstances(java.util.List<java.lang.String)
// .protectedInstances(IResolvable>)
// .removalPolicys(IResolvable)
// .removalPolicys(java.util.List<java.lang.String)
// .removalPolicys(IResolvable>)
// .resourceGroupId(java.lang.String)
// .resourceGroupId(IResolvable)
// .scalingGroupName(java.lang.String)
// .scalingGroupName(IResolvable)
// .scalingPolicy(java.lang.String)
// .scalingPolicy(IResolvable)
// .serverGroups(IResolvable)
// .serverGroups(java.util.List<IResolvable)
// .serverGroups(ServerGroupsProperty>)
// .spotAllocationStrategy(java.lang.String)
// .spotAllocationStrategy(IResolvable)
// .spotInstancePools(java.lang.Number)
// .spotInstancePools(IResolvable)
// .spotInstanceRemedy(java.lang.Boolean)
// .spotInstanceRemedy(IResolvable)
// .standbyInstances(IResolvable)
// .standbyInstances(java.util.List<java.lang.String)
// .standbyInstances(IResolvable>)
// .tags(java.util.List<TagsProperty>)
// .vSwitchId(java.lang.String)
// .vSwitchId(IResolvable)
// .vSwitchIds(IResolvable)
// .vSwitchIds(java.util.List<java.lang.String)
// .vSwitchIds(IResolvable>)
.build();
| Name | Type | Description |
|---|---|---|
scope | com.aliyun.ros.cdk.core.Construct | No description. |
id | java.lang.String | No description. |
enableResourcePropertyConstraint | java.lang.Boolean | No description. |
maxSize | java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable | Property maxSize: The maximum number of ECS instances that can be contained in the scaling group. |
minSize | java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable | Property minSize: Minimum number of ECS instances in the scaling group. |
allocationStrategy | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property allocationStrategy: The allocation policy of instances. |
azBalance | java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable | Property azBalance: Specifies whether to evenly distribute instances in the scaling group across multiple zones. |
compensateWithOnDemand | java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable | Property compensateWithOnDemand: Specifies whether to automatically create pay-as-you-go instances to meet the requirements on the number of instances when the expected capacity of preemptible instances cannot be fulfilled due to reasons such as high prices or insufficient resources. |
containerGroupId | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property containerGroupId: The ID of the elastic container instance. |
customPolicyArn | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property customPolicyArn: The Alibaba Cloud Resource Name (ARN) of the custom scale-in policy (Function). |
dbInstanceIds | com.aliyun.ros.cdk.core.IResolvable OR java.util.List | Property dbInstanceIds: The IDs of the ApsaraDB RDS instances that you want to associate with the scaling group. |
defaultCooldown | java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable | Property defaultCooldown: Default cool-down time (in seconds) of the scaling group. |
desiredCapacity | java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable | Property desiredCapacity: The expected number of ECS instances in a scaling group. |
groupDeletionProtection | java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable | Property groupDeletionProtection: Whether to enable deletion protection for scaling group. |
groupType | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property groupType: The type of instances that are managed by the scaling group. |
healthCheckType | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property healthCheckType: The health check type. |
healthCheckTypes | com.aliyun.ros.cdk.core.IResolvable OR java.util.List | Property healthCheckTypes: The health check method for the scaling group. |
instanceId | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property instanceId: The ID of the ECS instance from which the scaling group obtains configuration information of the specified instance. |
launchTemplateId | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property launchTemplateId: The ID of the instance launch template from which the scaling group obtains launch configurations. |
launchTemplateOverrides | com.aliyun.ros.cdk.core.IResolvable OR java.util.List | Property launchTemplateOverrides: You can specify up to 10 overrides. |
launchTemplateVersion | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property launchTemplateVersion: The version of the instance launch template. |
loadBalancerIds | com.aliyun.ros.cdk.core.IResolvable OR java.util.List | Property loadBalancerIds: The IDs of the CLB instances that you want to associate with the scaling group. |
maxInstanceLifetime | java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable | Property maxInstanceLifetime: The maximum life span of an ECS instance in the scaling group. |
multiAzPolicy | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property multiAzPolicy: The scaling policy for the multi-zone scaling group that contains ECS instances. |
notificationConfigurations | com.aliyun.ros.cdk.core.IResolvable OR java.util.List | Property notificationConfigurations: When a scaling event occurs in a scaling group, ESS will send a notification to Cloud Monitor or MNS. |
onDemandBaseCapacity | java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable | Property onDemandBaseCapacity: The minimum number of pay-as-you-go instances required in the scaling group. |
onDemandPercentageAboveBaseCapacity | java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable | Property onDemandPercentageAboveBaseCapacity: The percentage of pay-as-you-go instances that can be created when instances are added to the scaling group. |
protectedInstances | com.aliyun.ros.cdk.core.IResolvable OR java.util.List | Property protectedInstances: ECS instances of protected mode in the scaling group. |
removalPolicys | com.aliyun.ros.cdk.core.IResolvable OR java.util.List | Property removalPolicys: Policy for removing ECS instances from the scaling group. |
resourceGroupId | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property resourceGroupId: Resource group id. |
scalingGroupName | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property scalingGroupName: The name of the scaling group. |
scalingPolicy | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property scalingPolicy: The reclaim mode of the scaling group. |
serverGroups | com.aliyun.ros.cdk.core.IResolvable OR java.util.List | Property serverGroups: The config of server group. |
spotAllocationStrategy | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property spotAllocationStrategy: The allocation policy of preemptible instances. |
spotInstancePools | java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable | Property spotInstancePools: The number of instance types that are available. |
spotInstanceRemedy | java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable | Property spotInstanceRemedy: Specifies whether to supplement preemptible instances. |
standbyInstances | com.aliyun.ros.cdk.core.IResolvable OR java.util.List | Property standbyInstances: ECS instances of standby mode in the scaling group. |
tags | java.util.List<TagsProperty> | Property tags: Tags to attach to instance. |
vSwitchId | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property vSwitchId: The ID of the vSwitch. |
vSwitchIds | com.aliyun.ros.cdk.core.IResolvable OR java.util.List | Property vSwitchIds: The IDs of vSwitches. |
scopeRequired
- Type: com.aliyun.ros.cdk.core.Construct
idRequired
- Type: java.lang.String
enableResourcePropertyConstraintOptional
- Type: java.lang.Boolean
maxSizeRequired
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property maxSize: The maximum number of ECS instances that can be contained in the scaling group.
If the number of ECS instances in the scaling group is greater than the value of the MaxSize parameter, Auto Scaling automatically removes ECS instances until the number of instances in the scaling group is equal to the maximum number. The value range of the MaxSize parameter varies based on the instance quota. You can go to Quota Center to check the maximum number of instances that a scaling group can contain. For example, if a scaling group can contain up to 2,000 instances, the value range of the MaxSize parameter is 0 to 2000.
minSizeRequired
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property minSize: Minimum number of ECS instances in the scaling group.
Value range: [0, 2000].
allocationStrategyOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property allocationStrategy: The allocation policy of instances.
Auto Scaling selects instance types based on the allocation policy to create the required number of instances. The policy can be applied to pay-as-you-go instances and preemptible instances. This parameter takes effect only if you set MultiAZPolicy to COMPOSABLE. Valid values:
- priority: Auto Scaling selects instance types based on the specified order to create the required number of instances.
- lowestPrice: Auto Scaling selects instance types that have the lowest unit price of vCPUs to create the required number of instances. Default value: priority.
azBalanceOptional
- Type: java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable
Property azBalance: Specifies whether to evenly distribute instances in the scaling group across multiple zones.
This parameter takes effect only if you set MultiAZPolicy to COMPOSABLE. Valid values:
- true
- false Default value: false.
compensateWithOnDemandOptional
- Type: java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable
Property compensateWithOnDemand: Specifies whether to automatically create pay-as-you-go instances to meet the requirements on the number of instances when the expected capacity of preemptible instances cannot be fulfilled due to reasons such as high prices or insufficient resources.
This parameter takes effect only when MultiAZPolicy is set to COST_OPTIMIZED. Default value: true.
containerGroupIdOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property containerGroupId: The ID of the elastic container instance.
customPolicyArnOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property customPolicyArn: The Alibaba Cloud Resource Name (ARN) of the custom scale-in policy (Function).
This parameter takes effect only if you specify CustomPolicy as the value of first item of RemovalPolicys.
dbInstanceIdsOptional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
Property dbInstanceIds: The IDs of the ApsaraDB RDS instances that you want to associate with the scaling group.
The value can be a JSON array that contains multiple ApsaraDB RDS instance IDs. Separate multiple IDs with commas (,). You can associate only a limited number of ApsaraDB RDS instances with a scaling group. Go to Quota Center to check the maximum number of ApsaraDB RDS instances that you can associate with a scaling group.
defaultCooldownOptional
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property defaultCooldown: Default cool-down time (in seconds) of the scaling group.
Value range: [0, 86400]. The default value is 300s.
desiredCapacityOptional
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property desiredCapacity: The expected number of ECS instances in a scaling group.
The scaling group automatically keeps the number of ECS instances as expected. The number of ECS instances cannot be greater than the value of MaxSize and cannot be less than the value of MinSize.
groupDeletionProtectionOptional
- Type: java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable
Property groupDeletionProtection: Whether to enable deletion protection for scaling group.
Default to False.
groupTypeOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property groupType: The type of instances that are managed by the scaling group.
Valid values: ECS ECI Default value: ECS.
healthCheckTypeOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property healthCheckType: The health check type.
Allow values is "ECS" and "NONE", default to "ECS".
healthCheckTypesOptional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
Property healthCheckTypes: The health check method for the scaling group.
You can specify multiple values for this parameter to enable multiple health check options. If the
HealthCheckTypeparameter is set, this parameter is ignored.
instanceIdOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property instanceId: The ID of the ECS instance from which the scaling group obtains configuration information of the specified instance.
launchTemplateIdOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property launchTemplateId: The ID of the instance launch template from which the scaling group obtains launch configurations.
launchTemplateOverridesOptional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
LaunchTemplateOverridesProperty>
Property launchTemplateOverrides: You can specify up to 10 overrides.
Note: This parameter takes effect only if you specify LaunchTemplateId.
launchTemplateVersionOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property launchTemplateVersion: The version of the instance launch template.
Valid values: A fixed template version numbe. Default: The default template version is always used. Latest: The latest template version is always used.
loadBalancerIdsOptional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
Property loadBalancerIds: The IDs of the CLB instances that you want to associate with the scaling group.
The value can be a JSON array that contains multiple CLB instance IDs. Separate multiple IDs with commas (,). You can associate only a limited number of CLB instances with a scaling group. Go to Quota Center to check the maximum number of CLB instances that you can associate with a scaling group.
maxInstanceLifetimeOptional
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property maxInstanceLifetime: The maximum life span of an ECS instance in the scaling group.
Unit: seconds. Valid values: 86400 to the value of Integer.maxValue. Default value: null. Note: This parameter is unavailable for scaling groups of the ECI type or scaling groups whose ScalingPolicy is set to recycle.
multiAzPolicyOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property multiAzPolicy: The scaling policy for the multi-zone scaling group that contains ECS instances.
Valid values:
- PRIORITY: Auto Scaling scales ECS instances based on the priority of the vSwitch that is specified by the VSwitchIds.N parameter. Auto Scaling preferentially scales instances in the zone where the vSwitch that has the highest priority resides. If the scaling fails, Auto Scaling scales instances in the zone where the vSwitch that has the next highest priority resides.
- COST_OPTIMIZED: Auto Scaling preferentially creates ECS instances whose vCPUs are provided at the lowest price and removes ECS instances whose vCPUs are provided at the highest price. If preemptible instance types are specified in the scaling configuration, Auto Scaling preferentially creates preemptible instances. You can use the CompensateWithOnDemand parameter to specify whether to automatically create pay-as-you-go instances when preemptible instances cannot be created due to insufficient resources. Note The COST_OPTIMIZED **setting takes effect only when you specify multiple instance types or when you specify at least one preemptible instance type.
- BALANCE: Auto Scaling evenly distributes ECS instances across zones that are specified for the scaling group. If ECS instances are unevenly distributed across zones due to insufficient resources, you can call the RebalanceInstance operation to evenly distribute the instances across the zones.
- COMPOSABLE: You can combine the preceding policies based on your business requirements. Default value: PRIORITY.
notificationConfigurationsOptional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
NotificationConfigurationsProperty>
Property notificationConfigurations: When a scaling event occurs in a scaling group, ESS will send a notification to Cloud Monitor or MNS.
onDemandBaseCapacityOptional
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property onDemandBaseCapacity: The minimum number of pay-as-you-go instances required in the scaling group.
Valid values: 0 to 1000. If the number of pay-as-you-go instances is less than the value of this parameter, Auto Scaling preferentially creates pay-as-you-go instances. If you set MultiAZPolicy to COMPOSABLE Policy, the default value of this parameter is 0.
onDemandPercentageAboveBaseCapacityOptional
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property onDemandPercentageAboveBaseCapacity: The percentage of pay-as-you-go instances that can be created when instances are added to the scaling group.
This parameter takes effect when the number of pay-as-you-go instances reaches the value for the OnDemandBaseCapacity parameter. Valid values: 0 to 100. If you set MultiAZPolicy to COMPOSABLE, the default value of this parameter is 100.
protectedInstancesOptional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
Property protectedInstances: ECS instances of protected mode in the scaling group.
removalPolicysOptional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
Property removalPolicys: Policy for removing ECS instances from the scaling group.
Optional values:
- OldestInstance: removes the first ECS instance attached to the scaling group.
- NewestInstance: removes the first ECS instance attached to the scaling group.
- OldestScalingConfiguration: removes the ECS instance with the oldest scaling configuration.
- CustomPolicy: removes ECS instances based on the custom scale-in policy (Function). You can enter up to three removal policies. You cannot set any item of RemovalPolicys to the same value. The scaling configuration source specified by the OldestScalingConfiguration setting can be a scaling configuration or a launch template. You can specify CustomPolicy only as the value of first item of RemovalPolicys. If you set first item of RemovalPolicys to CustomPolicy, you must also specify CustomPolicyARN. Note: The removal of ECS instances from a scaling group is also affected by the value of MultiAZPolicy.
resourceGroupIdOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property resourceGroupId: Resource group id.
scalingGroupNameOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property scalingGroupName: The name of the scaling group.
The name of each scaling group must be unique in a region. The name must be 2 to 64 characters in length, and can contain letters, digits, underscores (_), hyphens (-), and periods (.). The name must start with a letter or a digit. If you do not specify this parameter, the value of the ScalingGroupId parameter is used.
scalingPolicyOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property scalingPolicy: The reclaim mode of the scaling group.
Valid values: recycle release forcerelease ScalingPolicy specifies the reclaim modes of scaling groups, but the policy that is used to remove ECS instances from scaling groups is determined by the RemovePolicy parameter of the RemoveInstances operation.
serverGroupsOptional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
ServerGroupsProperty>
Property serverGroups: The config of server group.
spotAllocationStrategyOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property spotAllocationStrategy: The allocation policy of preemptible instances.
You can use this parameter to individually specify the allocation policy of preemptible instances. This parameter takes effect only if you set MultiAZPolicy to COMPOSABLE. Valid values:
- priority: Auto Scaling selects instance types based on the specified order to create the required number of preemptible instances.
- lowestPrice: Auto Scaling selects instance types that have the lowest unit price of vCPUs to create the required number of preemptible instances. Default value: priority.
spotInstancePoolsOptional
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property spotInstancePools: The number of instance types that are available.
The system creates preemptible instances of multiple instance types that are available at the lowest cost in the scaling group. Valid values: 1 to 10. If you set MultiAZPolicy to COMPOSABLE, the default value of this parameter is 2.
spotInstanceRemedyOptional
- Type: java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable
Property spotInstanceRemedy: Specifies whether to supplement preemptible instances.
If this parameter is set to true, Auto Scaling attempts to create an instance to replace a preemptible instance when Auto Scaling receives a system message which indicates that the preemptible instance is to be reclaimed.
standbyInstancesOptional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
Property standbyInstances: ECS instances of standby mode in the scaling group.
tagsOptional
- Type: java.util.List<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.
vSwitchIdOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property vSwitchId: The ID of the vSwitch.
If you specify the VSwitchId parameter, the network type of the scaling group is VPC.
vSwitchIdsOptional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
Property vSwitchIds: The IDs of vSwitches.
If you specify the VSwitchIds.N parameter, the VSwitchId parameter is ignored. If you specify the VSwitchIds.N parameter, the network type of the scaling group is VPC. If you specify multiple vSwitches, take note of the following items:
- The vSwitches must belong to the same VPC.
- The vSwitches can belong to different zones.
- The vSwitches are sorted in ascending order of priority. The first vSwitch that is specified by the VSwitchIds.N parameter has the highest priority. If Auto Scaling fails to create ECS instances in the zone where the vSwitch that has the highest priority resides, Auto Scaling creates ECS instances in the zone where the vSwitch that has the next highest priority resides.
Methods
| Name | Description |
|---|---|
toString | Returns a string representation of this construct. |
synthesize | Allows this construct to emit artifacts into the cloud assembly during synthesis. |
addCondition | No description. |
addCount | No description. |
addDependency | No description. |
addResourceDesc | No description. |
applyRemovalPolicy | No description. |
fetchCondition | No description. |
fetchDependency | No description. |
fetchResourceDesc | No description. |
getAtt | No description. |
setMetadata | No description. |
toString
public java.lang.String toString()
Returns a string representation of this construct.
synthesize
public void synthesize(ISynthesisSession session)
Allows this construct to emit artifacts into the cloud assembly during synthesis.
This method is usually implemented by framework-level constructs such as Stack and Asset as they participate in synthesizing the cloud assembly.
- Type: com.aliyun.ros.cdk.core.ISynthesisSession
The synthesis session.
addCondition
public void addCondition(RosCondition condition)
- Type: com.aliyun.ros.cdk.core.RosCondition
addCount
public void addCount(java.lang.Number OR IResolvable count)
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
addDependency
public void addDependency(Resource resource)
- Type: com.aliyun.ros.cdk.core.Resource
addResourceDesc
public void addResourceDesc(java.lang.String desc)
- Type: java.lang.String
applyRemovalPolicy
public void applyRemovalPolicy(RemovalPolicy policy)
- Type: com.aliyun.ros.cdk.core.RemovalPolicy
fetchCondition
public RosCondition fetchCondition()
fetchDependency
public java.util.List<java.lang.String> fetchDependency()
fetchResourceDesc
public java.lang.String fetchResourceDesc()
getAtt
public IResolvable getAtt(java.lang.String name)
- Type: java.lang.String
setMetadata
public void setMetadata(java.lang.String key, java.lang.Object value)
- Type: java.lang.String
- Type: java.lang.Object
Static Functions
| Name | Description |
|---|---|
isConstruct | Return whether the given object is a Construct. |
isConstruct
import com.aliyun.ros.cdk.ess.ScalingGroup;
ScalingGroup.isConstruct(java.lang.Object x)
Return whether the given object is a Construct.
- Type: java.lang.Object
Properties
| Name | Type | Description |
|---|---|---|
node | com.aliyun.ros.cdk.core.ConstructNode | The construct tree node associated with this construct. |
env | com.aliyun.ros.cdk.core.IResourceEnvironment | The environment this resource belongs to. |
ref | java.lang.String | No description. |
stack | com.aliyun.ros.cdk.core.Stack | The stack in which this resource is defined. |
resource | com.aliyun.ros.cdk.core.RosResource | No description. |
attrArn | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Attribute Arn: The Alibaba Cloud Resource Name (ARN). |
attrScalingGroupId | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Attribute ScalingGroupId: Scaling group Id. |
attrScalingGroupName | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Attribute ScalingGroupName: Scaling group name. |
props | ScalingGroupProps | No description. |
nodeRequired
public ConstructNode getNode();
- Type: com.aliyun.ros.cdk.core.ConstructNode
The construct tree node associated with this construct.
envRequired
public IResourceEnvironment getEnv();
- Type: com.aliyun.ros.cdk.core.IResourceEnvironment
The environment this resource belongs to.
For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into.
refRequired
public java.lang.String getRef();
- Type: java.lang.String
stackRequired
public Stack getStack();
- Type: com.aliyun.ros.cdk.core.Stack
The stack in which this resource is defined.
resourceOptional
public RosResource getResource();
- Type: com.aliyun.ros.cdk.core.RosResource
attrArnRequired
public java.lang.Object getAttrArn();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Attribute Arn: The Alibaba Cloud Resource Name (ARN).
attrScalingGroupIdRequired
public java.lang.Object getAttrScalingGroupId();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Attribute ScalingGroupId: Scaling group Id.
attrScalingGroupNameRequired
public java.lang.Object getAttrScalingGroupName();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Attribute ScalingGroupName: Scaling group name.
propsRequired
public ScalingGroupProps getProps();
- Type: ScalingGroupProps