Skip to content

ScalingGroup

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.ListLaunchTemplateOverridesProperty> 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.ListNotificationConfigurationsProperty> 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.ListServerGroupsProperty> 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 HealthCheckType parameter 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.ListLaunchTemplateOverridesProperty>

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.ListNotificationConfigurationsProperty>

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.ListServerGroupsProperty>

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

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.

sessionRequired

  • Type: com.aliyun.ros.cdk.core.ISynthesisSession

The synthesis session.


addCondition

public void addCondition(RosCondition condition)

conditionRequired

  • Type: com.aliyun.ros.cdk.core.RosCondition

addCount

public void addCount(java.lang.Number OR IResolvable count)

countRequired

  • Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable

addDependency

public void addDependency(Resource resource)

resourceRequired

  • Type: com.aliyun.ros.cdk.core.Resource

addResourceDesc

public void addResourceDesc(java.lang.String desc)

descRequired

  • Type: java.lang.String

applyRemovalPolicy

public void applyRemovalPolicy(RemovalPolicy policy)

policyRequired

  • 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)

nameRequired

  • Type: java.lang.String

setMetadata

public void setMetadata(java.lang.String key, java.lang.Object value)

keyRequired

  • Type: java.lang.String

valueRequired

  • 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.

xRequired

  • 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();