All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.tencentcloudapi.as.v20180419.models.ModifyAutoScalingGroupRequest Maven / Gradle / Ivy

There is a newer version: 3.1.1077
Show newest version
/*
 * Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *    http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package com.tencentcloudapi.as.v20180419.models;

import com.tencentcloudapi.common.AbstractModel;
import com.google.gson.annotations.SerializedName;
import com.google.gson.annotations.Expose;
import java.util.HashMap;

public class ModifyAutoScalingGroupRequest extends AbstractModel{

    /**
    * 伸缩组ID
    */
    @SerializedName("AutoScalingGroupId")
    @Expose
    private String AutoScalingGroupId;

    /**
    * 伸缩组名称,在您账号中必须唯一。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超55个字节。
    */
    @SerializedName("AutoScalingGroupName")
    @Expose
    private String AutoScalingGroupName;

    /**
    * 默认冷却时间,单位秒,默认值为300
    */
    @SerializedName("DefaultCooldown")
    @Expose
    private Long DefaultCooldown;

    /**
    * 期望实例数,大小介于最小实例数和最大实例数之间
    */
    @SerializedName("DesiredCapacity")
    @Expose
    private Long DesiredCapacity;

    /**
    * 启动配置ID
    */
    @SerializedName("LaunchConfigurationId")
    @Expose
    private String LaunchConfigurationId;

    /**
    * 最大实例数,取值范围为0-2000。
    */
    @SerializedName("MaxSize")
    @Expose
    private Long MaxSize;

    /**
    * 最小实例数,取值范围为0-2000。
    */
    @SerializedName("MinSize")
    @Expose
    private Long MinSize;

    /**
    * 项目ID
    */
    @SerializedName("ProjectId")
    @Expose
    private Long ProjectId;

    /**
    * 子网ID列表
    */
    @SerializedName("SubnetIds")
    @Expose
    private String [] SubnetIds;

    /**
    * 销毁策略,目前长度上限为1。取值包括 OLDEST_INSTANCE 和 NEWEST_INSTANCE。

  • OLDEST_INSTANCE 优先销毁伸缩组中最旧的实例。
  • NEWEST_INSTANCE,优先销毁伸缩组中最新的实例。 */ @SerializedName("TerminationPolicies") @Expose private String [] TerminationPolicies; /** * VPC ID,基础网络则填空字符串。修改为具体VPC ID时,需指定相应的SubnetIds;修改为基础网络时,需指定相应的Zones。 */ @SerializedName("VpcId") @Expose private String VpcId; /** * 可用区列表 */ @SerializedName("Zones") @Expose private String [] Zones; /** * 重试策略,取值包括 IMMEDIATE_RETRY、 INCREMENTAL_INTERVALS、NO_RETRY,默认取值为 IMMEDIATE_RETRY。
  • IMMEDIATE_RETRY,立即重试,在较短时间内快速重试,连续失败超过一定次数(5次)后不再重试。
  • INCREMENTAL_INTERVALS,间隔递增重试,随着连续失败次数的增加,重试间隔逐渐增大,重试间隔从秒级到1天不等。
  • NO_RETRY,不进行重试,直到再次收到用户调用或者告警信息后才会重试。 */ @SerializedName("RetryPolicy") @Expose private String RetryPolicy; /** * 可用区校验策略,取值包括 ALL 和 ANY,默认取值为ANY。在伸缩组实际变更资源相关字段时(启动配置、可用区、子网)发挥作用。
  • ALL,所有可用区(Zone)或子网(SubnetId)都可用则通过校验,否则校验报错。
  • ANY,存在任何一个可用区(Zone)或子网(SubnetId)可用则通过校验,否则校验报错。 可用区或子网不可用的常见原因包括该可用区CVM实例类型售罄、该可用区CBS云盘售罄、该可用区配额不足、该子网IP不足等。 如果 Zones/SubnetIds 中可用区或者子网不存在,则无论 ZonesCheckPolicy 采用何种取值,都会校验报错。 */ @SerializedName("ZonesCheckPolicy") @Expose private String ZonesCheckPolicy; /** * 服务设置,包括云监控不健康替换等服务设置。 */ @SerializedName("ServiceSettings") @Expose private ServiceSettings ServiceSettings; /** * 实例具有IPv6地址数量的配置,取值包括0、1。 */ @SerializedName("Ipv6AddressCount") @Expose private Long Ipv6AddressCount; /** * 多可用区/子网策略,取值包括 PRIORITY 和 EQUALITY,默认为 PRIORITY。
  • PRIORITY,按照可用区/子网列表的顺序,作为优先级来尝试创建实例,如果优先级最高的可用区/子网可以创建成功,则总在该可用区/子网创建。
  • EQUALITY:扩容出的实例会打散到多个可用区/子网,保证扩容后的各个可用区/子网实例数相对均衡。 与本策略相关的注意点:
  • 当伸缩组为基础网络时,本策略适用于多可用区;当伸缩组为VPC网络时,本策略适用于多子网,此时不再考虑可用区因素,例如四个子网ABCD,其中ABC处于可用区1,D处于可用区2,此时考虑子网ABCD进行排序,而不考虑可用区1、2。
  • 本策略适用于多可用区/子网,不适用于启动配置的多机型。多机型按照优先级策略进行选择。
  • 按照 PRIORITY 策略创建实例时,先保证多机型的策略,后保证多可用区/子网的策略。例如多机型A、B,多子网1、2、3,会按照A1、A2、A3、B1、B2、B3 进行尝试,如果A1售罄,会尝试A2(而非B1)。 */ @SerializedName("MultiZoneSubnetPolicy") @Expose private String MultiZoneSubnetPolicy; /** * 伸缩组实例健康检查类型,取值如下:
  • CVM:根据实例网络状态判断实例是否处于不健康状态,不健康的网络状态即发生实例 PING 不可达事件,详细判断标准可参考[实例健康检查](https://cloud.tencent.com/document/product/377/8553)
  • CLB:根据 CLB 的健康检查状态判断实例是否处于不健康状态,CLB健康检查原理可参考[健康检查](https://cloud.tencent.com/document/product/214/6097) */ @SerializedName("HealthCheckType") @Expose private String HealthCheckType; /** * CLB健康检查宽限期。 */ @SerializedName("LoadBalancerHealthCheckGracePeriod") @Expose private Long LoadBalancerHealthCheckGracePeriod; /** * 实例分配策略,取值包括 LAUNCH_CONFIGURATION 和 SPOT_MIXED。
  • LAUNCH_CONFIGURATION,代表传统的按照启动配置模式。
  • SPOT_MIXED,代表竞价混合模式。目前仅支持启动配置为按量计费模式时使用混合模式,混合模式下,伸缩组将根据设定扩容按量或竞价机型。使用混合模式时,关联的启动配置的计费类型不可被修改。 */ @SerializedName("InstanceAllocationPolicy") @Expose private String InstanceAllocationPolicy; /** * 竞价混合模式下,各计费类型实例的分配策略。 仅当 InstanceAllocationPolicy 取 SPOT_MIXED 时可用。 */ @SerializedName("SpotMixedAllocationPolicy") @Expose private SpotMixedAllocationPolicy SpotMixedAllocationPolicy; /** * 容量重平衡功能,仅对伸缩组内的竞价实例有效。取值范围:
  • TRUE,开启该功能,当伸缩组内的竞价实例即将被竞价实例服务自动回收前,AS 主动发起竞价实例销毁流程,如果有配置过缩容 hook,则销毁前 hook 会生效。销毁流程启动后,AS 会异步开启一个扩容活动,用于补齐期望实例数。
  • FALSE,不开启该功能,则 AS 等待竞价实例被销毁后才会去扩容补齐伸缩组期望实例数。 */ @SerializedName("CapacityRebalance") @Expose private Boolean CapacityRebalance; /** * Get 伸缩组ID * @return AutoScalingGroupId 伸缩组ID */ public String getAutoScalingGroupId() { return this.AutoScalingGroupId; } /** * Set 伸缩组ID * @param AutoScalingGroupId 伸缩组ID */ public void setAutoScalingGroupId(String AutoScalingGroupId) { this.AutoScalingGroupId = AutoScalingGroupId; } /** * Get 伸缩组名称,在您账号中必须唯一。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超55个字节。 * @return AutoScalingGroupName 伸缩组名称,在您账号中必须唯一。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超55个字节。 */ public String getAutoScalingGroupName() { return this.AutoScalingGroupName; } /** * Set 伸缩组名称,在您账号中必须唯一。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超55个字节。 * @param AutoScalingGroupName 伸缩组名称,在您账号中必须唯一。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超55个字节。 */ public void setAutoScalingGroupName(String AutoScalingGroupName) { this.AutoScalingGroupName = AutoScalingGroupName; } /** * Get 默认冷却时间,单位秒,默认值为300 * @return DefaultCooldown 默认冷却时间,单位秒,默认值为300 */ public Long getDefaultCooldown() { return this.DefaultCooldown; } /** * Set 默认冷却时间,单位秒,默认值为300 * @param DefaultCooldown 默认冷却时间,单位秒,默认值为300 */ public void setDefaultCooldown(Long DefaultCooldown) { this.DefaultCooldown = DefaultCooldown; } /** * Get 期望实例数,大小介于最小实例数和最大实例数之间 * @return DesiredCapacity 期望实例数,大小介于最小实例数和最大实例数之间 */ public Long getDesiredCapacity() { return this.DesiredCapacity; } /** * Set 期望实例数,大小介于最小实例数和最大实例数之间 * @param DesiredCapacity 期望实例数,大小介于最小实例数和最大实例数之间 */ public void setDesiredCapacity(Long DesiredCapacity) { this.DesiredCapacity = DesiredCapacity; } /** * Get 启动配置ID * @return LaunchConfigurationId 启动配置ID */ public String getLaunchConfigurationId() { return this.LaunchConfigurationId; } /** * Set 启动配置ID * @param LaunchConfigurationId 启动配置ID */ public void setLaunchConfigurationId(String LaunchConfigurationId) { this.LaunchConfigurationId = LaunchConfigurationId; } /** * Get 最大实例数,取值范围为0-2000。 * @return MaxSize 最大实例数,取值范围为0-2000。 */ public Long getMaxSize() { return this.MaxSize; } /** * Set 最大实例数,取值范围为0-2000。 * @param MaxSize 最大实例数,取值范围为0-2000。 */ public void setMaxSize(Long MaxSize) { this.MaxSize = MaxSize; } /** * Get 最小实例数,取值范围为0-2000。 * @return MinSize 最小实例数,取值范围为0-2000。 */ public Long getMinSize() { return this.MinSize; } /** * Set 最小实例数,取值范围为0-2000。 * @param MinSize 最小实例数,取值范围为0-2000。 */ public void setMinSize(Long MinSize) { this.MinSize = MinSize; } /** * Get 项目ID * @return ProjectId 项目ID */ public Long getProjectId() { return this.ProjectId; } /** * Set 项目ID * @param ProjectId 项目ID */ public void setProjectId(Long ProjectId) { this.ProjectId = ProjectId; } /** * Get 子网ID列表 * @return SubnetIds 子网ID列表 */ public String [] getSubnetIds() { return this.SubnetIds; } /** * Set 子网ID列表 * @param SubnetIds 子网ID列表 */ public void setSubnetIds(String [] SubnetIds) { this.SubnetIds = SubnetIds; } /** * Get 销毁策略,目前长度上限为1。取值包括 OLDEST_INSTANCE 和 NEWEST_INSTANCE。
  • OLDEST_INSTANCE 优先销毁伸缩组中最旧的实例。
  • NEWEST_INSTANCE,优先销毁伸缩组中最新的实例。 * @return TerminationPolicies 销毁策略,目前长度上限为1。取值包括 OLDEST_INSTANCE 和 NEWEST_INSTANCE。
  • OLDEST_INSTANCE 优先销毁伸缩组中最旧的实例。
  • NEWEST_INSTANCE,优先销毁伸缩组中最新的实例。 */ public String [] getTerminationPolicies() { return this.TerminationPolicies; } /** * Set 销毁策略,目前长度上限为1。取值包括 OLDEST_INSTANCE 和 NEWEST_INSTANCE。
  • OLDEST_INSTANCE 优先销毁伸缩组中最旧的实例。
  • NEWEST_INSTANCE,优先销毁伸缩组中最新的实例。 * @param TerminationPolicies 销毁策略,目前长度上限为1。取值包括 OLDEST_INSTANCE 和 NEWEST_INSTANCE。
  • OLDEST_INSTANCE 优先销毁伸缩组中最旧的实例。
  • NEWEST_INSTANCE,优先销毁伸缩组中最新的实例。 */ public void setTerminationPolicies(String [] TerminationPolicies) { this.TerminationPolicies = TerminationPolicies; } /** * Get VPC ID,基础网络则填空字符串。修改为具体VPC ID时,需指定相应的SubnetIds;修改为基础网络时,需指定相应的Zones。 * @return VpcId VPC ID,基础网络则填空字符串。修改为具体VPC ID时,需指定相应的SubnetIds;修改为基础网络时,需指定相应的Zones。 */ public String getVpcId() { return this.VpcId; } /** * Set VPC ID,基础网络则填空字符串。修改为具体VPC ID时,需指定相应的SubnetIds;修改为基础网络时,需指定相应的Zones。 * @param VpcId VPC ID,基础网络则填空字符串。修改为具体VPC ID时,需指定相应的SubnetIds;修改为基础网络时,需指定相应的Zones。 */ public void setVpcId(String VpcId) { this.VpcId = VpcId; } /** * Get 可用区列表 * @return Zones 可用区列表 */ public String [] getZones() { return this.Zones; } /** * Set 可用区列表 * @param Zones 可用区列表 */ public void setZones(String [] Zones) { this.Zones = Zones; } /** * Get 重试策略,取值包括 IMMEDIATE_RETRY、 INCREMENTAL_INTERVALS、NO_RETRY,默认取值为 IMMEDIATE_RETRY。
  • IMMEDIATE_RETRY,立即重试,在较短时间内快速重试,连续失败超过一定次数(5次)后不再重试。
  • INCREMENTAL_INTERVALS,间隔递增重试,随着连续失败次数的增加,重试间隔逐渐增大,重试间隔从秒级到1天不等。
  • NO_RETRY,不进行重试,直到再次收到用户调用或者告警信息后才会重试。 * @return RetryPolicy 重试策略,取值包括 IMMEDIATE_RETRY、 INCREMENTAL_INTERVALS、NO_RETRY,默认取值为 IMMEDIATE_RETRY。
  • IMMEDIATE_RETRY,立即重试,在较短时间内快速重试,连续失败超过一定次数(5次)后不再重试。
  • INCREMENTAL_INTERVALS,间隔递增重试,随着连续失败次数的增加,重试间隔逐渐增大,重试间隔从秒级到1天不等。
  • NO_RETRY,不进行重试,直到再次收到用户调用或者告警信息后才会重试。 */ public String getRetryPolicy() { return this.RetryPolicy; } /** * Set 重试策略,取值包括 IMMEDIATE_RETRY、 INCREMENTAL_INTERVALS、NO_RETRY,默认取值为 IMMEDIATE_RETRY。
  • IMMEDIATE_RETRY,立即重试,在较短时间内快速重试,连续失败超过一定次数(5次)后不再重试。
  • INCREMENTAL_INTERVALS,间隔递增重试,随着连续失败次数的增加,重试间隔逐渐增大,重试间隔从秒级到1天不等。
  • NO_RETRY,不进行重试,直到再次收到用户调用或者告警信息后才会重试。 * @param RetryPolicy 重试策略,取值包括 IMMEDIATE_RETRY、 INCREMENTAL_INTERVALS、NO_RETRY,默认取值为 IMMEDIATE_RETRY。
  • IMMEDIATE_RETRY,立即重试,在较短时间内快速重试,连续失败超过一定次数(5次)后不再重试。
  • INCREMENTAL_INTERVALS,间隔递增重试,随着连续失败次数的增加,重试间隔逐渐增大,重试间隔从秒级到1天不等。
  • NO_RETRY,不进行重试,直到再次收到用户调用或者告警信息后才会重试。 */ public void setRetryPolicy(String RetryPolicy) { this.RetryPolicy = RetryPolicy; } /** * Get 可用区校验策略,取值包括 ALL 和 ANY,默认取值为ANY。在伸缩组实际变更资源相关字段时(启动配置、可用区、子网)发挥作用。
  • ALL,所有可用区(Zone)或子网(SubnetId)都可用则通过校验,否则校验报错。
  • ANY,存在任何一个可用区(Zone)或子网(SubnetId)可用则通过校验,否则校验报错。 可用区或子网不可用的常见原因包括该可用区CVM实例类型售罄、该可用区CBS云盘售罄、该可用区配额不足、该子网IP不足等。 如果 Zones/SubnetIds 中可用区或者子网不存在,则无论 ZonesCheckPolicy 采用何种取值,都会校验报错。 * @return ZonesCheckPolicy 可用区校验策略,取值包括 ALL 和 ANY,默认取值为ANY。在伸缩组实际变更资源相关字段时(启动配置、可用区、子网)发挥作用。
  • ALL,所有可用区(Zone)或子网(SubnetId)都可用则通过校验,否则校验报错。
  • ANY,存在任何一个可用区(Zone)或子网(SubnetId)可用则通过校验,否则校验报错。 可用区或子网不可用的常见原因包括该可用区CVM实例类型售罄、该可用区CBS云盘售罄、该可用区配额不足、该子网IP不足等。 如果 Zones/SubnetIds 中可用区或者子网不存在,则无论 ZonesCheckPolicy 采用何种取值,都会校验报错。 */ public String getZonesCheckPolicy() { return this.ZonesCheckPolicy; } /** * Set 可用区校验策略,取值包括 ALL 和 ANY,默认取值为ANY。在伸缩组实际变更资源相关字段时(启动配置、可用区、子网)发挥作用。
  • ALL,所有可用区(Zone)或子网(SubnetId)都可用则通过校验,否则校验报错。
  • ANY,存在任何一个可用区(Zone)或子网(SubnetId)可用则通过校验,否则校验报错。 可用区或子网不可用的常见原因包括该可用区CVM实例类型售罄、该可用区CBS云盘售罄、该可用区配额不足、该子网IP不足等。 如果 Zones/SubnetIds 中可用区或者子网不存在,则无论 ZonesCheckPolicy 采用何种取值,都会校验报错。 * @param ZonesCheckPolicy 可用区校验策略,取值包括 ALL 和 ANY,默认取值为ANY。在伸缩组实际变更资源相关字段时(启动配置、可用区、子网)发挥作用。
  • ALL,所有可用区(Zone)或子网(SubnetId)都可用则通过校验,否则校验报错。
  • ANY,存在任何一个可用区(Zone)或子网(SubnetId)可用则通过校验,否则校验报错。 可用区或子网不可用的常见原因包括该可用区CVM实例类型售罄、该可用区CBS云盘售罄、该可用区配额不足、该子网IP不足等。 如果 Zones/SubnetIds 中可用区或者子网不存在,则无论 ZonesCheckPolicy 采用何种取值,都会校验报错。 */ public void setZonesCheckPolicy(String ZonesCheckPolicy) { this.ZonesCheckPolicy = ZonesCheckPolicy; } /** * Get 服务设置,包括云监控不健康替换等服务设置。 * @return ServiceSettings 服务设置,包括云监控不健康替换等服务设置。 */ public ServiceSettings getServiceSettings() { return this.ServiceSettings; } /** * Set 服务设置,包括云监控不健康替换等服务设置。 * @param ServiceSettings 服务设置,包括云监控不健康替换等服务设置。 */ public void setServiceSettings(ServiceSettings ServiceSettings) { this.ServiceSettings = ServiceSettings; } /** * Get 实例具有IPv6地址数量的配置,取值包括0、1。 * @return Ipv6AddressCount 实例具有IPv6地址数量的配置,取值包括0、1。 */ public Long getIpv6AddressCount() { return this.Ipv6AddressCount; } /** * Set 实例具有IPv6地址数量的配置,取值包括0、1。 * @param Ipv6AddressCount 实例具有IPv6地址数量的配置,取值包括0、1。 */ public void setIpv6AddressCount(Long Ipv6AddressCount) { this.Ipv6AddressCount = Ipv6AddressCount; } /** * Get 多可用区/子网策略,取值包括 PRIORITY 和 EQUALITY,默认为 PRIORITY。
  • PRIORITY,按照可用区/子网列表的顺序,作为优先级来尝试创建实例,如果优先级最高的可用区/子网可以创建成功,则总在该可用区/子网创建。
  • EQUALITY:扩容出的实例会打散到多个可用区/子网,保证扩容后的各个可用区/子网实例数相对均衡。 与本策略相关的注意点:
  • 当伸缩组为基础网络时,本策略适用于多可用区;当伸缩组为VPC网络时,本策略适用于多子网,此时不再考虑可用区因素,例如四个子网ABCD,其中ABC处于可用区1,D处于可用区2,此时考虑子网ABCD进行排序,而不考虑可用区1、2。
  • 本策略适用于多可用区/子网,不适用于启动配置的多机型。多机型按照优先级策略进行选择。
  • 按照 PRIORITY 策略创建实例时,先保证多机型的策略,后保证多可用区/子网的策略。例如多机型A、B,多子网1、2、3,会按照A1、A2、A3、B1、B2、B3 进行尝试,如果A1售罄,会尝试A2(而非B1)。 * @return MultiZoneSubnetPolicy 多可用区/子网策略,取值包括 PRIORITY 和 EQUALITY,默认为 PRIORITY。
  • PRIORITY,按照可用区/子网列表的顺序,作为优先级来尝试创建实例,如果优先级最高的可用区/子网可以创建成功,则总在该可用区/子网创建。
  • EQUALITY:扩容出的实例会打散到多个可用区/子网,保证扩容后的各个可用区/子网实例数相对均衡。 与本策略相关的注意点:
  • 当伸缩组为基础网络时,本策略适用于多可用区;当伸缩组为VPC网络时,本策略适用于多子网,此时不再考虑可用区因素,例如四个子网ABCD,其中ABC处于可用区1,D处于可用区2,此时考虑子网ABCD进行排序,而不考虑可用区1、2。
  • 本策略适用于多可用区/子网,不适用于启动配置的多机型。多机型按照优先级策略进行选择。
  • 按照 PRIORITY 策略创建实例时,先保证多机型的策略,后保证多可用区/子网的策略。例如多机型A、B,多子网1、2、3,会按照A1、A2、A3、B1、B2、B3 进行尝试,如果A1售罄,会尝试A2(而非B1)。 */ public String getMultiZoneSubnetPolicy() { return this.MultiZoneSubnetPolicy; } /** * Set 多可用区/子网策略,取值包括 PRIORITY 和 EQUALITY,默认为 PRIORITY。
  • PRIORITY,按照可用区/子网列表的顺序,作为优先级来尝试创建实例,如果优先级最高的可用区/子网可以创建成功,则总在该可用区/子网创建。
  • EQUALITY:扩容出的实例会打散到多个可用区/子网,保证扩容后的各个可用区/子网实例数相对均衡。 与本策略相关的注意点:
  • 当伸缩组为基础网络时,本策略适用于多可用区;当伸缩组为VPC网络时,本策略适用于多子网,此时不再考虑可用区因素,例如四个子网ABCD,其中ABC处于可用区1,D处于可用区2,此时考虑子网ABCD进行排序,而不考虑可用区1、2。
  • 本策略适用于多可用区/子网,不适用于启动配置的多机型。多机型按照优先级策略进行选择。
  • 按照 PRIORITY 策略创建实例时,先保证多机型的策略,后保证多可用区/子网的策略。例如多机型A、B,多子网1、2、3,会按照A1、A2、A3、B1、B2、B3 进行尝试,如果A1售罄,会尝试A2(而非B1)。 * @param MultiZoneSubnetPolicy 多可用区/子网策略,取值包括 PRIORITY 和 EQUALITY,默认为 PRIORITY。
  • PRIORITY,按照可用区/子网列表的顺序,作为优先级来尝试创建实例,如果优先级最高的可用区/子网可以创建成功,则总在该可用区/子网创建。
  • EQUALITY:扩容出的实例会打散到多个可用区/子网,保证扩容后的各个可用区/子网实例数相对均衡。 与本策略相关的注意点:
  • 当伸缩组为基础网络时,本策略适用于多可用区;当伸缩组为VPC网络时,本策略适用于多子网,此时不再考虑可用区因素,例如四个子网ABCD,其中ABC处于可用区1,D处于可用区2,此时考虑子网ABCD进行排序,而不考虑可用区1、2。
  • 本策略适用于多可用区/子网,不适用于启动配置的多机型。多机型按照优先级策略进行选择。
  • 按照 PRIORITY 策略创建实例时,先保证多机型的策略,后保证多可用区/子网的策略。例如多机型A、B,多子网1、2、3,会按照A1、A2、A3、B1、B2、B3 进行尝试,如果A1售罄,会尝试A2(而非B1)。 */ public void setMultiZoneSubnetPolicy(String MultiZoneSubnetPolicy) { this.MultiZoneSubnetPolicy = MultiZoneSubnetPolicy; } /** * Get 伸缩组实例健康检查类型,取值如下:
  • CVM:根据实例网络状态判断实例是否处于不健康状态,不健康的网络状态即发生实例 PING 不可达事件,详细判断标准可参考[实例健康检查](https://cloud.tencent.com/document/product/377/8553)
  • CLB:根据 CLB 的健康检查状态判断实例是否处于不健康状态,CLB健康检查原理可参考[健康检查](https://cloud.tencent.com/document/product/214/6097) * @return HealthCheckType 伸缩组实例健康检查类型,取值如下:
  • CVM:根据实例网络状态判断实例是否处于不健康状态,不健康的网络状态即发生实例 PING 不可达事件,详细判断标准可参考[实例健康检查](https://cloud.tencent.com/document/product/377/8553)
  • CLB:根据 CLB 的健康检查状态判断实例是否处于不健康状态,CLB健康检查原理可参考[健康检查](https://cloud.tencent.com/document/product/214/6097) */ public String getHealthCheckType() { return this.HealthCheckType; } /** * Set 伸缩组实例健康检查类型,取值如下:
  • CVM:根据实例网络状态判断实例是否处于不健康状态,不健康的网络状态即发生实例 PING 不可达事件,详细判断标准可参考[实例健康检查](https://cloud.tencent.com/document/product/377/8553)
  • CLB:根据 CLB 的健康检查状态判断实例是否处于不健康状态,CLB健康检查原理可参考[健康检查](https://cloud.tencent.com/document/product/214/6097) * @param HealthCheckType 伸缩组实例健康检查类型,取值如下:
  • CVM:根据实例网络状态判断实例是否处于不健康状态,不健康的网络状态即发生实例 PING 不可达事件,详细判断标准可参考[实例健康检查](https://cloud.tencent.com/document/product/377/8553)
  • CLB:根据 CLB 的健康检查状态判断实例是否处于不健康状态,CLB健康检查原理可参考[健康检查](https://cloud.tencent.com/document/product/214/6097) */ public void setHealthCheckType(String HealthCheckType) { this.HealthCheckType = HealthCheckType; } /** * Get CLB健康检查宽限期。 * @return LoadBalancerHealthCheckGracePeriod CLB健康检查宽限期。 */ public Long getLoadBalancerHealthCheckGracePeriod() { return this.LoadBalancerHealthCheckGracePeriod; } /** * Set CLB健康检查宽限期。 * @param LoadBalancerHealthCheckGracePeriod CLB健康检查宽限期。 */ public void setLoadBalancerHealthCheckGracePeriod(Long LoadBalancerHealthCheckGracePeriod) { this.LoadBalancerHealthCheckGracePeriod = LoadBalancerHealthCheckGracePeriod; } /** * Get 实例分配策略,取值包括 LAUNCH_CONFIGURATION 和 SPOT_MIXED。
  • LAUNCH_CONFIGURATION,代表传统的按照启动配置模式。
  • SPOT_MIXED,代表竞价混合模式。目前仅支持启动配置为按量计费模式时使用混合模式,混合模式下,伸缩组将根据设定扩容按量或竞价机型。使用混合模式时,关联的启动配置的计费类型不可被修改。 * @return InstanceAllocationPolicy 实例分配策略,取值包括 LAUNCH_CONFIGURATION 和 SPOT_MIXED。
  • LAUNCH_CONFIGURATION,代表传统的按照启动配置模式。
  • SPOT_MIXED,代表竞价混合模式。目前仅支持启动配置为按量计费模式时使用混合模式,混合模式下,伸缩组将根据设定扩容按量或竞价机型。使用混合模式时,关联的启动配置的计费类型不可被修改。 */ public String getInstanceAllocationPolicy() { return this.InstanceAllocationPolicy; } /** * Set 实例分配策略,取值包括 LAUNCH_CONFIGURATION 和 SPOT_MIXED。
  • LAUNCH_CONFIGURATION,代表传统的按照启动配置模式。
  • SPOT_MIXED,代表竞价混合模式。目前仅支持启动配置为按量计费模式时使用混合模式,混合模式下,伸缩组将根据设定扩容按量或竞价机型。使用混合模式时,关联的启动配置的计费类型不可被修改。 * @param InstanceAllocationPolicy 实例分配策略,取值包括 LAUNCH_CONFIGURATION 和 SPOT_MIXED。
  • LAUNCH_CONFIGURATION,代表传统的按照启动配置模式。
  • SPOT_MIXED,代表竞价混合模式。目前仅支持启动配置为按量计费模式时使用混合模式,混合模式下,伸缩组将根据设定扩容按量或竞价机型。使用混合模式时,关联的启动配置的计费类型不可被修改。 */ public void setInstanceAllocationPolicy(String InstanceAllocationPolicy) { this.InstanceAllocationPolicy = InstanceAllocationPolicy; } /** * Get 竞价混合模式下,各计费类型实例的分配策略。 仅当 InstanceAllocationPolicy 取 SPOT_MIXED 时可用。 * @return SpotMixedAllocationPolicy 竞价混合模式下,各计费类型实例的分配策略。 仅当 InstanceAllocationPolicy 取 SPOT_MIXED 时可用。 */ public SpotMixedAllocationPolicy getSpotMixedAllocationPolicy() { return this.SpotMixedAllocationPolicy; } /** * Set 竞价混合模式下,各计费类型实例的分配策略。 仅当 InstanceAllocationPolicy 取 SPOT_MIXED 时可用。 * @param SpotMixedAllocationPolicy 竞价混合模式下,各计费类型实例的分配策略。 仅当 InstanceAllocationPolicy 取 SPOT_MIXED 时可用。 */ public void setSpotMixedAllocationPolicy(SpotMixedAllocationPolicy SpotMixedAllocationPolicy) { this.SpotMixedAllocationPolicy = SpotMixedAllocationPolicy; } /** * Get 容量重平衡功能,仅对伸缩组内的竞价实例有效。取值范围:
  • TRUE,开启该功能,当伸缩组内的竞价实例即将被竞价实例服务自动回收前,AS 主动发起竞价实例销毁流程,如果有配置过缩容 hook,则销毁前 hook 会生效。销毁流程启动后,AS 会异步开启一个扩容活动,用于补齐期望实例数。
  • FALSE,不开启该功能,则 AS 等待竞价实例被销毁后才会去扩容补齐伸缩组期望实例数。 * @return CapacityRebalance 容量重平衡功能,仅对伸缩组内的竞价实例有效。取值范围:
  • TRUE,开启该功能,当伸缩组内的竞价实例即将被竞价实例服务自动回收前,AS 主动发起竞价实例销毁流程,如果有配置过缩容 hook,则销毁前 hook 会生效。销毁流程启动后,AS 会异步开启一个扩容活动,用于补齐期望实例数。
  • FALSE,不开启该功能,则 AS 等待竞价实例被销毁后才会去扩容补齐伸缩组期望实例数。 */ public Boolean getCapacityRebalance() { return this.CapacityRebalance; } /** * Set 容量重平衡功能,仅对伸缩组内的竞价实例有效。取值范围:
  • TRUE,开启该功能,当伸缩组内的竞价实例即将被竞价实例服务自动回收前,AS 主动发起竞价实例销毁流程,如果有配置过缩容 hook,则销毁前 hook 会生效。销毁流程启动后,AS 会异步开启一个扩容活动,用于补齐期望实例数。
  • FALSE,不开启该功能,则 AS 等待竞价实例被销毁后才会去扩容补齐伸缩组期望实例数。 * @param CapacityRebalance 容量重平衡功能,仅对伸缩组内的竞价实例有效。取值范围:
  • TRUE,开启该功能,当伸缩组内的竞价实例即将被竞价实例服务自动回收前,AS 主动发起竞价实例销毁流程,如果有配置过缩容 hook,则销毁前 hook 会生效。销毁流程启动后,AS 会异步开启一个扩容活动,用于补齐期望实例数。
  • FALSE,不开启该功能,则 AS 等待竞价实例被销毁后才会去扩容补齐伸缩组期望实例数。 */ public void setCapacityRebalance(Boolean CapacityRebalance) { this.CapacityRebalance = CapacityRebalance; } public ModifyAutoScalingGroupRequest() { } /** * NOTE: Any ambiguous key set via .set("AnyKey", "value") will be a shallow copy, * and any explicit key, i.e Foo, set via .setFoo("value") will be a deep copy. */ public ModifyAutoScalingGroupRequest(ModifyAutoScalingGroupRequest source) { if (source.AutoScalingGroupId != null) { this.AutoScalingGroupId = new String(source.AutoScalingGroupId); } if (source.AutoScalingGroupName != null) { this.AutoScalingGroupName = new String(source.AutoScalingGroupName); } if (source.DefaultCooldown != null) { this.DefaultCooldown = new Long(source.DefaultCooldown); } if (source.DesiredCapacity != null) { this.DesiredCapacity = new Long(source.DesiredCapacity); } if (source.LaunchConfigurationId != null) { this.LaunchConfigurationId = new String(source.LaunchConfigurationId); } if (source.MaxSize != null) { this.MaxSize = new Long(source.MaxSize); } if (source.MinSize != null) { this.MinSize = new Long(source.MinSize); } if (source.ProjectId != null) { this.ProjectId = new Long(source.ProjectId); } if (source.SubnetIds != null) { this.SubnetIds = new String[source.SubnetIds.length]; for (int i = 0; i < source.SubnetIds.length; i++) { this.SubnetIds[i] = new String(source.SubnetIds[i]); } } if (source.TerminationPolicies != null) { this.TerminationPolicies = new String[source.TerminationPolicies.length]; for (int i = 0; i < source.TerminationPolicies.length; i++) { this.TerminationPolicies[i] = new String(source.TerminationPolicies[i]); } } if (source.VpcId != null) { this.VpcId = new String(source.VpcId); } if (source.Zones != null) { this.Zones = new String[source.Zones.length]; for (int i = 0; i < source.Zones.length; i++) { this.Zones[i] = new String(source.Zones[i]); } } if (source.RetryPolicy != null) { this.RetryPolicy = new String(source.RetryPolicy); } if (source.ZonesCheckPolicy != null) { this.ZonesCheckPolicy = new String(source.ZonesCheckPolicy); } if (source.ServiceSettings != null) { this.ServiceSettings = new ServiceSettings(source.ServiceSettings); } if (source.Ipv6AddressCount != null) { this.Ipv6AddressCount = new Long(source.Ipv6AddressCount); } if (source.MultiZoneSubnetPolicy != null) { this.MultiZoneSubnetPolicy = new String(source.MultiZoneSubnetPolicy); } if (source.HealthCheckType != null) { this.HealthCheckType = new String(source.HealthCheckType); } if (source.LoadBalancerHealthCheckGracePeriod != null) { this.LoadBalancerHealthCheckGracePeriod = new Long(source.LoadBalancerHealthCheckGracePeriod); } if (source.InstanceAllocationPolicy != null) { this.InstanceAllocationPolicy = new String(source.InstanceAllocationPolicy); } if (source.SpotMixedAllocationPolicy != null) { this.SpotMixedAllocationPolicy = new SpotMixedAllocationPolicy(source.SpotMixedAllocationPolicy); } if (source.CapacityRebalance != null) { this.CapacityRebalance = new Boolean(source.CapacityRebalance); } } /** * Internal implementation, normal users should not use it. */ public void toMap(HashMap map, String prefix) { this.setParamSimple(map, prefix + "AutoScalingGroupId", this.AutoScalingGroupId); this.setParamSimple(map, prefix + "AutoScalingGroupName", this.AutoScalingGroupName); this.setParamSimple(map, prefix + "DefaultCooldown", this.DefaultCooldown); this.setParamSimple(map, prefix + "DesiredCapacity", this.DesiredCapacity); this.setParamSimple(map, prefix + "LaunchConfigurationId", this.LaunchConfigurationId); this.setParamSimple(map, prefix + "MaxSize", this.MaxSize); this.setParamSimple(map, prefix + "MinSize", this.MinSize); this.setParamSimple(map, prefix + "ProjectId", this.ProjectId); this.setParamArraySimple(map, prefix + "SubnetIds.", this.SubnetIds); this.setParamArraySimple(map, prefix + "TerminationPolicies.", this.TerminationPolicies); this.setParamSimple(map, prefix + "VpcId", this.VpcId); this.setParamArraySimple(map, prefix + "Zones.", this.Zones); this.setParamSimple(map, prefix + "RetryPolicy", this.RetryPolicy); this.setParamSimple(map, prefix + "ZonesCheckPolicy", this.ZonesCheckPolicy); this.setParamObj(map, prefix + "ServiceSettings.", this.ServiceSettings); this.setParamSimple(map, prefix + "Ipv6AddressCount", this.Ipv6AddressCount); this.setParamSimple(map, prefix + "MultiZoneSubnetPolicy", this.MultiZoneSubnetPolicy); this.setParamSimple(map, prefix + "HealthCheckType", this.HealthCheckType); this.setParamSimple(map, prefix + "LoadBalancerHealthCheckGracePeriod", this.LoadBalancerHealthCheckGracePeriod); this.setParamSimple(map, prefix + "InstanceAllocationPolicy", this.InstanceAllocationPolicy); this.setParamObj(map, prefix + "SpotMixedAllocationPolicy.", this.SpotMixedAllocationPolicy); this.setParamSimple(map, prefix + "CapacityRebalance", this.CapacityRebalance); } }




  • © 2015 - 2024 Weber Informatics LLC | Privacy Policy