# -*- coding: utf8 -*- # Copyright (c) 2017-2021 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. import warnings from tencentcloud.common.abstract_model import AbstractModel class Activity(AbstractModel): """符合条件的伸缩活动相关信息。 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID。 :type AutoScalingGroupId: str :param _ActivityId: 伸缩活动ID。 :type ActivityId: str :param _ActivityType: 伸缩活动类型。取值如下: <li>SCALE_OUT:扩容活动</li> <li>SCALE_IN:缩容活动</li> <li>ATTACH_INSTANCES:添加实例</li> <li>REMOVE_INSTANCES:销毁实例</li> <li>DETACH_INSTANCES:移出实例</li> <li>TERMINATE_INSTANCES_UNEXPECTEDLY:实例在CVM控制台被销毁</li> <li>REPLACE_UNHEALTHY_INSTANCE:替换不健康实例</li> <li>START_INSTANCES:开启实例</li> <li>STOP_INSTANCES:关闭实例</li> <li>INVOKE_COMMAND:执行命令</li> :type ActivityType: str :param _StatusCode: 伸缩活动状态。取值如下 <li>INIT:初始化中</li> <li>RUNNING:运行中</li> <li>SUCCESSFUL:活动成功</li> <li>PARTIALLY_SUCCESSFUL:活动部分成功</li> <li>FAILED:活动失败</li> <li>CANCELLED:活动取消</li> :type StatusCode: str :param _StatusMessage: 伸缩活动状态描述。 :type StatusMessage: str :param _Cause: 伸缩活动起因。 :type Cause: str :param _Description: 伸缩活动描述。 :type Description: str :param _StartTime: 伸缩活动开始时间。 :type StartTime: str :param _EndTime: 伸缩活动结束时间。 :type EndTime: str :param _CreatedTime: 伸缩活动创建时间。 :type CreatedTime: str :param _ActivityRelatedInstanceSet: 该参数已废弃,请勿使用。 :type ActivityRelatedInstanceSet: list of ActivtyRelatedInstance :param _StatusMessageSimplified: 伸缩活动状态简要描述。 :type StatusMessageSimplified: str :param _LifecycleActionResultSet: 伸缩活动中生命周期挂钩的执行结果。 :type LifecycleActionResultSet: list of LifecycleActionResultInfo :param _DetailedStatusMessageSet: 伸缩活动状态详细描述。 :type DetailedStatusMessageSet: list of DetailedStatusMessage :param _InvocationResultSet: 执行命令结果。 :type InvocationResultSet: list of InvocationResult :param _RelatedInstanceSet: 伸缩活动相关实例信息集合。 :type RelatedInstanceSet: list of RelatedInstance """ self._AutoScalingGroupId = None self._ActivityId = None self._ActivityType = None self._StatusCode = None self._StatusMessage = None self._Cause = None self._Description = None self._StartTime = None self._EndTime = None self._CreatedTime = None self._ActivityRelatedInstanceSet = None self._StatusMessageSimplified = None self._LifecycleActionResultSet = None self._DetailedStatusMessageSet = None self._InvocationResultSet = None self._RelatedInstanceSet = None @property def AutoScalingGroupId(self): """伸缩组ID。 :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def ActivityId(self): """伸缩活动ID。 :rtype: str """ return self._ActivityId @ActivityId.setter def ActivityId(self, ActivityId): self._ActivityId = ActivityId @property def ActivityType(self): """伸缩活动类型。取值如下: <li>SCALE_OUT:扩容活动</li> <li>SCALE_IN:缩容活动</li> <li>ATTACH_INSTANCES:添加实例</li> <li>REMOVE_INSTANCES:销毁实例</li> <li>DETACH_INSTANCES:移出实例</li> <li>TERMINATE_INSTANCES_UNEXPECTEDLY:实例在CVM控制台被销毁</li> <li>REPLACE_UNHEALTHY_INSTANCE:替换不健康实例</li> <li>START_INSTANCES:开启实例</li> <li>STOP_INSTANCES:关闭实例</li> <li>INVOKE_COMMAND:执行命令</li> :rtype: str """ return self._ActivityType @ActivityType.setter def ActivityType(self, ActivityType): self._ActivityType = ActivityType @property def StatusCode(self): """伸缩活动状态。取值如下 <li>INIT:初始化中</li> <li>RUNNING:运行中</li> <li>SUCCESSFUL:活动成功</li> <li>PARTIALLY_SUCCESSFUL:活动部分成功</li> <li>FAILED:活动失败</li> <li>CANCELLED:活动取消</li> :rtype: str """ return self._StatusCode @StatusCode.setter def StatusCode(self, StatusCode): self._StatusCode = StatusCode @property def StatusMessage(self): """伸缩活动状态描述。 :rtype: str """ return self._StatusMessage @StatusMessage.setter def StatusMessage(self, StatusMessage): self._StatusMessage = StatusMessage @property def Cause(self): """伸缩活动起因。 :rtype: str """ return self._Cause @Cause.setter def Cause(self, Cause): self._Cause = Cause @property def Description(self): """伸缩活动描述。 :rtype: str """ return self._Description @Description.setter def Description(self, Description): self._Description = Description @property def StartTime(self): """伸缩活动开始时间。 :rtype: str """ return self._StartTime @StartTime.setter def StartTime(self, StartTime): self._StartTime = StartTime @property def EndTime(self): """伸缩活动结束时间。 :rtype: str """ return self._EndTime @EndTime.setter def EndTime(self, EndTime): self._EndTime = EndTime @property def CreatedTime(self): """伸缩活动创建时间。 :rtype: str """ return self._CreatedTime @CreatedTime.setter def CreatedTime(self, CreatedTime): self._CreatedTime = CreatedTime @property def ActivityRelatedInstanceSet(self): warnings.warn("parameter `ActivityRelatedInstanceSet` is deprecated", DeprecationWarning) """该参数已废弃,请勿使用。 :rtype: list of ActivtyRelatedInstance """ return self._ActivityRelatedInstanceSet @ActivityRelatedInstanceSet.setter def ActivityRelatedInstanceSet(self, ActivityRelatedInstanceSet): warnings.warn("parameter `ActivityRelatedInstanceSet` is deprecated", DeprecationWarning) self._ActivityRelatedInstanceSet = ActivityRelatedInstanceSet @property def StatusMessageSimplified(self): """伸缩活动状态简要描述。 :rtype: str """ return self._StatusMessageSimplified @StatusMessageSimplified.setter def StatusMessageSimplified(self, StatusMessageSimplified): self._StatusMessageSimplified = StatusMessageSimplified @property def LifecycleActionResultSet(self): """伸缩活动中生命周期挂钩的执行结果。 :rtype: list of LifecycleActionResultInfo """ return self._LifecycleActionResultSet @LifecycleActionResultSet.setter def LifecycleActionResultSet(self, LifecycleActionResultSet): self._LifecycleActionResultSet = LifecycleActionResultSet @property def DetailedStatusMessageSet(self): """伸缩活动状态详细描述。 :rtype: list of DetailedStatusMessage """ return self._DetailedStatusMessageSet @DetailedStatusMessageSet.setter def DetailedStatusMessageSet(self, DetailedStatusMessageSet): self._DetailedStatusMessageSet = DetailedStatusMessageSet @property def InvocationResultSet(self): """执行命令结果。 :rtype: list of InvocationResult """ return self._InvocationResultSet @InvocationResultSet.setter def InvocationResultSet(self, InvocationResultSet): self._InvocationResultSet = InvocationResultSet @property def RelatedInstanceSet(self): """伸缩活动相关实例信息集合。 :rtype: list of RelatedInstance """ return self._RelatedInstanceSet @RelatedInstanceSet.setter def RelatedInstanceSet(self, RelatedInstanceSet): self._RelatedInstanceSet = RelatedInstanceSet def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._ActivityId = params.get("ActivityId") self._ActivityType = params.get("ActivityType") self._StatusCode = params.get("StatusCode") self._StatusMessage = params.get("StatusMessage") self._Cause = params.get("Cause") self._Description = params.get("Description") self._StartTime = params.get("StartTime") self._EndTime = params.get("EndTime") self._CreatedTime = params.get("CreatedTime") if params.get("ActivityRelatedInstanceSet") is not None: self._ActivityRelatedInstanceSet = [] for item in params.get("ActivityRelatedInstanceSet"): obj = ActivtyRelatedInstance() obj._deserialize(item) self._ActivityRelatedInstanceSet.append(obj) self._StatusMessageSimplified = params.get("StatusMessageSimplified") if params.get("LifecycleActionResultSet") is not None: self._LifecycleActionResultSet = [] for item in params.get("LifecycleActionResultSet"): obj = LifecycleActionResultInfo() obj._deserialize(item) self._LifecycleActionResultSet.append(obj) if params.get("DetailedStatusMessageSet") is not None: self._DetailedStatusMessageSet = [] for item in params.get("DetailedStatusMessageSet"): obj = DetailedStatusMessage() obj._deserialize(item) self._DetailedStatusMessageSet.append(obj) if params.get("InvocationResultSet") is not None: self._InvocationResultSet = [] for item in params.get("InvocationResultSet"): obj = InvocationResult() obj._deserialize(item) self._InvocationResultSet.append(obj) if params.get("RelatedInstanceSet") is not None: self._RelatedInstanceSet = [] for item in params.get("RelatedInstanceSet"): obj = RelatedInstance() obj._deserialize(item) self._RelatedInstanceSet.append(obj) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ActivtyRelatedInstance(AbstractModel): """与本次伸缩活动相关的实例信息。 """ def __init__(self): r""" :param _InstanceId: 实例ID。 :type InstanceId: str :param _InstanceStatus: 实例在伸缩活动中的状态。取值如下:<br><li>INIT:初始化中</li><li>RUNNING:实例操作中</li><li>SUCCESSFUL:活动成功</li><li>FAILED:活动失败 :type InstanceStatus: str """ self._InstanceId = None self._InstanceStatus = None @property def InstanceId(self): """实例ID。 :rtype: str """ return self._InstanceId @InstanceId.setter def InstanceId(self, InstanceId): self._InstanceId = InstanceId @property def InstanceStatus(self): """实例在伸缩活动中的状态。取值如下:<br><li>INIT:初始化中</li><li>RUNNING:实例操作中</li><li>SUCCESSFUL:活动成功</li><li>FAILED:活动失败 :rtype: str """ return self._InstanceStatus @InstanceStatus.setter def InstanceStatus(self, InstanceStatus): self._InstanceStatus = InstanceStatus def _deserialize(self, params): self._InstanceId = params.get("InstanceId") self._InstanceStatus = params.get("InstanceStatus") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class Advice(AbstractModel): """伸缩配置建议。 """ def __init__(self): r""" :param _Problem: 问题描述。 :type Problem: str :param _Detail: 问题详情。 :type Detail: str :param _Solution: 建议解决方案。 :type Solution: str :param _Level: 伸缩建议警告级别。取值范围: <li>WARNING:警告级别</li> <li>CRITICAL:严重级别</li> :type Level: str """ self._Problem = None self._Detail = None self._Solution = None self._Level = None @property def Problem(self): """问题描述。 :rtype: str """ return self._Problem @Problem.setter def Problem(self, Problem): self._Problem = Problem @property def Detail(self): """问题详情。 :rtype: str """ return self._Detail @Detail.setter def Detail(self, Detail): self._Detail = Detail @property def Solution(self): """建议解决方案。 :rtype: str """ return self._Solution @Solution.setter def Solution(self, Solution): self._Solution = Solution @property def Level(self): """伸缩建议警告级别。取值范围: <li>WARNING:警告级别</li> <li>CRITICAL:严重级别</li> :rtype: str """ return self._Level @Level.setter def Level(self, Level): self._Level = Level def _deserialize(self, params): self._Problem = params.get("Problem") self._Detail = params.get("Detail") self._Solution = params.get("Solution") self._Level = params.get("Level") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class AttachInstancesRequest(AbstractModel): """AttachInstances请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str :param _InstanceIds: CVM实例ID列表 :type InstanceIds: list of str """ self._AutoScalingGroupId = None self._InstanceIds = None @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def InstanceIds(self): """CVM实例ID列表 :rtype: list of str """ return self._InstanceIds @InstanceIds.setter def InstanceIds(self, InstanceIds): self._InstanceIds = InstanceIds def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._InstanceIds = params.get("InstanceIds") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class AttachInstancesResponse(AbstractModel): """AttachInstances返回参数结构体 """ def __init__(self): r""" :param _ActivityId: 伸缩活动ID :type ActivityId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._ActivityId = None self._RequestId = None @property def ActivityId(self): """伸缩活动ID :rtype: str """ return self._ActivityId @ActivityId.setter def ActivityId(self, ActivityId): self._ActivityId = ActivityId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._ActivityId = params.get("ActivityId") self._RequestId = params.get("RequestId") class AttachLoadBalancersRequest(AbstractModel): """AttachLoadBalancers请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str :param _LoadBalancerIds: 传统型负载均衡器ID列表,每个伸缩组绑定传统型负载均衡器数量上限为20,LoadBalancerIds 和 ForwardLoadBalancers 二者同时最多只能指定一个 :type LoadBalancerIds: list of str :param _ForwardLoadBalancers: 应用型负载均衡器列表,每个伸缩组绑定应用型负载均衡器数量上限为100,LoadBalancerIds 和 ForwardLoadBalancers 二者同时最多只能指定一个 :type ForwardLoadBalancers: list of ForwardLoadBalancer """ self._AutoScalingGroupId = None self._LoadBalancerIds = None self._ForwardLoadBalancers = None @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def LoadBalancerIds(self): """传统型负载均衡器ID列表,每个伸缩组绑定传统型负载均衡器数量上限为20,LoadBalancerIds 和 ForwardLoadBalancers 二者同时最多只能指定一个 :rtype: list of str """ return self._LoadBalancerIds @LoadBalancerIds.setter def LoadBalancerIds(self, LoadBalancerIds): self._LoadBalancerIds = LoadBalancerIds @property def ForwardLoadBalancers(self): """应用型负载均衡器列表,每个伸缩组绑定应用型负载均衡器数量上限为100,LoadBalancerIds 和 ForwardLoadBalancers 二者同时最多只能指定一个 :rtype: list of ForwardLoadBalancer """ return self._ForwardLoadBalancers @ForwardLoadBalancers.setter def ForwardLoadBalancers(self, ForwardLoadBalancers): self._ForwardLoadBalancers = ForwardLoadBalancers def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._LoadBalancerIds = params.get("LoadBalancerIds") if params.get("ForwardLoadBalancers") is not None: self._ForwardLoadBalancers = [] for item in params.get("ForwardLoadBalancers"): obj = ForwardLoadBalancer() obj._deserialize(item) self._ForwardLoadBalancers.append(obj) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class AttachLoadBalancersResponse(AbstractModel): """AttachLoadBalancers返回参数结构体 """ def __init__(self): r""" :param _ActivityId: 伸缩活动ID :type ActivityId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._ActivityId = None self._RequestId = None @property def ActivityId(self): """伸缩活动ID :rtype: str """ return self._ActivityId @ActivityId.setter def ActivityId(self, ActivityId): self._ActivityId = ActivityId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._ActivityId = params.get("ActivityId") self._RequestId = params.get("RequestId") class AutoScalingAdvice(AbstractModel): """伸缩组配置建议。 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID。 :type AutoScalingGroupId: str :param _Level: 伸缩组警告级别。取值范围: <li>NORMAL:正常</li> <li>WARNING:警告级别</li> <li>CRITICAL:严重级别</li> :type Level: str :param _Advices: 伸缩组配置建议集合。 :type Advices: list of Advice """ self._AutoScalingGroupId = None self._Level = None self._Advices = None @property def AutoScalingGroupId(self): """伸缩组ID。 :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def Level(self): """伸缩组警告级别。取值范围: <li>NORMAL:正常</li> <li>WARNING:警告级别</li> <li>CRITICAL:严重级别</li> :rtype: str """ return self._Level @Level.setter def Level(self, Level): self._Level = Level @property def Advices(self): """伸缩组配置建议集合。 :rtype: list of Advice """ return self._Advices @Advices.setter def Advices(self, Advices): self._Advices = Advices def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._Level = params.get("Level") if params.get("Advices") is not None: self._Advices = [] for item in params.get("Advices"): obj = Advice() obj._deserialize(item) self._Advices.append(obj) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class AutoScalingGroup(AbstractModel): """伸缩组 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str :param _AutoScalingGroupName: 伸缩组名称 :type AutoScalingGroupName: str :param _AutoScalingGroupStatus: 伸缩组当前状态。取值范围: <li>NORMAL:正常</li> <li>CVM_ABNORMAL:启动配置异常</li> <li>LB_ABNORMAL:负载均衡器异常</li> <li>LB_LISTENER_ABNORMAL:负载均衡器监听器异常</li> <li>LB_LOCATION_ABNORMAL:负载均衡器监听器转发配置异常</li> <li>VPC_ABNORMAL:VPC网络异常</li> <li>SUBNET_ABNORMAL:VPC子网异常</li> <li>INSUFFICIENT_BALANCE:余额不足</li> <li>LB_BACKEND_REGION_NOT_MATCH:CLB实例后端地域与AS服务所在地域不匹配</li> <li>LB_BACKEND_VPC_NOT_MATCH:CLB实例VPC与伸缩组VPC不匹配</li> :type AutoScalingGroupStatus: str :param _CreatedTime: 创建时间,采用UTC标准计时 :type CreatedTime: str :param _DefaultCooldown: 默认冷却时间,单位秒 :type DefaultCooldown: int :param _DesiredCapacity: 期望实例数 :type DesiredCapacity: int :param _EnabledStatus: 启用状态,取值包括`ENABLED`和`DISABLED` :type EnabledStatus: str :param _ForwardLoadBalancerSet: 应用型负载均衡器列表 :type ForwardLoadBalancerSet: list of ForwardLoadBalancer :param _InstanceCount: 实例数量 :type InstanceCount: int :param _InServiceInstanceCount: 状态为`IN_SERVICE`实例的数量 :type InServiceInstanceCount: int :param _LaunchConfigurationId: 启动配置ID :type LaunchConfigurationId: str :param _LaunchConfigurationName: 启动配置名称 :type LaunchConfigurationName: str :param _LoadBalancerIdSet: 传统型负载均衡器ID列表 :type LoadBalancerIdSet: list of str :param _MaxSize: 最大实例数 :type MaxSize: int :param _MinSize: 最小实例数 :type MinSize: int :param _ProjectId: 项目ID :type ProjectId: int :param _SubnetIdSet: 子网ID列表 :type SubnetIdSet: list of str :param _TerminationPolicySet: 销毁策略 :type TerminationPolicySet: list of str :param _VpcId: VPC标识 :type VpcId: str :param _ZoneSet: 可用区列表 :type ZoneSet: list of str :param _RetryPolicy: 重试策略 :type RetryPolicy: str :param _InActivityStatus: 伸缩组是否处于伸缩活动中,`IN_ACTIVITY`表示处于伸缩活动中,`NOT_IN_ACTIVITY`表示不处于伸缩活动中。 :type InActivityStatus: str :param _Tags: 伸缩组标签列表 :type Tags: list of Tag :param _ServiceSettings: 服务设置 :type ServiceSettings: :class:`tencentcloud.autoscaling.v20180419.models.ServiceSettings` :param _Ipv6AddressCount: 实例具有IPv6地址数量的配置 :type Ipv6AddressCount: int :param _MultiZoneSubnetPolicy: 多可用区/子网策略。 <li> PRIORITY,按照可用区/子网列表的顺序,作为优先级来尝试创建实例,如果优先级最高的可用区/子网可以创建成功,则总在该可用区/子网创建。</li> <li> EQUALITY:每次选择当前实例数最少的可用区/子网进行扩容,使得每个可用区/子网都有机会发生扩容,多次扩容出的实例会打散到多个可用区/子网。</li> :type MultiZoneSubnetPolicy: str :param _HealthCheckType: 伸缩组实例健康检查类型,取值如下: <li>CVM:根据实例网络状态判断实例是否处于不健康状态,不健康的网络状态即发生实例 PING 不可达事件,详细判断标准可参考[实例健康检查](https://cloud.tencent.com/document/product/377/8553)</li> <li>CLB:根据 CLB 的健康检查状态判断实例是否处于不健康状态,CLB健康检查原理可参考[健康检查](https://cloud.tencent.com/document/product/214/6097)</li> :type HealthCheckType: str :param _LoadBalancerHealthCheckGracePeriod: CLB健康检查宽限期 :type LoadBalancerHealthCheckGracePeriod: int :param _InstanceAllocationPolicy: 实例分配策略,取值包括 LAUNCH_CONFIGURATION 和 SPOT_MIXED。 <li> LAUNCH_CONFIGURATION,代表传统的按照启动配置模式。</li> <li> SPOT_MIXED,代表竞价混合模式。目前仅支持启动配置为按量计费模式时使用混合模式,混合模式下,伸缩组将根据设定扩容按量或竞价机型。使用混合模式时,关联的启动配置的计费类型不可被修改。</li> :type InstanceAllocationPolicy: str :param _SpotMixedAllocationPolicy: 竞价混合模式下,各计费类型实例的分配策略。 仅当 InstanceAllocationPolicy 取 SPOT_MIXED 时才会返回有效值。 :type SpotMixedAllocationPolicy: :class:`tencentcloud.autoscaling.v20180419.models.SpotMixedAllocationPolicy` :param _CapacityRebalance: 容量重平衡功能,仅对伸缩组内的竞价实例有效。取值范围: <li> TRUE,开启该功能,当伸缩组内的竞价实例即将被竞价实例服务自动回收前,AS 主动发起竞价实例销毁流程,如果有配置过缩容 hook,则销毁前 hook 会生效。销毁流程启动后,AS 会异步开启一个扩容活动,用于补齐期望实例数。</li> <li> FALSE,不开启该功能,则 AS 等待竞价实例被销毁后才会去扩容补齐伸缩组期望实例数。</li> :type CapacityRebalance: bool :param _InstanceNameIndexSettings: 实例名称序号相关设置。 注意:此字段可能返回 null,表示取不到有效值。 :type InstanceNameIndexSettings: :class:`tencentcloud.autoscaling.v20180419.models.InstanceNameIndexSettings` """ self._AutoScalingGroupId = None self._AutoScalingGroupName = None self._AutoScalingGroupStatus = None self._CreatedTime = None self._DefaultCooldown = None self._DesiredCapacity = None self._EnabledStatus = None self._ForwardLoadBalancerSet = None self._InstanceCount = None self._InServiceInstanceCount = None self._LaunchConfigurationId = None self._LaunchConfigurationName = None self._LoadBalancerIdSet = None self._MaxSize = None self._MinSize = None self._ProjectId = None self._SubnetIdSet = None self._TerminationPolicySet = None self._VpcId = None self._ZoneSet = None self._RetryPolicy = None self._InActivityStatus = None self._Tags = None self._ServiceSettings = None self._Ipv6AddressCount = None self._MultiZoneSubnetPolicy = None self._HealthCheckType = None self._LoadBalancerHealthCheckGracePeriod = None self._InstanceAllocationPolicy = None self._SpotMixedAllocationPolicy = None self._CapacityRebalance = None self._InstanceNameIndexSettings = None @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def AutoScalingGroupName(self): """伸缩组名称 :rtype: str """ return self._AutoScalingGroupName @AutoScalingGroupName.setter def AutoScalingGroupName(self, AutoScalingGroupName): self._AutoScalingGroupName = AutoScalingGroupName @property def AutoScalingGroupStatus(self): """伸缩组当前状态。取值范围: <li>NORMAL:正常</li> <li>CVM_ABNORMAL:启动配置异常</li> <li>LB_ABNORMAL:负载均衡器异常</li> <li>LB_LISTENER_ABNORMAL:负载均衡器监听器异常</li> <li>LB_LOCATION_ABNORMAL:负载均衡器监听器转发配置异常</li> <li>VPC_ABNORMAL:VPC网络异常</li> <li>SUBNET_ABNORMAL:VPC子网异常</li> <li>INSUFFICIENT_BALANCE:余额不足</li> <li>LB_BACKEND_REGION_NOT_MATCH:CLB实例后端地域与AS服务所在地域不匹配</li> <li>LB_BACKEND_VPC_NOT_MATCH:CLB实例VPC与伸缩组VPC不匹配</li> :rtype: str """ return self._AutoScalingGroupStatus @AutoScalingGroupStatus.setter def AutoScalingGroupStatus(self, AutoScalingGroupStatus): self._AutoScalingGroupStatus = AutoScalingGroupStatus @property def CreatedTime(self): """创建时间,采用UTC标准计时 :rtype: str """ return self._CreatedTime @CreatedTime.setter def CreatedTime(self, CreatedTime): self._CreatedTime = CreatedTime @property def DefaultCooldown(self): """默认冷却时间,单位秒 :rtype: int """ return self._DefaultCooldown @DefaultCooldown.setter def DefaultCooldown(self, DefaultCooldown): self._DefaultCooldown = DefaultCooldown @property def DesiredCapacity(self): """期望实例数 :rtype: int """ return self._DesiredCapacity @DesiredCapacity.setter def DesiredCapacity(self, DesiredCapacity): self._DesiredCapacity = DesiredCapacity @property def EnabledStatus(self): """启用状态,取值包括`ENABLED`和`DISABLED` :rtype: str """ return self._EnabledStatus @EnabledStatus.setter def EnabledStatus(self, EnabledStatus): self._EnabledStatus = EnabledStatus @property def ForwardLoadBalancerSet(self): """应用型负载均衡器列表 :rtype: list of ForwardLoadBalancer """ return self._ForwardLoadBalancerSet @ForwardLoadBalancerSet.setter def ForwardLoadBalancerSet(self, ForwardLoadBalancerSet): self._ForwardLoadBalancerSet = ForwardLoadBalancerSet @property def InstanceCount(self): """实例数量 :rtype: int """ return self._InstanceCount @InstanceCount.setter def InstanceCount(self, InstanceCount): self._InstanceCount = InstanceCount @property def InServiceInstanceCount(self): """状态为`IN_SERVICE`实例的数量 :rtype: int """ return self._InServiceInstanceCount @InServiceInstanceCount.setter def InServiceInstanceCount(self, InServiceInstanceCount): self._InServiceInstanceCount = InServiceInstanceCount @property def LaunchConfigurationId(self): """启动配置ID :rtype: str """ return self._LaunchConfigurationId @LaunchConfigurationId.setter def LaunchConfigurationId(self, LaunchConfigurationId): self._LaunchConfigurationId = LaunchConfigurationId @property def LaunchConfigurationName(self): """启动配置名称 :rtype: str """ return self._LaunchConfigurationName @LaunchConfigurationName.setter def LaunchConfigurationName(self, LaunchConfigurationName): self._LaunchConfigurationName = LaunchConfigurationName @property def LoadBalancerIdSet(self): """传统型负载均衡器ID列表 :rtype: list of str """ return self._LoadBalancerIdSet @LoadBalancerIdSet.setter def LoadBalancerIdSet(self, LoadBalancerIdSet): self._LoadBalancerIdSet = LoadBalancerIdSet @property def MaxSize(self): """最大实例数 :rtype: int """ return self._MaxSize @MaxSize.setter def MaxSize(self, MaxSize): self._MaxSize = MaxSize @property def MinSize(self): """最小实例数 :rtype: int """ return self._MinSize @MinSize.setter def MinSize(self, MinSize): self._MinSize = MinSize @property def ProjectId(self): """项目ID :rtype: int """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def SubnetIdSet(self): """子网ID列表 :rtype: list of str """ return self._SubnetIdSet @SubnetIdSet.setter def SubnetIdSet(self, SubnetIdSet): self._SubnetIdSet = SubnetIdSet @property def TerminationPolicySet(self): """销毁策略 :rtype: list of str """ return self._TerminationPolicySet @TerminationPolicySet.setter def TerminationPolicySet(self, TerminationPolicySet): self._TerminationPolicySet = TerminationPolicySet @property def VpcId(self): """VPC标识 :rtype: str """ return self._VpcId @VpcId.setter def VpcId(self, VpcId): self._VpcId = VpcId @property def ZoneSet(self): """可用区列表 :rtype: list of str """ return self._ZoneSet @ZoneSet.setter def ZoneSet(self, ZoneSet): self._ZoneSet = ZoneSet @property def RetryPolicy(self): """重试策略 :rtype: str """ return self._RetryPolicy @RetryPolicy.setter def RetryPolicy(self, RetryPolicy): self._RetryPolicy = RetryPolicy @property def InActivityStatus(self): """伸缩组是否处于伸缩活动中,`IN_ACTIVITY`表示处于伸缩活动中,`NOT_IN_ACTIVITY`表示不处于伸缩活动中。 :rtype: str """ return self._InActivityStatus @InActivityStatus.setter def InActivityStatus(self, InActivityStatus): self._InActivityStatus = InActivityStatus @property def Tags(self): """伸缩组标签列表 :rtype: list of Tag """ return self._Tags @Tags.setter def Tags(self, Tags): self._Tags = Tags @property def ServiceSettings(self): """服务设置 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.ServiceSettings` """ return self._ServiceSettings @ServiceSettings.setter def ServiceSettings(self, ServiceSettings): self._ServiceSettings = ServiceSettings @property def Ipv6AddressCount(self): """实例具有IPv6地址数量的配置 :rtype: int """ return self._Ipv6AddressCount @Ipv6AddressCount.setter def Ipv6AddressCount(self, Ipv6AddressCount): self._Ipv6AddressCount = Ipv6AddressCount @property def MultiZoneSubnetPolicy(self): """多可用区/子网策略。 <li> PRIORITY,按照可用区/子网列表的顺序,作为优先级来尝试创建实例,如果优先级最高的可用区/子网可以创建成功,则总在该可用区/子网创建。</li> <li> EQUALITY:每次选择当前实例数最少的可用区/子网进行扩容,使得每个可用区/子网都有机会发生扩容,多次扩容出的实例会打散到多个可用区/子网。</li> :rtype: str """ return self._MultiZoneSubnetPolicy @MultiZoneSubnetPolicy.setter def MultiZoneSubnetPolicy(self, MultiZoneSubnetPolicy): self._MultiZoneSubnetPolicy = MultiZoneSubnetPolicy @property def HealthCheckType(self): """伸缩组实例健康检查类型,取值如下: <li>CVM:根据实例网络状态判断实例是否处于不健康状态,不健康的网络状态即发生实例 PING 不可达事件,详细判断标准可参考[实例健康检查](https://cloud.tencent.com/document/product/377/8553)</li> <li>CLB:根据 CLB 的健康检查状态判断实例是否处于不健康状态,CLB健康检查原理可参考[健康检查](https://cloud.tencent.com/document/product/214/6097)</li> :rtype: str """ return self._HealthCheckType @HealthCheckType.setter def HealthCheckType(self, HealthCheckType): self._HealthCheckType = HealthCheckType @property def LoadBalancerHealthCheckGracePeriod(self): """CLB健康检查宽限期 :rtype: int """ return self._LoadBalancerHealthCheckGracePeriod @LoadBalancerHealthCheckGracePeriod.setter def LoadBalancerHealthCheckGracePeriod(self, LoadBalancerHealthCheckGracePeriod): self._LoadBalancerHealthCheckGracePeriod = LoadBalancerHealthCheckGracePeriod @property def InstanceAllocationPolicy(self): """实例分配策略,取值包括 LAUNCH_CONFIGURATION 和 SPOT_MIXED。 <li> LAUNCH_CONFIGURATION,代表传统的按照启动配置模式。</li> <li> SPOT_MIXED,代表竞价混合模式。目前仅支持启动配置为按量计费模式时使用混合模式,混合模式下,伸缩组将根据设定扩容按量或竞价机型。使用混合模式时,关联的启动配置的计费类型不可被修改。</li> :rtype: str """ return self._InstanceAllocationPolicy @InstanceAllocationPolicy.setter def InstanceAllocationPolicy(self, InstanceAllocationPolicy): self._InstanceAllocationPolicy = InstanceAllocationPolicy @property def SpotMixedAllocationPolicy(self): """竞价混合模式下,各计费类型实例的分配策略。 仅当 InstanceAllocationPolicy 取 SPOT_MIXED 时才会返回有效值。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.SpotMixedAllocationPolicy` """ return self._SpotMixedAllocationPolicy @SpotMixedAllocationPolicy.setter def SpotMixedAllocationPolicy(self, SpotMixedAllocationPolicy): self._SpotMixedAllocationPolicy = SpotMixedAllocationPolicy @property def CapacityRebalance(self): """容量重平衡功能,仅对伸缩组内的竞价实例有效。取值范围: <li> TRUE,开启该功能,当伸缩组内的竞价实例即将被竞价实例服务自动回收前,AS 主动发起竞价实例销毁流程,如果有配置过缩容 hook,则销毁前 hook 会生效。销毁流程启动后,AS 会异步开启一个扩容活动,用于补齐期望实例数。</li> <li> FALSE,不开启该功能,则 AS 等待竞价实例被销毁后才会去扩容补齐伸缩组期望实例数。</li> :rtype: bool """ return self._CapacityRebalance @CapacityRebalance.setter def CapacityRebalance(self, CapacityRebalance): self._CapacityRebalance = CapacityRebalance @property def InstanceNameIndexSettings(self): """实例名称序号相关设置。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.InstanceNameIndexSettings` """ return self._InstanceNameIndexSettings @InstanceNameIndexSettings.setter def InstanceNameIndexSettings(self, InstanceNameIndexSettings): self._InstanceNameIndexSettings = InstanceNameIndexSettings def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._AutoScalingGroupName = params.get("AutoScalingGroupName") self._AutoScalingGroupStatus = params.get("AutoScalingGroupStatus") self._CreatedTime = params.get("CreatedTime") self._DefaultCooldown = params.get("DefaultCooldown") self._DesiredCapacity = params.get("DesiredCapacity") self._EnabledStatus = params.get("EnabledStatus") if params.get("ForwardLoadBalancerSet") is not None: self._ForwardLoadBalancerSet = [] for item in params.get("ForwardLoadBalancerSet"): obj = ForwardLoadBalancer() obj._deserialize(item) self._ForwardLoadBalancerSet.append(obj) self._InstanceCount = params.get("InstanceCount") self._InServiceInstanceCount = params.get("InServiceInstanceCount") self._LaunchConfigurationId = params.get("LaunchConfigurationId") self._LaunchConfigurationName = params.get("LaunchConfigurationName") self._LoadBalancerIdSet = params.get("LoadBalancerIdSet") self._MaxSize = params.get("MaxSize") self._MinSize = params.get("MinSize") self._ProjectId = params.get("ProjectId") self._SubnetIdSet = params.get("SubnetIdSet") self._TerminationPolicySet = params.get("TerminationPolicySet") self._VpcId = params.get("VpcId") self._ZoneSet = params.get("ZoneSet") self._RetryPolicy = params.get("RetryPolicy") self._InActivityStatus = params.get("InActivityStatus") if params.get("Tags") is not None: self._Tags = [] for item in params.get("Tags"): obj = Tag() obj._deserialize(item) self._Tags.append(obj) if params.get("ServiceSettings") is not None: self._ServiceSettings = ServiceSettings() self._ServiceSettings._deserialize(params.get("ServiceSettings")) self._Ipv6AddressCount = params.get("Ipv6AddressCount") self._MultiZoneSubnetPolicy = params.get("MultiZoneSubnetPolicy") self._HealthCheckType = params.get("HealthCheckType") self._LoadBalancerHealthCheckGracePeriod = params.get("LoadBalancerHealthCheckGracePeriod") self._InstanceAllocationPolicy = params.get("InstanceAllocationPolicy") if params.get("SpotMixedAllocationPolicy") is not None: self._SpotMixedAllocationPolicy = SpotMixedAllocationPolicy() self._SpotMixedAllocationPolicy._deserialize(params.get("SpotMixedAllocationPolicy")) self._CapacityRebalance = params.get("CapacityRebalance") if params.get("InstanceNameIndexSettings") is not None: self._InstanceNameIndexSettings = InstanceNameIndexSettings() self._InstanceNameIndexSettings._deserialize(params.get("InstanceNameIndexSettings")) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class AutoScalingGroupAbstract(AbstractModel): """伸缩组简明信息。 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID。 :type AutoScalingGroupId: str :param _AutoScalingGroupName: 伸缩组名称。 :type AutoScalingGroupName: str """ self._AutoScalingGroupId = None self._AutoScalingGroupName = None @property def AutoScalingGroupId(self): """伸缩组ID。 :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def AutoScalingGroupName(self): """伸缩组名称。 :rtype: str """ return self._AutoScalingGroupName @AutoScalingGroupName.setter def AutoScalingGroupName(self, AutoScalingGroupName): self._AutoScalingGroupName = AutoScalingGroupName def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._AutoScalingGroupName = params.get("AutoScalingGroupName") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class AutoScalingNotification(AbstractModel): """弹性伸缩事件通知 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID。 :type AutoScalingGroupId: str :param _NotificationUserGroupIds: 用户组ID列表。 :type NotificationUserGroupIds: list of str :param _NotificationTypes: 通知事件列表。 :type NotificationTypes: list of str :param _AutoScalingNotificationId: 事件通知ID。 :type AutoScalingNotificationId: str :param _TargetType: 通知接收端类型。 :type TargetType: str :param _QueueName: CMQ 队列名。 :type QueueName: str :param _TopicName: CMQ 主题名。 :type TopicName: str """ self._AutoScalingGroupId = None self._NotificationUserGroupIds = None self._NotificationTypes = None self._AutoScalingNotificationId = None self._TargetType = None self._QueueName = None self._TopicName = None @property def AutoScalingGroupId(self): """伸缩组ID。 :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def NotificationUserGroupIds(self): """用户组ID列表。 :rtype: list of str """ return self._NotificationUserGroupIds @NotificationUserGroupIds.setter def NotificationUserGroupIds(self, NotificationUserGroupIds): self._NotificationUserGroupIds = NotificationUserGroupIds @property def NotificationTypes(self): """通知事件列表。 :rtype: list of str """ return self._NotificationTypes @NotificationTypes.setter def NotificationTypes(self, NotificationTypes): self._NotificationTypes = NotificationTypes @property def AutoScalingNotificationId(self): """事件通知ID。 :rtype: str """ return self._AutoScalingNotificationId @AutoScalingNotificationId.setter def AutoScalingNotificationId(self, AutoScalingNotificationId): self._AutoScalingNotificationId = AutoScalingNotificationId @property def TargetType(self): """通知接收端类型。 :rtype: str """ return self._TargetType @TargetType.setter def TargetType(self, TargetType): self._TargetType = TargetType @property def QueueName(self): """CMQ 队列名。 :rtype: str """ return self._QueueName @QueueName.setter def QueueName(self, QueueName): self._QueueName = QueueName @property def TopicName(self): """CMQ 主题名。 :rtype: str """ return self._TopicName @TopicName.setter def TopicName(self, TopicName): self._TopicName = TopicName def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._NotificationUserGroupIds = params.get("NotificationUserGroupIds") self._NotificationTypes = params.get("NotificationTypes") self._AutoScalingNotificationId = params.get("AutoScalingNotificationId") self._TargetType = params.get("TargetType") self._QueueName = params.get("QueueName") self._TopicName = params.get("TopicName") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CancelInstanceRefreshRequest(AbstractModel): """CancelInstanceRefresh请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID。 :type AutoScalingGroupId: str :param _RefreshActivityId: 刷新活动ID。 :type RefreshActivityId: str """ self._AutoScalingGroupId = None self._RefreshActivityId = None @property def AutoScalingGroupId(self): """伸缩组ID。 :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def RefreshActivityId(self): """刷新活动ID。 :rtype: str """ return self._RefreshActivityId @RefreshActivityId.setter def RefreshActivityId(self, RefreshActivityId): self._RefreshActivityId = RefreshActivityId def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._RefreshActivityId = params.get("RefreshActivityId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CancelInstanceRefreshResponse(AbstractModel): """CancelInstanceRefresh返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class ClearLaunchConfigurationAttributesRequest(AbstractModel): """ClearLaunchConfigurationAttributes请求参数结构体 """ def __init__(self): r""" :param _LaunchConfigurationId: 启动配置ID。 :type LaunchConfigurationId: str :param _ClearDataDisks: 是否清空数据盘信息,非必填,默认为 false。 填 true 代表清空“数据盘”信息,清空后基于此新创建的云主机将不含有任何数据盘。 :type ClearDataDisks: bool :param _ClearHostNameSettings: 是否清空云服务器主机名相关设置信息,非必填,默认为 false。 填 true 代表清空主机名设置信息,清空后基于此新创建的云主机将不设置主机名。 :type ClearHostNameSettings: bool :param _ClearInstanceNameSettings: 是否清空云服务器实例名相关设置信息,非必填,默认为 false。 填 true 代表清空主机名设置信息,清空后基于此新创建的云主机将按照“as-{{ 伸缩组AutoScalingGroupName }}”进行设置。 :type ClearInstanceNameSettings: bool :param _ClearDisasterRecoverGroupIds: 是否清空置放群组信息,非必填,默认为 false。 填 true 代表清空置放群组信息,清空后基于此新创建的云主机将不指定任何置放群组。 :type ClearDisasterRecoverGroupIds: bool :param _ClearInstanceTags: 是否清空实例标签列表,非必填,默认为 false。 填 true 代表清空实例标签列表,清空后基于此新创建的云主机将不会绑定列表中的标签。 :type ClearInstanceTags: bool :param _ClearMetadata: 是否清空 MetaData,非必填,默认为 false。填 true 代表清空 MetaData,清空后基于此新创建的云主机将不会关联自定义的 Metadata。 :type ClearMetadata: bool """ self._LaunchConfigurationId = None self._ClearDataDisks = None self._ClearHostNameSettings = None self._ClearInstanceNameSettings = None self._ClearDisasterRecoverGroupIds = None self._ClearInstanceTags = None self._ClearMetadata = None @property def LaunchConfigurationId(self): """启动配置ID。 :rtype: str """ return self._LaunchConfigurationId @LaunchConfigurationId.setter def LaunchConfigurationId(self, LaunchConfigurationId): self._LaunchConfigurationId = LaunchConfigurationId @property def ClearDataDisks(self): """是否清空数据盘信息,非必填,默认为 false。 填 true 代表清空“数据盘”信息,清空后基于此新创建的云主机将不含有任何数据盘。 :rtype: bool """ return self._ClearDataDisks @ClearDataDisks.setter def ClearDataDisks(self, ClearDataDisks): self._ClearDataDisks = ClearDataDisks @property def ClearHostNameSettings(self): """是否清空云服务器主机名相关设置信息,非必填,默认为 false。 填 true 代表清空主机名设置信息,清空后基于此新创建的云主机将不设置主机名。 :rtype: bool """ return self._ClearHostNameSettings @ClearHostNameSettings.setter def ClearHostNameSettings(self, ClearHostNameSettings): self._ClearHostNameSettings = ClearHostNameSettings @property def ClearInstanceNameSettings(self): """是否清空云服务器实例名相关设置信息,非必填,默认为 false。 填 true 代表清空主机名设置信息,清空后基于此新创建的云主机将按照“as-{{ 伸缩组AutoScalingGroupName }}”进行设置。 :rtype: bool """ return self._ClearInstanceNameSettings @ClearInstanceNameSettings.setter def ClearInstanceNameSettings(self, ClearInstanceNameSettings): self._ClearInstanceNameSettings = ClearInstanceNameSettings @property def ClearDisasterRecoverGroupIds(self): """是否清空置放群组信息,非必填,默认为 false。 填 true 代表清空置放群组信息,清空后基于此新创建的云主机将不指定任何置放群组。 :rtype: bool """ return self._ClearDisasterRecoverGroupIds @ClearDisasterRecoverGroupIds.setter def ClearDisasterRecoverGroupIds(self, ClearDisasterRecoverGroupIds): self._ClearDisasterRecoverGroupIds = ClearDisasterRecoverGroupIds @property def ClearInstanceTags(self): """是否清空实例标签列表,非必填,默认为 false。 填 true 代表清空实例标签列表,清空后基于此新创建的云主机将不会绑定列表中的标签。 :rtype: bool """ return self._ClearInstanceTags @ClearInstanceTags.setter def ClearInstanceTags(self, ClearInstanceTags): self._ClearInstanceTags = ClearInstanceTags @property def ClearMetadata(self): """是否清空 MetaData,非必填,默认为 false。填 true 代表清空 MetaData,清空后基于此新创建的云主机将不会关联自定义的 Metadata。 :rtype: bool """ return self._ClearMetadata @ClearMetadata.setter def ClearMetadata(self, ClearMetadata): self._ClearMetadata = ClearMetadata def _deserialize(self, params): self._LaunchConfigurationId = params.get("LaunchConfigurationId") self._ClearDataDisks = params.get("ClearDataDisks") self._ClearHostNameSettings = params.get("ClearHostNameSettings") self._ClearInstanceNameSettings = params.get("ClearInstanceNameSettings") self._ClearDisasterRecoverGroupIds = params.get("ClearDisasterRecoverGroupIds") self._ClearInstanceTags = params.get("ClearInstanceTags") self._ClearMetadata = params.get("ClearMetadata") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ClearLaunchConfigurationAttributesResponse(AbstractModel): """ClearLaunchConfigurationAttributes返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class CompleteLifecycleActionRequest(AbstractModel): """CompleteLifecycleAction请求参数结构体 """ def __init__(self): r""" :param _LifecycleHookId: 生命周期挂钩ID :type LifecycleHookId: str :param _LifecycleActionResult: 生命周期动作的结果,取值范围为“CONTINUE”或“ABANDON” :type LifecycleActionResult: str :param _InstanceId: 实例ID,“InstanceId”和“LifecycleActionToken”必须填充其中一个 :type InstanceId: str :param _LifecycleActionToken: “InstanceId”和“LifecycleActionToken”必须填充其中一个 :type LifecycleActionToken: str """ self._LifecycleHookId = None self._LifecycleActionResult = None self._InstanceId = None self._LifecycleActionToken = None @property def LifecycleHookId(self): """生命周期挂钩ID :rtype: str """ return self._LifecycleHookId @LifecycleHookId.setter def LifecycleHookId(self, LifecycleHookId): self._LifecycleHookId = LifecycleHookId @property def LifecycleActionResult(self): """生命周期动作的结果,取值范围为“CONTINUE”或“ABANDON” :rtype: str """ return self._LifecycleActionResult @LifecycleActionResult.setter def LifecycleActionResult(self, LifecycleActionResult): self._LifecycleActionResult = LifecycleActionResult @property def InstanceId(self): """实例ID,“InstanceId”和“LifecycleActionToken”必须填充其中一个 :rtype: str """ return self._InstanceId @InstanceId.setter def InstanceId(self, InstanceId): self._InstanceId = InstanceId @property def LifecycleActionToken(self): """“InstanceId”和“LifecycleActionToken”必须填充其中一个 :rtype: str """ return self._LifecycleActionToken @LifecycleActionToken.setter def LifecycleActionToken(self, LifecycleActionToken): self._LifecycleActionToken = LifecycleActionToken def _deserialize(self, params): self._LifecycleHookId = params.get("LifecycleHookId") self._LifecycleActionResult = params.get("LifecycleActionResult") self._InstanceId = params.get("InstanceId") self._LifecycleActionToken = params.get("LifecycleActionToken") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CompleteLifecycleActionResponse(AbstractModel): """CompleteLifecycleAction返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class CreateAutoScalingGroupFromInstanceRequest(AbstractModel): """CreateAutoScalingGroupFromInstance请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupName: 伸缩组名称,在您账号中必须唯一。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超55个字节。 :type AutoScalingGroupName: str :param _InstanceId: 实例ID :type InstanceId: str :param _MinSize: 最小实例数,取值范围为0-2000。 :type MinSize: int :param _MaxSize: 最大实例数,取值范围为0-2000。 :type MaxSize: int :param _DesiredCapacity: 期望实例数,大小介于最小实例数和最大实例数之间。 :type DesiredCapacity: int :param _InheritInstanceTag: 是否继承实例标签,默认值为False :type InheritInstanceTag: bool """ self._AutoScalingGroupName = None self._InstanceId = None self._MinSize = None self._MaxSize = None self._DesiredCapacity = None self._InheritInstanceTag = None @property def AutoScalingGroupName(self): """伸缩组名称,在您账号中必须唯一。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超55个字节。 :rtype: str """ return self._AutoScalingGroupName @AutoScalingGroupName.setter def AutoScalingGroupName(self, AutoScalingGroupName): self._AutoScalingGroupName = AutoScalingGroupName @property def InstanceId(self): """实例ID :rtype: str """ return self._InstanceId @InstanceId.setter def InstanceId(self, InstanceId): self._InstanceId = InstanceId @property def MinSize(self): """最小实例数,取值范围为0-2000。 :rtype: int """ return self._MinSize @MinSize.setter def MinSize(self, MinSize): self._MinSize = MinSize @property def MaxSize(self): """最大实例数,取值范围为0-2000。 :rtype: int """ return self._MaxSize @MaxSize.setter def MaxSize(self, MaxSize): self._MaxSize = MaxSize @property def DesiredCapacity(self): """期望实例数,大小介于最小实例数和最大实例数之间。 :rtype: int """ return self._DesiredCapacity @DesiredCapacity.setter def DesiredCapacity(self, DesiredCapacity): self._DesiredCapacity = DesiredCapacity @property def InheritInstanceTag(self): """是否继承实例标签,默认值为False :rtype: bool """ return self._InheritInstanceTag @InheritInstanceTag.setter def InheritInstanceTag(self, InheritInstanceTag): self._InheritInstanceTag = InheritInstanceTag def _deserialize(self, params): self._AutoScalingGroupName = params.get("AutoScalingGroupName") self._InstanceId = params.get("InstanceId") self._MinSize = params.get("MinSize") self._MaxSize = params.get("MaxSize") self._DesiredCapacity = params.get("DesiredCapacity") self._InheritInstanceTag = params.get("InheritInstanceTag") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CreateAutoScalingGroupFromInstanceResponse(AbstractModel): """CreateAutoScalingGroupFromInstance返回参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._AutoScalingGroupId = None self._RequestId = None @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._RequestId = params.get("RequestId") class CreateAutoScalingGroupRequest(AbstractModel): """CreateAutoScalingGroup请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupName: 伸缩组名称,在您账号中必须唯一。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超55个字节。 :type AutoScalingGroupName: str :param _LaunchConfigurationId: 启动配置ID :type LaunchConfigurationId: str :param _MaxSize: 最大实例数,取值范围为0-2000。 :type MaxSize: int :param _MinSize: 最小实例数,取值范围为0-2000。 :type MinSize: int :param _VpcId: VPC ID,基础网络则填空字符串 :type VpcId: str :param _DefaultCooldown: 默认冷却时间,单位秒,默认值为300 :type DefaultCooldown: int :param _DesiredCapacity: 期望实例数,大小介于最小实例数和最大实例数之间 :type DesiredCapacity: int :param _LoadBalancerIds: 传统负载均衡器ID列表,目前长度上限为20,LoadBalancerIds 和 ForwardLoadBalancers 二者同时最多只能指定一个 :type LoadBalancerIds: list of str :param _ProjectId: 伸缩组内实例所属项目ID。不填为默认项目。 :type ProjectId: int :param _ForwardLoadBalancers: 应用型负载均衡器列表,目前长度上限为100,LoadBalancerIds 和 ForwardLoadBalancers 二者同时最多只能指定一个 :type ForwardLoadBalancers: list of ForwardLoadBalancer :param _SubnetIds: 子网ID列表,VPC场景下必须指定子网。多个子网以填写顺序为优先级,依次进行尝试,直至可以成功创建实例。 :type SubnetIds: list of str :param _TerminationPolicies: 销毁策略,目前长度上限为1。取值包括 OLDEST_INSTANCE 和 NEWEST_INSTANCE,默认取值为 OLDEST_INSTANCE。 <li> OLDEST_INSTANCE 优先销毁伸缩组中最旧的实例。</li> <li> NEWEST_INSTANCE,优先销毁伸缩组中最新的实例。</li> :type TerminationPolicies: list of str :param _Zones: 可用区列表,基础网络场景下必须指定可用区。多个可用区以填写顺序为优先级,依次进行尝试,直至可以成功创建实例。 :type Zones: list of str :param _RetryPolicy: 重试策略,取值包括 IMMEDIATE_RETRY、 INCREMENTAL_INTERVALS、NO_RETRY,默认取值为 IMMEDIATE_RETRY。部分成功的伸缩活动判定为一次失败活动。 <li> IMMEDIATE_RETRY,立即重试,在较短时间内快速重试,连续失败超过一定次数(5次)后不再重试。</li> <li> INCREMENTAL_INTERVALS,间隔递增重试,随着连续失败次数的增加,重试间隔逐渐增大。前 10 次重试间隔与立即重试模式相同,后续逐步递增至 10 分钟、30 分钟、60 分钟、一天。</li> <li> NO_RETRY,不进行重试,直到再次收到用户调用或者告警信息后才会重试。</li> :type RetryPolicy: str :param _ZonesCheckPolicy: 可用区校验策略,取值包括 ALL 和 ANY,默认取值为ANY。 <li> ALL,所有可用区(Zone)或子网(SubnetId)都可用则通过校验,否则校验报错。</li> <li> ANY,存在任何一个可用区(Zone)或子网(SubnetId)可用则通过校验,否则校验报错。</li> 可用区或子网不可用的常见原因包括该可用区CVM实例类型售罄、该可用区CBS云盘售罄、该可用区配额不足、该子网IP不足等。 如果 Zones/SubnetIds 中可用区或者子网不存在,则无论 ZonesCheckPolicy 采用何种取值,都会校验报错。 :type ZonesCheckPolicy: str :param _Tags: 标签描述列表。通过指定该参数可以支持绑定标签到伸缩组。同时绑定标签到相应的资源实例。每个伸缩组最多支持30个标签。 :type Tags: list of Tag :param _ServiceSettings: 服务设置,包括云监控不健康替换等服务设置。 :type ServiceSettings: :class:`tencentcloud.autoscaling.v20180419.models.ServiceSettings` :param _Ipv6AddressCount: 实例具有IPv6地址数量的配置,取值包括 0、1,默认值为0。 :type Ipv6AddressCount: int :param _MultiZoneSubnetPolicy: 多可用区/子网策略,取值包括 PRIORITY 和 EQUALITY,默认为 PRIORITY。 <li> PRIORITY,按照可用区/子网列表的顺序,作为优先级来尝试创建实例,如果优先级最高的可用区/子网可以创建成功,则总在该可用区/子网创建。</li> <li> EQUALITY:扩容出的实例会打散到多个可用区/子网,保证扩容后的各个可用区/子网实例数相对均衡。</li> 与本策略相关的注意点: <li> 当伸缩组为基础网络时,本策略适用于多可用区;当伸缩组为VPC网络时,本策略适用于多子网,此时不再考虑可用区因素,例如四个子网ABCD,其中ABC处于可用区1,D处于可用区2,此时考虑子网ABCD进行排序,而不考虑可用区1、2。</li> <li> 本策略适用于多可用区/子网,不适用于启动配置的多机型。多机型按照优先级策略进行选择。</li> <li> 按照 PRIORITY 策略创建实例时,先保证多机型的策略,后保证多可用区/子网的策略。例如多机型A、B,多子网1、2、3,会按照A1、A2、A3、B1、B2、B3 进行尝试,如果A1售罄,会尝试A2(而非B1)。</li> :type MultiZoneSubnetPolicy: str :param _HealthCheckType: 伸缩组实例健康检查类型,取值如下: <li>CVM:根据实例网络状态判断实例是否处于不健康状态,不健康的网络状态即发生实例 PING 不可达事件,详细判断标准可参考[实例健康检查](https://cloud.tencent.com/document/product/377/8553)</li> <li>CLB:根据 CLB 的健康检查状态判断实例是否处于不健康状态,CLB健康检查原理可参考[健康检查](https://cloud.tencent.com/document/product/214/6097) </li> 如果选择了`CLB`类型,伸缩组将同时检查实例网络状态与CLB健康检查状态,如果出现实例网络状态不健康,实例将被标记为 UNHEALTHY 状态;如果出现 CLB 健康检查状态异常,实例将被标记为CLB_UNHEALTHY 状态,如果两个异常状态同时出现,实例`HealthStatus`字段将返回 UNHEALTHY|CLB_UNHEALTHY。默认值:CLB :type HealthCheckType: str :param _LoadBalancerHealthCheckGracePeriod: CLB健康检查宽限期,当扩容的实例进入`IN_SERVICE`后,在宽限期时间范围内将不会被标记为不健康`CLB_UNHEALTHY`。<br>默认值:0。取值范围[0, 7200],单位:秒。 :type LoadBalancerHealthCheckGracePeriod: int :param _InstanceAllocationPolicy: 实例分配策略,取值包括 LAUNCH_CONFIGURATION 和 SPOT_MIXED,默认取 LAUNCH_CONFIGURATION。 <li> LAUNCH_CONFIGURATION,代表传统的按照启动配置模式。</li> <li> SPOT_MIXED,代表竞价混合模式。目前仅支持启动配置为按量计费模式时使用混合模式,混合模式下,伸缩组将根据设定扩容按量或竞价机型。使用混合模式时,关联的启动配置的计费类型不可被修改。</li> :type InstanceAllocationPolicy: str :param _SpotMixedAllocationPolicy: 竞价混合模式下,各计费类型实例的分配策略。 仅当 InstanceAllocationPolicy 取 SPOT_MIXED 时可用。 :type SpotMixedAllocationPolicy: :class:`tencentcloud.autoscaling.v20180419.models.SpotMixedAllocationPolicy` :param _CapacityRebalance: 容量重平衡功能,仅对伸缩组内的竞价实例有效。取值范围: <li> TRUE,开启该功能,当伸缩组内的竞价实例即将被竞价实例服务自动回收前,AS 主动发起竞价实例销毁流程,如果有配置过缩容 hook,则销毁前 hook 会生效。销毁流程启动后,AS 会异步开启一个扩容活动,用于补齐期望实例数。</li> <li> FALSE,不开启该功能,则 AS 等待竞价实例被销毁后才会去扩容补齐伸缩组期望实例数。</li> 默认取 FALSE。 :type CapacityRebalance: bool :param _InstanceNameIndexSettings: 实例名称序号相关设置。若不指定该参数,则默认不开启。开启后为伸缩组内自动创建的实例名称添加递增的数字序号。 :type InstanceNameIndexSettings: :class:`tencentcloud.autoscaling.v20180419.models.InstanceNameIndexSettings` """ self._AutoScalingGroupName = None self._LaunchConfigurationId = None self._MaxSize = None self._MinSize = None self._VpcId = None self._DefaultCooldown = None self._DesiredCapacity = None self._LoadBalancerIds = None self._ProjectId = None self._ForwardLoadBalancers = None self._SubnetIds = None self._TerminationPolicies = None self._Zones = None self._RetryPolicy = None self._ZonesCheckPolicy = None self._Tags = None self._ServiceSettings = None self._Ipv6AddressCount = None self._MultiZoneSubnetPolicy = None self._HealthCheckType = None self._LoadBalancerHealthCheckGracePeriod = None self._InstanceAllocationPolicy = None self._SpotMixedAllocationPolicy = None self._CapacityRebalance = None self._InstanceNameIndexSettings = None @property def AutoScalingGroupName(self): """伸缩组名称,在您账号中必须唯一。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超55个字节。 :rtype: str """ return self._AutoScalingGroupName @AutoScalingGroupName.setter def AutoScalingGroupName(self, AutoScalingGroupName): self._AutoScalingGroupName = AutoScalingGroupName @property def LaunchConfigurationId(self): """启动配置ID :rtype: str """ return self._LaunchConfigurationId @LaunchConfigurationId.setter def LaunchConfigurationId(self, LaunchConfigurationId): self._LaunchConfigurationId = LaunchConfigurationId @property def MaxSize(self): """最大实例数,取值范围为0-2000。 :rtype: int """ return self._MaxSize @MaxSize.setter def MaxSize(self, MaxSize): self._MaxSize = MaxSize @property def MinSize(self): """最小实例数,取值范围为0-2000。 :rtype: int """ return self._MinSize @MinSize.setter def MinSize(self, MinSize): self._MinSize = MinSize @property def VpcId(self): """VPC ID,基础网络则填空字符串 :rtype: str """ return self._VpcId @VpcId.setter def VpcId(self, VpcId): self._VpcId = VpcId @property def DefaultCooldown(self): """默认冷却时间,单位秒,默认值为300 :rtype: int """ return self._DefaultCooldown @DefaultCooldown.setter def DefaultCooldown(self, DefaultCooldown): self._DefaultCooldown = DefaultCooldown @property def DesiredCapacity(self): """期望实例数,大小介于最小实例数和最大实例数之间 :rtype: int """ return self._DesiredCapacity @DesiredCapacity.setter def DesiredCapacity(self, DesiredCapacity): self._DesiredCapacity = DesiredCapacity @property def LoadBalancerIds(self): """传统负载均衡器ID列表,目前长度上限为20,LoadBalancerIds 和 ForwardLoadBalancers 二者同时最多只能指定一个 :rtype: list of str """ return self._LoadBalancerIds @LoadBalancerIds.setter def LoadBalancerIds(self, LoadBalancerIds): self._LoadBalancerIds = LoadBalancerIds @property def ProjectId(self): """伸缩组内实例所属项目ID。不填为默认项目。 :rtype: int """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def ForwardLoadBalancers(self): """应用型负载均衡器列表,目前长度上限为100,LoadBalancerIds 和 ForwardLoadBalancers 二者同时最多只能指定一个 :rtype: list of ForwardLoadBalancer """ return self._ForwardLoadBalancers @ForwardLoadBalancers.setter def ForwardLoadBalancers(self, ForwardLoadBalancers): self._ForwardLoadBalancers = ForwardLoadBalancers @property def SubnetIds(self): """子网ID列表,VPC场景下必须指定子网。多个子网以填写顺序为优先级,依次进行尝试,直至可以成功创建实例。 :rtype: list of str """ return self._SubnetIds @SubnetIds.setter def SubnetIds(self, SubnetIds): self._SubnetIds = SubnetIds @property def TerminationPolicies(self): """销毁策略,目前长度上限为1。取值包括 OLDEST_INSTANCE 和 NEWEST_INSTANCE,默认取值为 OLDEST_INSTANCE。 <li> OLDEST_INSTANCE 优先销毁伸缩组中最旧的实例。</li> <li> NEWEST_INSTANCE,优先销毁伸缩组中最新的实例。</li> :rtype: list of str """ return self._TerminationPolicies @TerminationPolicies.setter def TerminationPolicies(self, TerminationPolicies): self._TerminationPolicies = TerminationPolicies @property def Zones(self): """可用区列表,基础网络场景下必须指定可用区。多个可用区以填写顺序为优先级,依次进行尝试,直至可以成功创建实例。 :rtype: list of str """ return self._Zones @Zones.setter def Zones(self, Zones): self._Zones = Zones @property def RetryPolicy(self): """重试策略,取值包括 IMMEDIATE_RETRY、 INCREMENTAL_INTERVALS、NO_RETRY,默认取值为 IMMEDIATE_RETRY。部分成功的伸缩活动判定为一次失败活动。 <li> IMMEDIATE_RETRY,立即重试,在较短时间内快速重试,连续失败超过一定次数(5次)后不再重试。</li> <li> INCREMENTAL_INTERVALS,间隔递增重试,随着连续失败次数的增加,重试间隔逐渐增大。前 10 次重试间隔与立即重试模式相同,后续逐步递增至 10 分钟、30 分钟、60 分钟、一天。</li> <li> NO_RETRY,不进行重试,直到再次收到用户调用或者告警信息后才会重试。</li> :rtype: str """ return self._RetryPolicy @RetryPolicy.setter def RetryPolicy(self, RetryPolicy): self._RetryPolicy = RetryPolicy @property def ZonesCheckPolicy(self): """可用区校验策略,取值包括 ALL 和 ANY,默认取值为ANY。 <li> ALL,所有可用区(Zone)或子网(SubnetId)都可用则通过校验,否则校验报错。</li> <li> ANY,存在任何一个可用区(Zone)或子网(SubnetId)可用则通过校验,否则校验报错。</li> 可用区或子网不可用的常见原因包括该可用区CVM实例类型售罄、该可用区CBS云盘售罄、该可用区配额不足、该子网IP不足等。 如果 Zones/SubnetIds 中可用区或者子网不存在,则无论 ZonesCheckPolicy 采用何种取值,都会校验报错。 :rtype: str """ return self._ZonesCheckPolicy @ZonesCheckPolicy.setter def ZonesCheckPolicy(self, ZonesCheckPolicy): self._ZonesCheckPolicy = ZonesCheckPolicy @property def Tags(self): """标签描述列表。通过指定该参数可以支持绑定标签到伸缩组。同时绑定标签到相应的资源实例。每个伸缩组最多支持30个标签。 :rtype: list of Tag """ return self._Tags @Tags.setter def Tags(self, Tags): self._Tags = Tags @property def ServiceSettings(self): """服务设置,包括云监控不健康替换等服务设置。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.ServiceSettings` """ return self._ServiceSettings @ServiceSettings.setter def ServiceSettings(self, ServiceSettings): self._ServiceSettings = ServiceSettings @property def Ipv6AddressCount(self): """实例具有IPv6地址数量的配置,取值包括 0、1,默认值为0。 :rtype: int """ return self._Ipv6AddressCount @Ipv6AddressCount.setter def Ipv6AddressCount(self, Ipv6AddressCount): self._Ipv6AddressCount = Ipv6AddressCount @property def MultiZoneSubnetPolicy(self): """多可用区/子网策略,取值包括 PRIORITY 和 EQUALITY,默认为 PRIORITY。 <li> PRIORITY,按照可用区/子网列表的顺序,作为优先级来尝试创建实例,如果优先级最高的可用区/子网可以创建成功,则总在该可用区/子网创建。</li> <li> EQUALITY:扩容出的实例会打散到多个可用区/子网,保证扩容后的各个可用区/子网实例数相对均衡。</li> 与本策略相关的注意点: <li> 当伸缩组为基础网络时,本策略适用于多可用区;当伸缩组为VPC网络时,本策略适用于多子网,此时不再考虑可用区因素,例如四个子网ABCD,其中ABC处于可用区1,D处于可用区2,此时考虑子网ABCD进行排序,而不考虑可用区1、2。</li> <li> 本策略适用于多可用区/子网,不适用于启动配置的多机型。多机型按照优先级策略进行选择。</li> <li> 按照 PRIORITY 策略创建实例时,先保证多机型的策略,后保证多可用区/子网的策略。例如多机型A、B,多子网1、2、3,会按照A1、A2、A3、B1、B2、B3 进行尝试,如果A1售罄,会尝试A2(而非B1)。</li> :rtype: str """ return self._MultiZoneSubnetPolicy @MultiZoneSubnetPolicy.setter def MultiZoneSubnetPolicy(self, MultiZoneSubnetPolicy): self._MultiZoneSubnetPolicy = MultiZoneSubnetPolicy @property def HealthCheckType(self): """伸缩组实例健康检查类型,取值如下: <li>CVM:根据实例网络状态判断实例是否处于不健康状态,不健康的网络状态即发生实例 PING 不可达事件,详细判断标准可参考[实例健康检查](https://cloud.tencent.com/document/product/377/8553)</li> <li>CLB:根据 CLB 的健康检查状态判断实例是否处于不健康状态,CLB健康检查原理可参考[健康检查](https://cloud.tencent.com/document/product/214/6097) </li> 如果选择了`CLB`类型,伸缩组将同时检查实例网络状态与CLB健康检查状态,如果出现实例网络状态不健康,实例将被标记为 UNHEALTHY 状态;如果出现 CLB 健康检查状态异常,实例将被标记为CLB_UNHEALTHY 状态,如果两个异常状态同时出现,实例`HealthStatus`字段将返回 UNHEALTHY|CLB_UNHEALTHY。默认值:CLB :rtype: str """ return self._HealthCheckType @HealthCheckType.setter def HealthCheckType(self, HealthCheckType): self._HealthCheckType = HealthCheckType @property def LoadBalancerHealthCheckGracePeriod(self): """CLB健康检查宽限期,当扩容的实例进入`IN_SERVICE`后,在宽限期时间范围内将不会被标记为不健康`CLB_UNHEALTHY`。<br>默认值:0。取值范围[0, 7200],单位:秒。 :rtype: int """ return self._LoadBalancerHealthCheckGracePeriod @LoadBalancerHealthCheckGracePeriod.setter def LoadBalancerHealthCheckGracePeriod(self, LoadBalancerHealthCheckGracePeriod): self._LoadBalancerHealthCheckGracePeriod = LoadBalancerHealthCheckGracePeriod @property def InstanceAllocationPolicy(self): """实例分配策略,取值包括 LAUNCH_CONFIGURATION 和 SPOT_MIXED,默认取 LAUNCH_CONFIGURATION。 <li> LAUNCH_CONFIGURATION,代表传统的按照启动配置模式。</li> <li> SPOT_MIXED,代表竞价混合模式。目前仅支持启动配置为按量计费模式时使用混合模式,混合模式下,伸缩组将根据设定扩容按量或竞价机型。使用混合模式时,关联的启动配置的计费类型不可被修改。</li> :rtype: str """ return self._InstanceAllocationPolicy @InstanceAllocationPolicy.setter def InstanceAllocationPolicy(self, InstanceAllocationPolicy): self._InstanceAllocationPolicy = InstanceAllocationPolicy @property def SpotMixedAllocationPolicy(self): """竞价混合模式下,各计费类型实例的分配策略。 仅当 InstanceAllocationPolicy 取 SPOT_MIXED 时可用。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.SpotMixedAllocationPolicy` """ return self._SpotMixedAllocationPolicy @SpotMixedAllocationPolicy.setter def SpotMixedAllocationPolicy(self, SpotMixedAllocationPolicy): self._SpotMixedAllocationPolicy = SpotMixedAllocationPolicy @property def CapacityRebalance(self): """容量重平衡功能,仅对伸缩组内的竞价实例有效。取值范围: <li> TRUE,开启该功能,当伸缩组内的竞价实例即将被竞价实例服务自动回收前,AS 主动发起竞价实例销毁流程,如果有配置过缩容 hook,则销毁前 hook 会生效。销毁流程启动后,AS 会异步开启一个扩容活动,用于补齐期望实例数。</li> <li> FALSE,不开启该功能,则 AS 等待竞价实例被销毁后才会去扩容补齐伸缩组期望实例数。</li> 默认取 FALSE。 :rtype: bool """ return self._CapacityRebalance @CapacityRebalance.setter def CapacityRebalance(self, CapacityRebalance): self._CapacityRebalance = CapacityRebalance @property def InstanceNameIndexSettings(self): """实例名称序号相关设置。若不指定该参数,则默认不开启。开启后为伸缩组内自动创建的实例名称添加递增的数字序号。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.InstanceNameIndexSettings` """ return self._InstanceNameIndexSettings @InstanceNameIndexSettings.setter def InstanceNameIndexSettings(self, InstanceNameIndexSettings): self._InstanceNameIndexSettings = InstanceNameIndexSettings def _deserialize(self, params): self._AutoScalingGroupName = params.get("AutoScalingGroupName") self._LaunchConfigurationId = params.get("LaunchConfigurationId") self._MaxSize = params.get("MaxSize") self._MinSize = params.get("MinSize") self._VpcId = params.get("VpcId") self._DefaultCooldown = params.get("DefaultCooldown") self._DesiredCapacity = params.get("DesiredCapacity") self._LoadBalancerIds = params.get("LoadBalancerIds") self._ProjectId = params.get("ProjectId") if params.get("ForwardLoadBalancers") is not None: self._ForwardLoadBalancers = [] for item in params.get("ForwardLoadBalancers"): obj = ForwardLoadBalancer() obj._deserialize(item) self._ForwardLoadBalancers.append(obj) self._SubnetIds = params.get("SubnetIds") self._TerminationPolicies = params.get("TerminationPolicies") self._Zones = params.get("Zones") self._RetryPolicy = params.get("RetryPolicy") self._ZonesCheckPolicy = params.get("ZonesCheckPolicy") if params.get("Tags") is not None: self._Tags = [] for item in params.get("Tags"): obj = Tag() obj._deserialize(item) self._Tags.append(obj) if params.get("ServiceSettings") is not None: self._ServiceSettings = ServiceSettings() self._ServiceSettings._deserialize(params.get("ServiceSettings")) self._Ipv6AddressCount = params.get("Ipv6AddressCount") self._MultiZoneSubnetPolicy = params.get("MultiZoneSubnetPolicy") self._HealthCheckType = params.get("HealthCheckType") self._LoadBalancerHealthCheckGracePeriod = params.get("LoadBalancerHealthCheckGracePeriod") self._InstanceAllocationPolicy = params.get("InstanceAllocationPolicy") if params.get("SpotMixedAllocationPolicy") is not None: self._SpotMixedAllocationPolicy = SpotMixedAllocationPolicy() self._SpotMixedAllocationPolicy._deserialize(params.get("SpotMixedAllocationPolicy")) self._CapacityRebalance = params.get("CapacityRebalance") if params.get("InstanceNameIndexSettings") is not None: self._InstanceNameIndexSettings = InstanceNameIndexSettings() self._InstanceNameIndexSettings._deserialize(params.get("InstanceNameIndexSettings")) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CreateAutoScalingGroupResponse(AbstractModel): """CreateAutoScalingGroup返回参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._AutoScalingGroupId = None self._RequestId = None @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._RequestId = params.get("RequestId") class CreateLaunchConfigurationRequest(AbstractModel): """CreateLaunchConfiguration请求参数结构体 """ def __init__(self): r""" :param _LaunchConfigurationName: 启动配置显示名称。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超60个字节。 :type LaunchConfigurationName: str :param _ImageId: 指定有效的[镜像](https://cloud.tencent.com/document/product/213/4940)ID,格式形如`img-8toqc6s3`。镜像Id与镜像族名称,二者必填一个且只能填写一个。镜像类型分为四种:<br/><li>公共镜像</li><li>自定义镜像</li><li>共享镜像</li><li>服务市场镜像</li><br/>可通过以下方式获取可用的镜像ID:<br/><li>`公共镜像`、`自定义镜像`、`共享镜像`的镜像ID可通过登录[控制台](https://console.cloud.tencent.com/cvm/image?rid=1&imageType=PUBLIC_IMAGE)查询;`服务镜像市场`的镜像ID可通过[云市场](https://market.cloud.tencent.com/list)查询。</li><li>通过调用接口 [DescribeImages](https://cloud.tencent.com/document/api/213/15715) ,取返回信息中的`ImageId`字段。</li> :type ImageId: str :param _ProjectId: 启动配置所属项目ID。不填为默认项目。 注意:伸缩组内实例所属项目ID取伸缩组项目ID,与这里取值无关。 :type ProjectId: int :param _InstanceType: 实例机型。不同实例机型指定了不同的资源规格,具体取值可通过调用接口 [DescribeInstanceTypeConfigs](https://cloud.tencent.com/document/api/213/15749) 来获得最新的规格表或参见[实例类型](https://cloud.tencent.com/document/product/213/11518)描述。 `InstanceType`和`InstanceTypes`参数互斥,二者必填一个且只能填写一个。 :type InstanceType: str :param _SystemDisk: 实例系统盘配置信息。若不指定该参数,则按照系统默认值进行分配。 :type SystemDisk: :class:`tencentcloud.autoscaling.v20180419.models.SystemDisk` :param _DataDisks: 实例数据盘配置信息。若不指定该参数,则默认不购买数据盘,最多支持指定11块数据盘。 :type DataDisks: list of DataDisk :param _InternetAccessible: 公网带宽相关信息设置。若不指定该参数,则默认公网带宽为0Mbps。 :type InternetAccessible: :class:`tencentcloud.autoscaling.v20180419.models.InternetAccessible` :param _LoginSettings: 实例登录设置。通过该参数可以设置实例的登录方式密码、密钥或保持镜像的原始登录设置。默认情况下会随机生成密码,并以站内信方式知会到用户。 :type LoginSettings: :class:`tencentcloud.autoscaling.v20180419.models.LoginSettings` :param _SecurityGroupIds: 实例所属安全组。该参数可以通过调用 [DescribeSecurityGroups](https://cloud.tencent.com/document/api/215/15808) 的返回值中的`SecurityGroupId`字段来获取。若不指定该参数,则默认不绑定安全组。 :type SecurityGroupIds: list of str :param _EnhancedService: 增强服务。通过该参数可以指定是否开启云安全、云监控等服务。若不指定该参数,则默认开启云监控、云安全服务。 :type EnhancedService: :class:`tencentcloud.autoscaling.v20180419.models.EnhancedService` :param _UserData: 经过 Base64 编码后的自定义数据,最大长度不超过16KB。 :type UserData: str :param _InstanceChargeType: 实例计费类型,CVM默认值按照POSTPAID_BY_HOUR处理。 <li>POSTPAID_BY_HOUR:按小时后付费</li> <li>SPOTPAID:竞价付费</li> <li>PREPAID:预付费,即包年包月</li> <li>CDCPAID:专用集群付费</li> :type InstanceChargeType: str :param _InstanceMarketOptions: 实例的市场相关选项,如竞价实例相关参数,若指定实例的付费模式为竞价付费则该参数必传。 :type InstanceMarketOptions: :class:`tencentcloud.autoscaling.v20180419.models.InstanceMarketOptionsRequest` :param _InstanceTypes: 实例机型列表,不同实例机型指定了不同的资源规格,最多支持10种实例机型。 `InstanceType`和`InstanceTypes`参数互斥,二者必填一个且只能填写一个。 :type InstanceTypes: list of str :param _CamRoleName: CAM角色名称。可通过DescribeRoleList接口返回值中的roleName获取。 :type CamRoleName: str :param _InstanceTypesCheckPolicy: 实例类型校验策略,取值包括 ALL 和 ANY,默认取值为ANY。 <li> ALL,所有实例类型(InstanceType)都可用则通过校验,否则校验报错。</li> <li> ANY,存在任何一个实例类型(InstanceType)可用则通过校验,否则校验报错。</li> 实例类型不可用的常见原因包括该实例类型售罄、对应云盘售罄等。 如果 InstanceTypes 中一款机型不存在或者已下线,则无论 InstanceTypesCheckPolicy 采用何种取值,都会校验报错。 :type InstanceTypesCheckPolicy: str :param _InstanceTags: 标签列表。通过指定该参数,可以为扩容的实例绑定标签。最多支持指定10个标签。 :type InstanceTags: list of InstanceTag :param _Tags: 标签描述列表。通过指定该参数可以支持绑定标签到启动配置。每个启动配置最多支持30个标签。 :type Tags: list of Tag :param _HostNameSettings: 云服务器主机名(HostName)的相关设置。 :type HostNameSettings: :class:`tencentcloud.autoscaling.v20180419.models.HostNameSettings` :param _InstanceNameSettings: 云服务器实例名(InstanceName)的相关设置。 如果用户在启动配置中设置此字段,则伸缩组创建出的实例 InstanceName 参照此字段进行设置,并传递给 CVM;如果用户未在启动配置中设置此字段,则伸缩组创建出的实例 InstanceName 按照“as-{{ 伸缩组AutoScalingGroupName }}”进行设置,并传递给 CVM。 :type InstanceNameSettings: :class:`tencentcloud.autoscaling.v20180419.models.InstanceNameSettings` :param _InstanceChargePrepaid: 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月实例的购买时长、是否设置自动续费等属性。若指定实例的付费模式为预付费则该参数必传。 :type InstanceChargePrepaid: :class:`tencentcloud.autoscaling.v20180419.models.InstanceChargePrepaid` :param _DiskTypePolicy: 云盘类型选择策略,默认取值 ORIGINAL,取值范围: <li>ORIGINAL:使用设置的云盘类型</li> <li>AUTOMATIC:自动选择当前可用的云盘类型</li> :type DiskTypePolicy: str :param _HpcClusterId: 高性能计算集群ID。<br> 注意:此字段默认为空。 :type HpcClusterId: str :param _IPv6InternetAccessible: IPv6公网带宽相关信息设置。若新建实例包含IPv6地址,该参数可为新建实例的IPv6地址分配公网带宽。关联启动配置的伸缩组Ipv6AddressCount参数为0时,该参数不会生效。 :type IPv6InternetAccessible: :class:`tencentcloud.autoscaling.v20180419.models.IPv6InternetAccessible` :param _DisasterRecoverGroupIds: 置放群组id,仅支持指定一个。 :type DisasterRecoverGroupIds: list of str :param _ImageFamily: 镜像族名称。镜像Id与镜像族名称,二者必填一个且只能填写一个。 :type ImageFamily: str :param _DedicatedClusterId: 本地专用集群ID。 :type DedicatedClusterId: str :param _Metadata: 自定义metadata。 :type Metadata: :class:`tencentcloud.autoscaling.v20180419.models.Metadata` """ self._LaunchConfigurationName = None self._ImageId = None self._ProjectId = None self._InstanceType = None self._SystemDisk = None self._DataDisks = None self._InternetAccessible = None self._LoginSettings = None self._SecurityGroupIds = None self._EnhancedService = None self._UserData = None self._InstanceChargeType = None self._InstanceMarketOptions = None self._InstanceTypes = None self._CamRoleName = None self._InstanceTypesCheckPolicy = None self._InstanceTags = None self._Tags = None self._HostNameSettings = None self._InstanceNameSettings = None self._InstanceChargePrepaid = None self._DiskTypePolicy = None self._HpcClusterId = None self._IPv6InternetAccessible = None self._DisasterRecoverGroupIds = None self._ImageFamily = None self._DedicatedClusterId = None self._Metadata = None @property def LaunchConfigurationName(self): """启动配置显示名称。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超60个字节。 :rtype: str """ return self._LaunchConfigurationName @LaunchConfigurationName.setter def LaunchConfigurationName(self, LaunchConfigurationName): self._LaunchConfigurationName = LaunchConfigurationName @property def ImageId(self): """指定有效的[镜像](https://cloud.tencent.com/document/product/213/4940)ID,格式形如`img-8toqc6s3`。镜像Id与镜像族名称,二者必填一个且只能填写一个。镜像类型分为四种:<br/><li>公共镜像</li><li>自定义镜像</li><li>共享镜像</li><li>服务市场镜像</li><br/>可通过以下方式获取可用的镜像ID:<br/><li>`公共镜像`、`自定义镜像`、`共享镜像`的镜像ID可通过登录[控制台](https://console.cloud.tencent.com/cvm/image?rid=1&imageType=PUBLIC_IMAGE)查询;`服务镜像市场`的镜像ID可通过[云市场](https://market.cloud.tencent.com/list)查询。</li><li>通过调用接口 [DescribeImages](https://cloud.tencent.com/document/api/213/15715) ,取返回信息中的`ImageId`字段。</li> :rtype: str """ return self._ImageId @ImageId.setter def ImageId(self, ImageId): self._ImageId = ImageId @property def ProjectId(self): """启动配置所属项目ID。不填为默认项目。 注意:伸缩组内实例所属项目ID取伸缩组项目ID,与这里取值无关。 :rtype: int """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def InstanceType(self): """实例机型。不同实例机型指定了不同的资源规格,具体取值可通过调用接口 [DescribeInstanceTypeConfigs](https://cloud.tencent.com/document/api/213/15749) 来获得最新的规格表或参见[实例类型](https://cloud.tencent.com/document/product/213/11518)描述。 `InstanceType`和`InstanceTypes`参数互斥,二者必填一个且只能填写一个。 :rtype: str """ return self._InstanceType @InstanceType.setter def InstanceType(self, InstanceType): self._InstanceType = InstanceType @property def SystemDisk(self): """实例系统盘配置信息。若不指定该参数,则按照系统默认值进行分配。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.SystemDisk` """ return self._SystemDisk @SystemDisk.setter def SystemDisk(self, SystemDisk): self._SystemDisk = SystemDisk @property def DataDisks(self): """实例数据盘配置信息。若不指定该参数,则默认不购买数据盘,最多支持指定11块数据盘。 :rtype: list of DataDisk """ return self._DataDisks @DataDisks.setter def DataDisks(self, DataDisks): self._DataDisks = DataDisks @property def InternetAccessible(self): """公网带宽相关信息设置。若不指定该参数,则默认公网带宽为0Mbps。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.InternetAccessible` """ return self._InternetAccessible @InternetAccessible.setter def InternetAccessible(self, InternetAccessible): self._InternetAccessible = InternetAccessible @property def LoginSettings(self): """实例登录设置。通过该参数可以设置实例的登录方式密码、密钥或保持镜像的原始登录设置。默认情况下会随机生成密码,并以站内信方式知会到用户。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.LoginSettings` """ return self._LoginSettings @LoginSettings.setter def LoginSettings(self, LoginSettings): self._LoginSettings = LoginSettings @property def SecurityGroupIds(self): """实例所属安全组。该参数可以通过调用 [DescribeSecurityGroups](https://cloud.tencent.com/document/api/215/15808) 的返回值中的`SecurityGroupId`字段来获取。若不指定该参数,则默认不绑定安全组。 :rtype: list of str """ return self._SecurityGroupIds @SecurityGroupIds.setter def SecurityGroupIds(self, SecurityGroupIds): self._SecurityGroupIds = SecurityGroupIds @property def EnhancedService(self): """增强服务。通过该参数可以指定是否开启云安全、云监控等服务。若不指定该参数,则默认开启云监控、云安全服务。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.EnhancedService` """ return self._EnhancedService @EnhancedService.setter def EnhancedService(self, EnhancedService): self._EnhancedService = EnhancedService @property def UserData(self): """经过 Base64 编码后的自定义数据,最大长度不超过16KB。 :rtype: str """ return self._UserData @UserData.setter def UserData(self, UserData): self._UserData = UserData @property def InstanceChargeType(self): """实例计费类型,CVM默认值按照POSTPAID_BY_HOUR处理。 <li>POSTPAID_BY_HOUR:按小时后付费</li> <li>SPOTPAID:竞价付费</li> <li>PREPAID:预付费,即包年包月</li> <li>CDCPAID:专用集群付费</li> :rtype: str """ return self._InstanceChargeType @InstanceChargeType.setter def InstanceChargeType(self, InstanceChargeType): self._InstanceChargeType = InstanceChargeType @property def InstanceMarketOptions(self): """实例的市场相关选项,如竞价实例相关参数,若指定实例的付费模式为竞价付费则该参数必传。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.InstanceMarketOptionsRequest` """ return self._InstanceMarketOptions @InstanceMarketOptions.setter def InstanceMarketOptions(self, InstanceMarketOptions): self._InstanceMarketOptions = InstanceMarketOptions @property def InstanceTypes(self): """实例机型列表,不同实例机型指定了不同的资源规格,最多支持10种实例机型。 `InstanceType`和`InstanceTypes`参数互斥,二者必填一个且只能填写一个。 :rtype: list of str """ return self._InstanceTypes @InstanceTypes.setter def InstanceTypes(self, InstanceTypes): self._InstanceTypes = InstanceTypes @property def CamRoleName(self): """CAM角色名称。可通过DescribeRoleList接口返回值中的roleName获取。 :rtype: str """ return self._CamRoleName @CamRoleName.setter def CamRoleName(self, CamRoleName): self._CamRoleName = CamRoleName @property def InstanceTypesCheckPolicy(self): """实例类型校验策略,取值包括 ALL 和 ANY,默认取值为ANY。 <li> ALL,所有实例类型(InstanceType)都可用则通过校验,否则校验报错。</li> <li> ANY,存在任何一个实例类型(InstanceType)可用则通过校验,否则校验报错。</li> 实例类型不可用的常见原因包括该实例类型售罄、对应云盘售罄等。 如果 InstanceTypes 中一款机型不存在或者已下线,则无论 InstanceTypesCheckPolicy 采用何种取值,都会校验报错。 :rtype: str """ return self._InstanceTypesCheckPolicy @InstanceTypesCheckPolicy.setter def InstanceTypesCheckPolicy(self, InstanceTypesCheckPolicy): self._InstanceTypesCheckPolicy = InstanceTypesCheckPolicy @property def InstanceTags(self): """标签列表。通过指定该参数,可以为扩容的实例绑定标签。最多支持指定10个标签。 :rtype: list of InstanceTag """ return self._InstanceTags @InstanceTags.setter def InstanceTags(self, InstanceTags): self._InstanceTags = InstanceTags @property def Tags(self): """标签描述列表。通过指定该参数可以支持绑定标签到启动配置。每个启动配置最多支持30个标签。 :rtype: list of Tag """ return self._Tags @Tags.setter def Tags(self, Tags): self._Tags = Tags @property def HostNameSettings(self): """云服务器主机名(HostName)的相关设置。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.HostNameSettings` """ return self._HostNameSettings @HostNameSettings.setter def HostNameSettings(self, HostNameSettings): self._HostNameSettings = HostNameSettings @property def InstanceNameSettings(self): """云服务器实例名(InstanceName)的相关设置。 如果用户在启动配置中设置此字段,则伸缩组创建出的实例 InstanceName 参照此字段进行设置,并传递给 CVM;如果用户未在启动配置中设置此字段,则伸缩组创建出的实例 InstanceName 按照“as-{{ 伸缩组AutoScalingGroupName }}”进行设置,并传递给 CVM。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.InstanceNameSettings` """ return self._InstanceNameSettings @InstanceNameSettings.setter def InstanceNameSettings(self, InstanceNameSettings): self._InstanceNameSettings = InstanceNameSettings @property def InstanceChargePrepaid(self): """预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月实例的购买时长、是否设置自动续费等属性。若指定实例的付费模式为预付费则该参数必传。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.InstanceChargePrepaid` """ return self._InstanceChargePrepaid @InstanceChargePrepaid.setter def InstanceChargePrepaid(self, InstanceChargePrepaid): self._InstanceChargePrepaid = InstanceChargePrepaid @property def DiskTypePolicy(self): """云盘类型选择策略,默认取值 ORIGINAL,取值范围: <li>ORIGINAL:使用设置的云盘类型</li> <li>AUTOMATIC:自动选择当前可用的云盘类型</li> :rtype: str """ return self._DiskTypePolicy @DiskTypePolicy.setter def DiskTypePolicy(self, DiskTypePolicy): self._DiskTypePolicy = DiskTypePolicy @property def HpcClusterId(self): """高性能计算集群ID。<br> 注意:此字段默认为空。 :rtype: str """ return self._HpcClusterId @HpcClusterId.setter def HpcClusterId(self, HpcClusterId): self._HpcClusterId = HpcClusterId @property def IPv6InternetAccessible(self): """IPv6公网带宽相关信息设置。若新建实例包含IPv6地址,该参数可为新建实例的IPv6地址分配公网带宽。关联启动配置的伸缩组Ipv6AddressCount参数为0时,该参数不会生效。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.IPv6InternetAccessible` """ return self._IPv6InternetAccessible @IPv6InternetAccessible.setter def IPv6InternetAccessible(self, IPv6InternetAccessible): self._IPv6InternetAccessible = IPv6InternetAccessible @property def DisasterRecoverGroupIds(self): """置放群组id,仅支持指定一个。 :rtype: list of str """ return self._DisasterRecoverGroupIds @DisasterRecoverGroupIds.setter def DisasterRecoverGroupIds(self, DisasterRecoverGroupIds): self._DisasterRecoverGroupIds = DisasterRecoverGroupIds @property def ImageFamily(self): """镜像族名称。镜像Id与镜像族名称,二者必填一个且只能填写一个。 :rtype: str """ return self._ImageFamily @ImageFamily.setter def ImageFamily(self, ImageFamily): self._ImageFamily = ImageFamily @property def DedicatedClusterId(self): """本地专用集群ID。 :rtype: str """ return self._DedicatedClusterId @DedicatedClusterId.setter def DedicatedClusterId(self, DedicatedClusterId): self._DedicatedClusterId = DedicatedClusterId @property def Metadata(self): """自定义metadata。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.Metadata` """ return self._Metadata @Metadata.setter def Metadata(self, Metadata): self._Metadata = Metadata def _deserialize(self, params): self._LaunchConfigurationName = params.get("LaunchConfigurationName") self._ImageId = params.get("ImageId") self._ProjectId = params.get("ProjectId") self._InstanceType = params.get("InstanceType") if params.get("SystemDisk") is not None: self._SystemDisk = SystemDisk() self._SystemDisk._deserialize(params.get("SystemDisk")) if params.get("DataDisks") is not None: self._DataDisks = [] for item in params.get("DataDisks"): obj = DataDisk() obj._deserialize(item) self._DataDisks.append(obj) if params.get("InternetAccessible") is not None: self._InternetAccessible = InternetAccessible() self._InternetAccessible._deserialize(params.get("InternetAccessible")) if params.get("LoginSettings") is not None: self._LoginSettings = LoginSettings() self._LoginSettings._deserialize(params.get("LoginSettings")) self._SecurityGroupIds = params.get("SecurityGroupIds") if params.get("EnhancedService") is not None: self._EnhancedService = EnhancedService() self._EnhancedService._deserialize(params.get("EnhancedService")) self._UserData = params.get("UserData") self._InstanceChargeType = params.get("InstanceChargeType") if params.get("InstanceMarketOptions") is not None: self._InstanceMarketOptions = InstanceMarketOptionsRequest() self._InstanceMarketOptions._deserialize(params.get("InstanceMarketOptions")) self._InstanceTypes = params.get("InstanceTypes") self._CamRoleName = params.get("CamRoleName") self._InstanceTypesCheckPolicy = params.get("InstanceTypesCheckPolicy") if params.get("InstanceTags") is not None: self._InstanceTags = [] for item in params.get("InstanceTags"): obj = InstanceTag() obj._deserialize(item) self._InstanceTags.append(obj) if params.get("Tags") is not None: self._Tags = [] for item in params.get("Tags"): obj = Tag() obj._deserialize(item) self._Tags.append(obj) if params.get("HostNameSettings") is not None: self._HostNameSettings = HostNameSettings() self._HostNameSettings._deserialize(params.get("HostNameSettings")) if params.get("InstanceNameSettings") is not None: self._InstanceNameSettings = InstanceNameSettings() self._InstanceNameSettings._deserialize(params.get("InstanceNameSettings")) if params.get("InstanceChargePrepaid") is not None: self._InstanceChargePrepaid = InstanceChargePrepaid() self._InstanceChargePrepaid._deserialize(params.get("InstanceChargePrepaid")) self._DiskTypePolicy = params.get("DiskTypePolicy") self._HpcClusterId = params.get("HpcClusterId") if params.get("IPv6InternetAccessible") is not None: self._IPv6InternetAccessible = IPv6InternetAccessible() self._IPv6InternetAccessible._deserialize(params.get("IPv6InternetAccessible")) self._DisasterRecoverGroupIds = params.get("DisasterRecoverGroupIds") self._ImageFamily = params.get("ImageFamily") self._DedicatedClusterId = params.get("DedicatedClusterId") if params.get("Metadata") is not None: self._Metadata = Metadata() self._Metadata._deserialize(params.get("Metadata")) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CreateLaunchConfigurationResponse(AbstractModel): """CreateLaunchConfiguration返回参数结构体 """ def __init__(self): r""" :param _LaunchConfigurationId: 当通过本接口来创建启动配置时会返回该参数,表示启动配置ID。 :type LaunchConfigurationId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._LaunchConfigurationId = None self._RequestId = None @property def LaunchConfigurationId(self): """当通过本接口来创建启动配置时会返回该参数,表示启动配置ID。 :rtype: str """ return self._LaunchConfigurationId @LaunchConfigurationId.setter def LaunchConfigurationId(self, LaunchConfigurationId): self._LaunchConfigurationId = LaunchConfigurationId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._LaunchConfigurationId = params.get("LaunchConfigurationId") self._RequestId = params.get("RequestId") class CreateLifecycleHookRequest(AbstractModel): """CreateLifecycleHook请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str :param _LifecycleHookName: 生命周期挂钩名称。名称仅支持中文、英文、数字、下划线(_)、短横线(-)、小数点(.),最大长度不能超128个字节。 :type LifecycleHookName: str :param _LifecycleTransition: 进行生命周期挂钩的场景,取值范围包括 INSTANCE_LAUNCHING 和 INSTANCE_TERMINATING :type LifecycleTransition: str :param _DefaultResult: 定义伸缩组在生命周期挂钩超时的情况下应采取的操作,取值范围是 CONTINUE 或 ABANDON,默认值为 CONTINUE :type DefaultResult: str :param _HeartbeatTimeout: 生命周期挂钩超时之前可以经过的最长时间(以秒为单位),范围从30到7200秒,默认值为300秒 :type HeartbeatTimeout: int :param _NotificationMetadata: 弹性伸缩向通知目标发送的附加信息,配置通知时使用,默认值为空字符串""。最大长度不能超过1024个字节。 :type NotificationMetadata: str :param _NotificationTarget: 通知目标。NotificationTarget和LifecycleCommand参数互斥,二者不可同时指定。 :type NotificationTarget: :class:`tencentcloud.autoscaling.v20180419.models.NotificationTarget` :param _LifecycleTransitionType: 进行生命周期挂钩的场景类型,取值范围包括NORMAL 和 EXTENSION。说明:设置为EXTENSION值,在AttachInstances、DetachInstances、RemoveInstaces接口时会触发生命周期挂钩操作,值为NORMAL则不会在这些接口中触发生命周期挂钩。 :type LifecycleTransitionType: str :param _LifecycleCommand: 远程命令执行对象。NotificationTarget和LifecycleCommand参数互斥,二者不可同时指定。 :type LifecycleCommand: :class:`tencentcloud.autoscaling.v20180419.models.LifecycleCommand` """ self._AutoScalingGroupId = None self._LifecycleHookName = None self._LifecycleTransition = None self._DefaultResult = None self._HeartbeatTimeout = None self._NotificationMetadata = None self._NotificationTarget = None self._LifecycleTransitionType = None self._LifecycleCommand = None @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def LifecycleHookName(self): """生命周期挂钩名称。名称仅支持中文、英文、数字、下划线(_)、短横线(-)、小数点(.),最大长度不能超128个字节。 :rtype: str """ return self._LifecycleHookName @LifecycleHookName.setter def LifecycleHookName(self, LifecycleHookName): self._LifecycleHookName = LifecycleHookName @property def LifecycleTransition(self): """进行生命周期挂钩的场景,取值范围包括 INSTANCE_LAUNCHING 和 INSTANCE_TERMINATING :rtype: str """ return self._LifecycleTransition @LifecycleTransition.setter def LifecycleTransition(self, LifecycleTransition): self._LifecycleTransition = LifecycleTransition @property def DefaultResult(self): """定义伸缩组在生命周期挂钩超时的情况下应采取的操作,取值范围是 CONTINUE 或 ABANDON,默认值为 CONTINUE :rtype: str """ return self._DefaultResult @DefaultResult.setter def DefaultResult(self, DefaultResult): self._DefaultResult = DefaultResult @property def HeartbeatTimeout(self): """生命周期挂钩超时之前可以经过的最长时间(以秒为单位),范围从30到7200秒,默认值为300秒 :rtype: int """ return self._HeartbeatTimeout @HeartbeatTimeout.setter def HeartbeatTimeout(self, HeartbeatTimeout): self._HeartbeatTimeout = HeartbeatTimeout @property def NotificationMetadata(self): """弹性伸缩向通知目标发送的附加信息,配置通知时使用,默认值为空字符串""。最大长度不能超过1024个字节。 :rtype: str """ return self._NotificationMetadata @NotificationMetadata.setter def NotificationMetadata(self, NotificationMetadata): self._NotificationMetadata = NotificationMetadata @property def NotificationTarget(self): """通知目标。NotificationTarget和LifecycleCommand参数互斥,二者不可同时指定。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.NotificationTarget` """ return self._NotificationTarget @NotificationTarget.setter def NotificationTarget(self, NotificationTarget): self._NotificationTarget = NotificationTarget @property def LifecycleTransitionType(self): """进行生命周期挂钩的场景类型,取值范围包括NORMAL 和 EXTENSION。说明:设置为EXTENSION值,在AttachInstances、DetachInstances、RemoveInstaces接口时会触发生命周期挂钩操作,值为NORMAL则不会在这些接口中触发生命周期挂钩。 :rtype: str """ return self._LifecycleTransitionType @LifecycleTransitionType.setter def LifecycleTransitionType(self, LifecycleTransitionType): self._LifecycleTransitionType = LifecycleTransitionType @property def LifecycleCommand(self): """远程命令执行对象。NotificationTarget和LifecycleCommand参数互斥,二者不可同时指定。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.LifecycleCommand` """ return self._LifecycleCommand @LifecycleCommand.setter def LifecycleCommand(self, LifecycleCommand): self._LifecycleCommand = LifecycleCommand def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._LifecycleHookName = params.get("LifecycleHookName") self._LifecycleTransition = params.get("LifecycleTransition") self._DefaultResult = params.get("DefaultResult") self._HeartbeatTimeout = params.get("HeartbeatTimeout") self._NotificationMetadata = params.get("NotificationMetadata") if params.get("NotificationTarget") is not None: self._NotificationTarget = NotificationTarget() self._NotificationTarget._deserialize(params.get("NotificationTarget")) self._LifecycleTransitionType = params.get("LifecycleTransitionType") if params.get("LifecycleCommand") is not None: self._LifecycleCommand = LifecycleCommand() self._LifecycleCommand._deserialize(params.get("LifecycleCommand")) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CreateLifecycleHookResponse(AbstractModel): """CreateLifecycleHook返回参数结构体 """ def __init__(self): r""" :param _LifecycleHookId: 生命周期挂钩ID :type LifecycleHookId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._LifecycleHookId = None self._RequestId = None @property def LifecycleHookId(self): """生命周期挂钩ID :rtype: str """ return self._LifecycleHookId @LifecycleHookId.setter def LifecycleHookId(self, LifecycleHookId): self._LifecycleHookId = LifecycleHookId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._LifecycleHookId = params.get("LifecycleHookId") self._RequestId = params.get("RequestId") class CreateNotificationConfigurationRequest(AbstractModel): """CreateNotificationConfiguration请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID。 :type AutoScalingGroupId: str :param _NotificationTypes: 通知类型,即为需要订阅的通知类型集合,取值范围如下: <li>SCALE_OUT_SUCCESSFUL:扩容成功</li> <li>SCALE_OUT_FAILED:扩容失败</li> <li>SCALE_IN_SUCCESSFUL:缩容成功</li> <li>SCALE_IN_FAILED:缩容失败</li> <li>REPLACE_UNHEALTHY_INSTANCE_SUCCESSFUL:替换不健康子机成功</li> <li>REPLACE_UNHEALTHY_INSTANCE_FAILED:替换不健康子机失败</li> :type NotificationTypes: list of str :param _NotificationUserGroupIds: 通知组ID,即为用户组ID集合,用户组ID可以通过[ListGroups](https://cloud.tencent.com/document/product/598/34589)查询。 :type NotificationUserGroupIds: list of str :param _TargetType: 通知接收端类型,取值如下 <br><li>USER_GROUP:用户组 <br><li>CMQ_QUEUE:CMQ 队列 <br><li>CMQ_TOPIC:CMQ 主题 <br><li>TDMQ_CMQ_TOPIC:TDMQ CMQ 主题 <br><li>TDMQ_CMQ_QUEUE:TDMQ CMQ 队列 默认值为:`USER_GROUP`。 :type TargetType: str :param _QueueName: CMQ 队列名称,如 TargetType 取值为 `CMQ_QUEUE` 或 `TDMQ_CMQ_QUEUE` 时,该字段必填。 :type QueueName: str :param _TopicName: CMQ 主题名称,如 TargetType 取值为 `CMQ_TOPIC` 或 `TDMQ_CMQ_TOPIC` 时,该字段必填。 :type TopicName: str """ self._AutoScalingGroupId = None self._NotificationTypes = None self._NotificationUserGroupIds = None self._TargetType = None self._QueueName = None self._TopicName = None @property def AutoScalingGroupId(self): """伸缩组ID。 :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def NotificationTypes(self): """通知类型,即为需要订阅的通知类型集合,取值范围如下: <li>SCALE_OUT_SUCCESSFUL:扩容成功</li> <li>SCALE_OUT_FAILED:扩容失败</li> <li>SCALE_IN_SUCCESSFUL:缩容成功</li> <li>SCALE_IN_FAILED:缩容失败</li> <li>REPLACE_UNHEALTHY_INSTANCE_SUCCESSFUL:替换不健康子机成功</li> <li>REPLACE_UNHEALTHY_INSTANCE_FAILED:替换不健康子机失败</li> :rtype: list of str """ return self._NotificationTypes @NotificationTypes.setter def NotificationTypes(self, NotificationTypes): self._NotificationTypes = NotificationTypes @property def NotificationUserGroupIds(self): """通知组ID,即为用户组ID集合,用户组ID可以通过[ListGroups](https://cloud.tencent.com/document/product/598/34589)查询。 :rtype: list of str """ return self._NotificationUserGroupIds @NotificationUserGroupIds.setter def NotificationUserGroupIds(self, NotificationUserGroupIds): self._NotificationUserGroupIds = NotificationUserGroupIds @property def TargetType(self): """通知接收端类型,取值如下 <br><li>USER_GROUP:用户组 <br><li>CMQ_QUEUE:CMQ 队列 <br><li>CMQ_TOPIC:CMQ 主题 <br><li>TDMQ_CMQ_TOPIC:TDMQ CMQ 主题 <br><li>TDMQ_CMQ_QUEUE:TDMQ CMQ 队列 默认值为:`USER_GROUP`。 :rtype: str """ return self._TargetType @TargetType.setter def TargetType(self, TargetType): self._TargetType = TargetType @property def QueueName(self): """CMQ 队列名称,如 TargetType 取值为 `CMQ_QUEUE` 或 `TDMQ_CMQ_QUEUE` 时,该字段必填。 :rtype: str """ return self._QueueName @QueueName.setter def QueueName(self, QueueName): self._QueueName = QueueName @property def TopicName(self): """CMQ 主题名称,如 TargetType 取值为 `CMQ_TOPIC` 或 `TDMQ_CMQ_TOPIC` 时,该字段必填。 :rtype: str """ return self._TopicName @TopicName.setter def TopicName(self, TopicName): self._TopicName = TopicName def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._NotificationTypes = params.get("NotificationTypes") self._NotificationUserGroupIds = params.get("NotificationUserGroupIds") self._TargetType = params.get("TargetType") self._QueueName = params.get("QueueName") self._TopicName = params.get("TopicName") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CreateNotificationConfigurationResponse(AbstractModel): """CreateNotificationConfiguration返回参数结构体 """ def __init__(self): r""" :param _AutoScalingNotificationId: 通知ID。 :type AutoScalingNotificationId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._AutoScalingNotificationId = None self._RequestId = None @property def AutoScalingNotificationId(self): """通知ID。 :rtype: str """ return self._AutoScalingNotificationId @AutoScalingNotificationId.setter def AutoScalingNotificationId(self, AutoScalingNotificationId): self._AutoScalingNotificationId = AutoScalingNotificationId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._AutoScalingNotificationId = params.get("AutoScalingNotificationId") self._RequestId = params.get("RequestId") class CreateScalingPolicyRequest(AbstractModel): """CreateScalingPolicy请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID。 :type AutoScalingGroupId: str :param _ScalingPolicyName: 告警触发策略名称。 :type ScalingPolicyName: str :param _ScalingPolicyType: 告警触发策略类型,默认类型为SIMPLE。取值范围:<br><li>SIMPLE:简单策略</li><li>TARGET_TRACKING:目标追踪策略</li> :type ScalingPolicyType: str :param _AdjustmentType: 告警触发后,期望实例数修改方式,仅适用于简单策略。取值范围:<br><li>CHANGE_IN_CAPACITY:增加或减少若干期望实例数</li><li>EXACT_CAPACITY:调整至指定期望实例数</li> <li>PERCENT_CHANGE_IN_CAPACITY:按百分比调整期望实例数</li> :type AdjustmentType: str :param _AdjustmentValue: 告警触发后,期望实例数的调整值,仅适用于简单策略。 <li>当 AdjustmentType 为 CHANGE_IN_CAPACITY 时,AdjustmentValue 为正数表示告警触发后增加实例,为负数表示告警触发后减少实例 </li> <li> 当 AdjustmentType 为 EXACT_CAPACITY 时,AdjustmentValue 的值即为告警触发后新的期望实例数,需要大于或等于0 </li> <li> 当 AdjustmentType 为 PERCENT_CHANGE_IN_CAPACITY 时,AdjusmentValue 为正数表示告警触发后按百分比增加实例,为负数表示告警触发后按百分比减少实例,单位是:%。</li> :type AdjustmentValue: int :param _Cooldown: 冷却时间,单位为秒,仅适用于简单策略。默认冷却时间300秒。 :type Cooldown: int :param _MetricAlarm: 告警监控指标,仅适用于简单策略。 :type MetricAlarm: :class:`tencentcloud.autoscaling.v20180419.models.MetricAlarm` :param _PredefinedMetricType: 预定义监控项,仅适用于目标追踪策略。取值范围: <li>ASG_AVG_CPU_UTILIZATION:平均CPU使用率</li> <li>ASG_AVG_LAN_TRAFFIC_OUT:平均内网出带宽</li> <li>ASG_AVG_LAN_TRAFFIC_IN:平均内网入带宽</li> <li>ASG_AVG_WAN_TRAFFIC_OUT:平均外网出带宽</li> <li>ASG_AVG_WAN_TRAFFIC_IN:平均外网入带宽</li> :type PredefinedMetricType: str :param _TargetValue: 目标值,仅适用于目标追踪策略。 <li>ASG_AVG_CPU_UTILIZATION:[1, 100),单位:%</li> <li>ASG_AVG_LAN_TRAFFIC_OUT:>0,单位:Mbps</li> <li>ASG_AVG_LAN_TRAFFIC_IN:>0,单位:Mbps</li> <li>ASG_AVG_WAN_TRAFFIC_OUT:>0,单位:Mbps</li> <li>ASG_AVG_WAN_TRAFFIC_IN:>0,单位:Mbps</li> :type TargetValue: int :param _EstimatedInstanceWarmup: 实例预热时间,单位为秒,仅适用于目标追踪策略。取值范围为0-3600,默认预热时间300秒。 :type EstimatedInstanceWarmup: int :param _DisableScaleIn: 是否禁用缩容,仅适用于目标追踪策略,默认值为 false。取值范围: <li>true:目标追踪策略仅触发扩容</li> <li>false:目标追踪策略触发扩容和缩容</li> :type DisableScaleIn: bool :param _NotificationUserGroupIds: 此参数已不再生效,请使用[创建通知](https://cloud.tencent.com/document/api/377/33185)。 通知组ID,即为用户组ID集合。 :type NotificationUserGroupIds: list of str """ self._AutoScalingGroupId = None self._ScalingPolicyName = None self._ScalingPolicyType = None self._AdjustmentType = None self._AdjustmentValue = None self._Cooldown = None self._MetricAlarm = None self._PredefinedMetricType = None self._TargetValue = None self._EstimatedInstanceWarmup = None self._DisableScaleIn = None self._NotificationUserGroupIds = None @property def AutoScalingGroupId(self): """伸缩组ID。 :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def ScalingPolicyName(self): """告警触发策略名称。 :rtype: str """ return self._ScalingPolicyName @ScalingPolicyName.setter def ScalingPolicyName(self, ScalingPolicyName): self._ScalingPolicyName = ScalingPolicyName @property def ScalingPolicyType(self): """告警触发策略类型,默认类型为SIMPLE。取值范围:<br><li>SIMPLE:简单策略</li><li>TARGET_TRACKING:目标追踪策略</li> :rtype: str """ return self._ScalingPolicyType @ScalingPolicyType.setter def ScalingPolicyType(self, ScalingPolicyType): self._ScalingPolicyType = ScalingPolicyType @property def AdjustmentType(self): """告警触发后,期望实例数修改方式,仅适用于简单策略。取值范围:<br><li>CHANGE_IN_CAPACITY:增加或减少若干期望实例数</li><li>EXACT_CAPACITY:调整至指定期望实例数</li> <li>PERCENT_CHANGE_IN_CAPACITY:按百分比调整期望实例数</li> :rtype: str """ return self._AdjustmentType @AdjustmentType.setter def AdjustmentType(self, AdjustmentType): self._AdjustmentType = AdjustmentType @property def AdjustmentValue(self): """告警触发后,期望实例数的调整值,仅适用于简单策略。 <li>当 AdjustmentType 为 CHANGE_IN_CAPACITY 时,AdjustmentValue 为正数表示告警触发后增加实例,为负数表示告警触发后减少实例 </li> <li> 当 AdjustmentType 为 EXACT_CAPACITY 时,AdjustmentValue 的值即为告警触发后新的期望实例数,需要大于或等于0 </li> <li> 当 AdjustmentType 为 PERCENT_CHANGE_IN_CAPACITY 时,AdjusmentValue 为正数表示告警触发后按百分比增加实例,为负数表示告警触发后按百分比减少实例,单位是:%。</li> :rtype: int """ return self._AdjustmentValue @AdjustmentValue.setter def AdjustmentValue(self, AdjustmentValue): self._AdjustmentValue = AdjustmentValue @property def Cooldown(self): """冷却时间,单位为秒,仅适用于简单策略。默认冷却时间300秒。 :rtype: int """ return self._Cooldown @Cooldown.setter def Cooldown(self, Cooldown): self._Cooldown = Cooldown @property def MetricAlarm(self): """告警监控指标,仅适用于简单策略。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.MetricAlarm` """ return self._MetricAlarm @MetricAlarm.setter def MetricAlarm(self, MetricAlarm): self._MetricAlarm = MetricAlarm @property def PredefinedMetricType(self): """预定义监控项,仅适用于目标追踪策略。取值范围: <li>ASG_AVG_CPU_UTILIZATION:平均CPU使用率</li> <li>ASG_AVG_LAN_TRAFFIC_OUT:平均内网出带宽</li> <li>ASG_AVG_LAN_TRAFFIC_IN:平均内网入带宽</li> <li>ASG_AVG_WAN_TRAFFIC_OUT:平均外网出带宽</li> <li>ASG_AVG_WAN_TRAFFIC_IN:平均外网入带宽</li> :rtype: str """ return self._PredefinedMetricType @PredefinedMetricType.setter def PredefinedMetricType(self, PredefinedMetricType): self._PredefinedMetricType = PredefinedMetricType @property def TargetValue(self): """目标值,仅适用于目标追踪策略。 <li>ASG_AVG_CPU_UTILIZATION:[1, 100),单位:%</li> <li>ASG_AVG_LAN_TRAFFIC_OUT:>0,单位:Mbps</li> <li>ASG_AVG_LAN_TRAFFIC_IN:>0,单位:Mbps</li> <li>ASG_AVG_WAN_TRAFFIC_OUT:>0,单位:Mbps</li> <li>ASG_AVG_WAN_TRAFFIC_IN:>0,单位:Mbps</li> :rtype: int """ return self._TargetValue @TargetValue.setter def TargetValue(self, TargetValue): self._TargetValue = TargetValue @property def EstimatedInstanceWarmup(self): """实例预热时间,单位为秒,仅适用于目标追踪策略。取值范围为0-3600,默认预热时间300秒。 :rtype: int """ return self._EstimatedInstanceWarmup @EstimatedInstanceWarmup.setter def EstimatedInstanceWarmup(self, EstimatedInstanceWarmup): self._EstimatedInstanceWarmup = EstimatedInstanceWarmup @property def DisableScaleIn(self): """是否禁用缩容,仅适用于目标追踪策略,默认值为 false。取值范围: <li>true:目标追踪策略仅触发扩容</li> <li>false:目标追踪策略触发扩容和缩容</li> :rtype: bool """ return self._DisableScaleIn @DisableScaleIn.setter def DisableScaleIn(self, DisableScaleIn): self._DisableScaleIn = DisableScaleIn @property def NotificationUserGroupIds(self): """此参数已不再生效,请使用[创建通知](https://cloud.tencent.com/document/api/377/33185)。 通知组ID,即为用户组ID集合。 :rtype: list of str """ return self._NotificationUserGroupIds @NotificationUserGroupIds.setter def NotificationUserGroupIds(self, NotificationUserGroupIds): self._NotificationUserGroupIds = NotificationUserGroupIds def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._ScalingPolicyName = params.get("ScalingPolicyName") self._ScalingPolicyType = params.get("ScalingPolicyType") self._AdjustmentType = params.get("AdjustmentType") self._AdjustmentValue = params.get("AdjustmentValue") self._Cooldown = params.get("Cooldown") if params.get("MetricAlarm") is not None: self._MetricAlarm = MetricAlarm() self._MetricAlarm._deserialize(params.get("MetricAlarm")) self._PredefinedMetricType = params.get("PredefinedMetricType") self._TargetValue = params.get("TargetValue") self._EstimatedInstanceWarmup = params.get("EstimatedInstanceWarmup") self._DisableScaleIn = params.get("DisableScaleIn") self._NotificationUserGroupIds = params.get("NotificationUserGroupIds") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CreateScalingPolicyResponse(AbstractModel): """CreateScalingPolicy返回参数结构体 """ def __init__(self): r""" :param _AutoScalingPolicyId: 告警触发策略ID。 :type AutoScalingPolicyId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._AutoScalingPolicyId = None self._RequestId = None @property def AutoScalingPolicyId(self): """告警触发策略ID。 :rtype: str """ return self._AutoScalingPolicyId @AutoScalingPolicyId.setter def AutoScalingPolicyId(self, AutoScalingPolicyId): self._AutoScalingPolicyId = AutoScalingPolicyId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._AutoScalingPolicyId = params.get("AutoScalingPolicyId") self._RequestId = params.get("RequestId") class CreateScheduledActionRequest(AbstractModel): """CreateScheduledAction请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str :param _ScheduledActionName: 定时任务名称。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超60个字节。同一伸缩组下必须唯一。 :type ScheduledActionName: str :param _MaxSize: 当定时任务触发时,设置的伸缩组最大实例数。 :type MaxSize: int :param _MinSize: 当定时任务触发时,设置的伸缩组最小实例数。 :type MinSize: int :param _DesiredCapacity: 当定时任务触发时,设置的伸缩组期望实例数。 :type DesiredCapacity: int :param _StartTime: 定时任务的首次触发时间,取值为`北京时间`(UTC+8),按照`ISO8601`标准,格式:`YYYY-MM-DDThh:mm:ss+08:00`。 :type StartTime: str :param _EndTime: 定时任务的结束时间,取值为`北京时间`(UTC+8),按照`ISO8601`标准,格式:`YYYY-MM-DDThh:mm:ss+08:00`。<br><br>此参数与`Recurrence`需要同时指定,到达结束时间之后,定时任务将不再生效。 :type EndTime: str :param _Recurrence: 定时任务的重复方式。为标准 Cron 格式<br><br>此参数与`EndTime`需要同时指定。 :type Recurrence: str """ self._AutoScalingGroupId = None self._ScheduledActionName = None self._MaxSize = None self._MinSize = None self._DesiredCapacity = None self._StartTime = None self._EndTime = None self._Recurrence = None @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def ScheduledActionName(self): """定时任务名称。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超60个字节。同一伸缩组下必须唯一。 :rtype: str """ return self._ScheduledActionName @ScheduledActionName.setter def ScheduledActionName(self, ScheduledActionName): self._ScheduledActionName = ScheduledActionName @property def MaxSize(self): """当定时任务触发时,设置的伸缩组最大实例数。 :rtype: int """ return self._MaxSize @MaxSize.setter def MaxSize(self, MaxSize): self._MaxSize = MaxSize @property def MinSize(self): """当定时任务触发时,设置的伸缩组最小实例数。 :rtype: int """ return self._MinSize @MinSize.setter def MinSize(self, MinSize): self._MinSize = MinSize @property def DesiredCapacity(self): """当定时任务触发时,设置的伸缩组期望实例数。 :rtype: int """ return self._DesiredCapacity @DesiredCapacity.setter def DesiredCapacity(self, DesiredCapacity): self._DesiredCapacity = DesiredCapacity @property def StartTime(self): """定时任务的首次触发时间,取值为`北京时间`(UTC+8),按照`ISO8601`标准,格式:`YYYY-MM-DDThh:mm:ss+08:00`。 :rtype: str """ return self._StartTime @StartTime.setter def StartTime(self, StartTime): self._StartTime = StartTime @property def EndTime(self): """定时任务的结束时间,取值为`北京时间`(UTC+8),按照`ISO8601`标准,格式:`YYYY-MM-DDThh:mm:ss+08:00`。<br><br>此参数与`Recurrence`需要同时指定,到达结束时间之后,定时任务将不再生效。 :rtype: str """ return self._EndTime @EndTime.setter def EndTime(self, EndTime): self._EndTime = EndTime @property def Recurrence(self): """定时任务的重复方式。为标准 Cron 格式<br><br>此参数与`EndTime`需要同时指定。 :rtype: str """ return self._Recurrence @Recurrence.setter def Recurrence(self, Recurrence): self._Recurrence = Recurrence def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._ScheduledActionName = params.get("ScheduledActionName") self._MaxSize = params.get("MaxSize") self._MinSize = params.get("MinSize") self._DesiredCapacity = params.get("DesiredCapacity") self._StartTime = params.get("StartTime") self._EndTime = params.get("EndTime") self._Recurrence = params.get("Recurrence") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CreateScheduledActionResponse(AbstractModel): """CreateScheduledAction返回参数结构体 """ def __init__(self): r""" :param _ScheduledActionId: 定时任务ID :type ScheduledActionId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._ScheduledActionId = None self._RequestId = None @property def ScheduledActionId(self): """定时任务ID :rtype: str """ return self._ScheduledActionId @ScheduledActionId.setter def ScheduledActionId(self, ScheduledActionId): self._ScheduledActionId = ScheduledActionId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._ScheduledActionId = params.get("ScheduledActionId") self._RequestId = params.get("RequestId") class DataDisk(AbstractModel): """启动配置的数据盘配置信息。若不指定该参数,则默认不购买数据盘,当前仅支持购买的时候指定一个数据盘。 """ def __init__(self): r""" :param _DiskType: 数据盘类型。数据盘类型限制详见[云硬盘类型](https://cloud.tencent.com/document/product/362/2353)。取值范围: <li>LOCAL_BASIC:本地硬盘</li> <li>LOCAL_SSD:本地SSD硬盘</li> <li>CLOUD_BASIC:普通云硬盘</li> <li>CLOUD_PREMIUM:高性能云硬盘</li> <li>CLOUD_SSD:SSD云硬盘</li> <li>CLOUD_HSSD:增强型SSD云硬盘</li> <li>CLOUD_TSSD:极速型SSD云硬盘</li> 默认取值与系统盘类型(SystemDisk.DiskType)保持一致。 注意:此字段可能返回 null,表示取不到有效值。 :type DiskType: str :param _DiskSize: 数据盘大小,单位:GB。最小调整步长为10G,不同数据盘类型取值范围不同,具体限制详见:[CVM实例配置](https://cloud.tencent.com/document/product/213/2177)。默认值为0,表示不购买数据盘。更多限制详见产品文档。 注意:此字段可能返回 null,表示取不到有效值。 :type DiskSize: int :param _SnapshotId: 数据盘快照 ID,类似 `snap-l8psqwnt`。 注意:此字段可能返回 null,表示取不到有效值。 :type SnapshotId: str :param _DeleteWithInstance: 数据盘是否随子机销毁。取值范围: <li>TRUE:子机销毁时,销毁数据盘,只支持按小时后付费云盘</li> <li>FALSE:子机销毁时,保留数据盘</li> 注意:此字段可能返回 null,表示取不到有效值。 :type DeleteWithInstance: bool :param _Encrypt: 数据盘是否加密。取值范围: <li>TRUE:加密</li> <li>FALSE:不加密</li> 注意:此字段可能返回 null,表示取不到有效值。 :type Encrypt: bool :param _ThroughputPerformance: 云硬盘性能,单位:MB/s。使用此参数可给云硬盘购买额外的性能,功能介绍和类型限制详见:[增强型 SSD 云硬盘额外性能说明](https://cloud.tencent.com/document/product/362/51896#.E5.A2.9E.E5.BC.BA.E5.9E.8B-ssd-.E4.BA.91.E7.A1.AC.E7.9B.98.E9.A2.9D.E5.A4.96.E6.80.A7.E8.83.BD)。 当前仅支持极速型云盘(CLOUD_TSSD)和增强型SSD云硬盘(CLOUD_HSSD)且 需容量 > 460GB。 注意:此字段可能返回 null,表示取不到有效值。 :type ThroughputPerformance: int :param _BurstPerformance: 突发性能。是否开启突发性能,默认取值为 false。 注:内测中,需提单申请后使用。 注意:此字段可能返回 null,表示取不到有效值。 :type BurstPerformance: bool """ self._DiskType = None self._DiskSize = None self._SnapshotId = None self._DeleteWithInstance = None self._Encrypt = None self._ThroughputPerformance = None self._BurstPerformance = None @property def DiskType(self): """数据盘类型。数据盘类型限制详见[云硬盘类型](https://cloud.tencent.com/document/product/362/2353)。取值范围: <li>LOCAL_BASIC:本地硬盘</li> <li>LOCAL_SSD:本地SSD硬盘</li> <li>CLOUD_BASIC:普通云硬盘</li> <li>CLOUD_PREMIUM:高性能云硬盘</li> <li>CLOUD_SSD:SSD云硬盘</li> <li>CLOUD_HSSD:增强型SSD云硬盘</li> <li>CLOUD_TSSD:极速型SSD云硬盘</li> 默认取值与系统盘类型(SystemDisk.DiskType)保持一致。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._DiskType @DiskType.setter def DiskType(self, DiskType): self._DiskType = DiskType @property def DiskSize(self): """数据盘大小,单位:GB。最小调整步长为10G,不同数据盘类型取值范围不同,具体限制详见:[CVM实例配置](https://cloud.tencent.com/document/product/213/2177)。默认值为0,表示不购买数据盘。更多限制详见产品文档。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: int """ return self._DiskSize @DiskSize.setter def DiskSize(self, DiskSize): self._DiskSize = DiskSize @property def SnapshotId(self): """数据盘快照 ID,类似 `snap-l8psqwnt`。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._SnapshotId @SnapshotId.setter def SnapshotId(self, SnapshotId): self._SnapshotId = SnapshotId @property def DeleteWithInstance(self): """数据盘是否随子机销毁。取值范围: <li>TRUE:子机销毁时,销毁数据盘,只支持按小时后付费云盘</li> <li>FALSE:子机销毁时,保留数据盘</li> 注意:此字段可能返回 null,表示取不到有效值。 :rtype: bool """ return self._DeleteWithInstance @DeleteWithInstance.setter def DeleteWithInstance(self, DeleteWithInstance): self._DeleteWithInstance = DeleteWithInstance @property def Encrypt(self): """数据盘是否加密。取值范围: <li>TRUE:加密</li> <li>FALSE:不加密</li> 注意:此字段可能返回 null,表示取不到有效值。 :rtype: bool """ return self._Encrypt @Encrypt.setter def Encrypt(self, Encrypt): self._Encrypt = Encrypt @property def ThroughputPerformance(self): """云硬盘性能,单位:MB/s。使用此参数可给云硬盘购买额外的性能,功能介绍和类型限制详见:[增强型 SSD 云硬盘额外性能说明](https://cloud.tencent.com/document/product/362/51896#.E5.A2.9E.E5.BC.BA.E5.9E.8B-ssd-.E4.BA.91.E7.A1.AC.E7.9B.98.E9.A2.9D.E5.A4.96.E6.80.A7.E8.83.BD)。 当前仅支持极速型云盘(CLOUD_TSSD)和增强型SSD云硬盘(CLOUD_HSSD)且 需容量 > 460GB。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: int """ return self._ThroughputPerformance @ThroughputPerformance.setter def ThroughputPerformance(self, ThroughputPerformance): self._ThroughputPerformance = ThroughputPerformance @property def BurstPerformance(self): """突发性能。是否开启突发性能,默认取值为 false。 注:内测中,需提单申请后使用。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: bool """ return self._BurstPerformance @BurstPerformance.setter def BurstPerformance(self, BurstPerformance): self._BurstPerformance = BurstPerformance def _deserialize(self, params): self._DiskType = params.get("DiskType") self._DiskSize = params.get("DiskSize") self._SnapshotId = params.get("SnapshotId") self._DeleteWithInstance = params.get("DeleteWithInstance") self._Encrypt = params.get("Encrypt") self._ThroughputPerformance = params.get("ThroughputPerformance") self._BurstPerformance = params.get("BurstPerformance") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DeleteAutoScalingGroupRequest(AbstractModel): """DeleteAutoScalingGroup请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str """ self._AutoScalingGroupId = None @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DeleteAutoScalingGroupResponse(AbstractModel): """DeleteAutoScalingGroup返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class DeleteLaunchConfigurationRequest(AbstractModel): """DeleteLaunchConfiguration请求参数结构体 """ def __init__(self): r""" :param _LaunchConfigurationId: 需要删除的启动配置ID。 :type LaunchConfigurationId: str """ self._LaunchConfigurationId = None @property def LaunchConfigurationId(self): """需要删除的启动配置ID。 :rtype: str """ return self._LaunchConfigurationId @LaunchConfigurationId.setter def LaunchConfigurationId(self, LaunchConfigurationId): self._LaunchConfigurationId = LaunchConfigurationId def _deserialize(self, params): self._LaunchConfigurationId = params.get("LaunchConfigurationId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DeleteLaunchConfigurationResponse(AbstractModel): """DeleteLaunchConfiguration返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class DeleteLifecycleHookRequest(AbstractModel): """DeleteLifecycleHook请求参数结构体 """ def __init__(self): r""" :param _LifecycleHookId: 生命周期挂钩ID :type LifecycleHookId: str """ self._LifecycleHookId = None @property def LifecycleHookId(self): """生命周期挂钩ID :rtype: str """ return self._LifecycleHookId @LifecycleHookId.setter def LifecycleHookId(self, LifecycleHookId): self._LifecycleHookId = LifecycleHookId def _deserialize(self, params): self._LifecycleHookId = params.get("LifecycleHookId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DeleteLifecycleHookResponse(AbstractModel): """DeleteLifecycleHook返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class DeleteNotificationConfigurationRequest(AbstractModel): """DeleteNotificationConfiguration请求参数结构体 """ def __init__(self): r""" :param _AutoScalingNotificationId: 待删除的通知ID。 :type AutoScalingNotificationId: str """ self._AutoScalingNotificationId = None @property def AutoScalingNotificationId(self): """待删除的通知ID。 :rtype: str """ return self._AutoScalingNotificationId @AutoScalingNotificationId.setter def AutoScalingNotificationId(self, AutoScalingNotificationId): self._AutoScalingNotificationId = AutoScalingNotificationId def _deserialize(self, params): self._AutoScalingNotificationId = params.get("AutoScalingNotificationId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DeleteNotificationConfigurationResponse(AbstractModel): """DeleteNotificationConfiguration返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class DeleteScalingPolicyRequest(AbstractModel): """DeleteScalingPolicy请求参数结构体 """ def __init__(self): r""" :param _AutoScalingPolicyId: 待删除的告警策略ID。 :type AutoScalingPolicyId: str """ self._AutoScalingPolicyId = None @property def AutoScalingPolicyId(self): """待删除的告警策略ID。 :rtype: str """ return self._AutoScalingPolicyId @AutoScalingPolicyId.setter def AutoScalingPolicyId(self, AutoScalingPolicyId): self._AutoScalingPolicyId = AutoScalingPolicyId def _deserialize(self, params): self._AutoScalingPolicyId = params.get("AutoScalingPolicyId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DeleteScalingPolicyResponse(AbstractModel): """DeleteScalingPolicy返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class DeleteScheduledActionRequest(AbstractModel): """DeleteScheduledAction请求参数结构体 """ def __init__(self): r""" :param _ScheduledActionId: 待删除的定时任务ID。 :type ScheduledActionId: str """ self._ScheduledActionId = None @property def ScheduledActionId(self): """待删除的定时任务ID。 :rtype: str """ return self._ScheduledActionId @ScheduledActionId.setter def ScheduledActionId(self, ScheduledActionId): self._ScheduledActionId = ScheduledActionId def _deserialize(self, params): self._ScheduledActionId = params.get("ScheduledActionId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DeleteScheduledActionResponse(AbstractModel): """DeleteScheduledAction返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class DescribeAccountLimitsRequest(AbstractModel): """DescribeAccountLimits请求参数结构体 """ class DescribeAccountLimitsResponse(AbstractModel): """DescribeAccountLimits返回参数结构体 """ def __init__(self): r""" :param _MaxNumberOfLaunchConfigurations: 用户账户被允许创建的启动配置最大数量 :type MaxNumberOfLaunchConfigurations: int :param _NumberOfLaunchConfigurations: 用户账户启动配置的当前数量 :type NumberOfLaunchConfigurations: int :param _MaxNumberOfAutoScalingGroups: 用户账户被允许创建的伸缩组最大数量 :type MaxNumberOfAutoScalingGroups: int :param _NumberOfAutoScalingGroups: 用户账户伸缩组的当前数量 :type NumberOfAutoScalingGroups: int :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._MaxNumberOfLaunchConfigurations = None self._NumberOfLaunchConfigurations = None self._MaxNumberOfAutoScalingGroups = None self._NumberOfAutoScalingGroups = None self._RequestId = None @property def MaxNumberOfLaunchConfigurations(self): """用户账户被允许创建的启动配置最大数量 :rtype: int """ return self._MaxNumberOfLaunchConfigurations @MaxNumberOfLaunchConfigurations.setter def MaxNumberOfLaunchConfigurations(self, MaxNumberOfLaunchConfigurations): self._MaxNumberOfLaunchConfigurations = MaxNumberOfLaunchConfigurations @property def NumberOfLaunchConfigurations(self): """用户账户启动配置的当前数量 :rtype: int """ return self._NumberOfLaunchConfigurations @NumberOfLaunchConfigurations.setter def NumberOfLaunchConfigurations(self, NumberOfLaunchConfigurations): self._NumberOfLaunchConfigurations = NumberOfLaunchConfigurations @property def MaxNumberOfAutoScalingGroups(self): """用户账户被允许创建的伸缩组最大数量 :rtype: int """ return self._MaxNumberOfAutoScalingGroups @MaxNumberOfAutoScalingGroups.setter def MaxNumberOfAutoScalingGroups(self, MaxNumberOfAutoScalingGroups): self._MaxNumberOfAutoScalingGroups = MaxNumberOfAutoScalingGroups @property def NumberOfAutoScalingGroups(self): """用户账户伸缩组的当前数量 :rtype: int """ return self._NumberOfAutoScalingGroups @NumberOfAutoScalingGroups.setter def NumberOfAutoScalingGroups(self, NumberOfAutoScalingGroups): self._NumberOfAutoScalingGroups = NumberOfAutoScalingGroups @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._MaxNumberOfLaunchConfigurations = params.get("MaxNumberOfLaunchConfigurations") self._NumberOfLaunchConfigurations = params.get("NumberOfLaunchConfigurations") self._MaxNumberOfAutoScalingGroups = params.get("MaxNumberOfAutoScalingGroups") self._NumberOfAutoScalingGroups = params.get("NumberOfAutoScalingGroups") self._RequestId = params.get("RequestId") class DescribeAutoScalingActivitiesRequest(AbstractModel): """DescribeAutoScalingActivities请求参数结构体 """ def __init__(self): r""" :param _ActivityIds: 按照一个或者多个伸缩活动ID查询。伸缩活动ID形如:`asa-5l2ejpfo`。每次请求的上限为100。参数不支持同时指定`ActivityIds`和`Filters`。 :type ActivityIds: list of str :param _Filters: 过滤条件。 <li> auto-scaling-group-id - String - 是否必填:否 -(过滤条件)按照伸缩组ID过滤。</li> <li> activity-status-code - String - 是否必填:否 -(过滤条件)按照伸缩活动状态过滤。(INIT:初始化中|RUNNING:运行中|SUCCESSFUL:活动成功|PARTIALLY_SUCCESSFUL:活动部分成功|FAILED:活动失败|CANCELLED:活动取消)</li> <li> activity-type - String - 是否必填:否 -(过滤条件)按照伸缩活动类型过滤。(SCALE_OUT:扩容活动|SCALE_IN:缩容活动|ATTACH_INSTANCES:添加实例|REMOVE_INSTANCES:销毁实例|DETACH_INSTANCES:移出实例|TERMINATE_INSTANCES_UNEXPECTEDLY:实例在CVM控制台被销毁|REPLACE_UNHEALTHY_INSTANCE:替换不健康实例|UPDATE_LOAD_BALANCERS:更新负载均衡器)</li> <li> activity-id - String - 是否必填:否 -(过滤条件)按照伸缩活动ID过滤。</li> 每次请求的`Filters`的上限为10,`Filter.Values`的上限为5。参数不支持同时指定`ActivityIds`和`Filters`。 :type Filters: list of Filter :param _Limit: 返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :type Limit: int :param _Offset: 偏移量,默认为0。关于`Offset`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :type Offset: int :param _StartTime: 伸缩活动最早的开始时间,如果指定了ActivityIds,此参数将被忽略。取值为`UTC`时间,按照`ISO8601`标准,格式:`YYYY-MM-DDThh:mm:ssZ`。 :type StartTime: str :param _EndTime: 伸缩活动最晚的结束时间,如果指定了ActivityIds,此参数将被忽略。取值为`UTC`时间,按照`ISO8601`标准,格式:`YYYY-MM-DDThh:mm:ssZ`。 :type EndTime: str """ self._ActivityIds = None self._Filters = None self._Limit = None self._Offset = None self._StartTime = None self._EndTime = None @property def ActivityIds(self): """按照一个或者多个伸缩活动ID查询。伸缩活动ID形如:`asa-5l2ejpfo`。每次请求的上限为100。参数不支持同时指定`ActivityIds`和`Filters`。 :rtype: list of str """ return self._ActivityIds @ActivityIds.setter def ActivityIds(self, ActivityIds): self._ActivityIds = ActivityIds @property def Filters(self): """过滤条件。 <li> auto-scaling-group-id - String - 是否必填:否 -(过滤条件)按照伸缩组ID过滤。</li> <li> activity-status-code - String - 是否必填:否 -(过滤条件)按照伸缩活动状态过滤。(INIT:初始化中|RUNNING:运行中|SUCCESSFUL:活动成功|PARTIALLY_SUCCESSFUL:活动部分成功|FAILED:活动失败|CANCELLED:活动取消)</li> <li> activity-type - String - 是否必填:否 -(过滤条件)按照伸缩活动类型过滤。(SCALE_OUT:扩容活动|SCALE_IN:缩容活动|ATTACH_INSTANCES:添加实例|REMOVE_INSTANCES:销毁实例|DETACH_INSTANCES:移出实例|TERMINATE_INSTANCES_UNEXPECTEDLY:实例在CVM控制台被销毁|REPLACE_UNHEALTHY_INSTANCE:替换不健康实例|UPDATE_LOAD_BALANCERS:更新负载均衡器)</li> <li> activity-id - String - 是否必填:否 -(过滤条件)按照伸缩活动ID过滤。</li> 每次请求的`Filters`的上限为10,`Filter.Values`的上限为5。参数不支持同时指定`ActivityIds`和`Filters`。 :rtype: list of Filter """ return self._Filters @Filters.setter def Filters(self, Filters): self._Filters = Filters @property def Limit(self): """返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :rtype: int """ return self._Limit @Limit.setter def Limit(self, Limit): self._Limit = Limit @property def Offset(self): """偏移量,默认为0。关于`Offset`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :rtype: int """ return self._Offset @Offset.setter def Offset(self, Offset): self._Offset = Offset @property def StartTime(self): """伸缩活动最早的开始时间,如果指定了ActivityIds,此参数将被忽略。取值为`UTC`时间,按照`ISO8601`标准,格式:`YYYY-MM-DDThh:mm:ssZ`。 :rtype: str """ return self._StartTime @StartTime.setter def StartTime(self, StartTime): self._StartTime = StartTime @property def EndTime(self): """伸缩活动最晚的结束时间,如果指定了ActivityIds,此参数将被忽略。取值为`UTC`时间,按照`ISO8601`标准,格式:`YYYY-MM-DDThh:mm:ssZ`。 :rtype: str """ return self._EndTime @EndTime.setter def EndTime(self, EndTime): self._EndTime = EndTime def _deserialize(self, params): self._ActivityIds = params.get("ActivityIds") if params.get("Filters") is not None: self._Filters = [] for item in params.get("Filters"): obj = Filter() obj._deserialize(item) self._Filters.append(obj) self._Limit = params.get("Limit") self._Offset = params.get("Offset") self._StartTime = params.get("StartTime") self._EndTime = params.get("EndTime") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeAutoScalingActivitiesResponse(AbstractModel): """DescribeAutoScalingActivities返回参数结构体 """ def __init__(self): r""" :param _TotalCount: 符合条件的伸缩活动数量。 :type TotalCount: int :param _ActivitySet: 符合条件的伸缩活动信息集合。 :type ActivitySet: list of Activity :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._TotalCount = None self._ActivitySet = None self._RequestId = None @property def TotalCount(self): """符合条件的伸缩活动数量。 :rtype: int """ return self._TotalCount @TotalCount.setter def TotalCount(self, TotalCount): self._TotalCount = TotalCount @property def ActivitySet(self): """符合条件的伸缩活动信息集合。 :rtype: list of Activity """ return self._ActivitySet @ActivitySet.setter def ActivitySet(self, ActivitySet): self._ActivitySet = ActivitySet @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._TotalCount = params.get("TotalCount") if params.get("ActivitySet") is not None: self._ActivitySet = [] for item in params.get("ActivitySet"): obj = Activity() obj._deserialize(item) self._ActivitySet.append(obj) self._RequestId = params.get("RequestId") class DescribeAutoScalingAdvicesRequest(AbstractModel): """DescribeAutoScalingAdvices请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupIds: 待查询的伸缩组列表,上限100。 :type AutoScalingGroupIds: list of str """ self._AutoScalingGroupIds = None @property def AutoScalingGroupIds(self): """待查询的伸缩组列表,上限100。 :rtype: list of str """ return self._AutoScalingGroupIds @AutoScalingGroupIds.setter def AutoScalingGroupIds(self, AutoScalingGroupIds): self._AutoScalingGroupIds = AutoScalingGroupIds def _deserialize(self, params): self._AutoScalingGroupIds = params.get("AutoScalingGroupIds") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeAutoScalingAdvicesResponse(AbstractModel): """DescribeAutoScalingAdvices返回参数结构体 """ def __init__(self): r""" :param _AutoScalingAdviceSet: 伸缩组配置建议集合。 :type AutoScalingAdviceSet: list of AutoScalingAdvice :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._AutoScalingAdviceSet = None self._RequestId = None @property def AutoScalingAdviceSet(self): """伸缩组配置建议集合。 :rtype: list of AutoScalingAdvice """ return self._AutoScalingAdviceSet @AutoScalingAdviceSet.setter def AutoScalingAdviceSet(self, AutoScalingAdviceSet): self._AutoScalingAdviceSet = AutoScalingAdviceSet @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): if params.get("AutoScalingAdviceSet") is not None: self._AutoScalingAdviceSet = [] for item in params.get("AutoScalingAdviceSet"): obj = AutoScalingAdvice() obj._deserialize(item) self._AutoScalingAdviceSet.append(obj) self._RequestId = params.get("RequestId") class DescribeAutoScalingGroupLastActivitiesRequest(AbstractModel): """DescribeAutoScalingGroupLastActivities请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupIds: 伸缩组ID列表 :type AutoScalingGroupIds: list of str """ self._AutoScalingGroupIds = None @property def AutoScalingGroupIds(self): """伸缩组ID列表 :rtype: list of str """ return self._AutoScalingGroupIds @AutoScalingGroupIds.setter def AutoScalingGroupIds(self, AutoScalingGroupIds): self._AutoScalingGroupIds = AutoScalingGroupIds def _deserialize(self, params): self._AutoScalingGroupIds = params.get("AutoScalingGroupIds") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeAutoScalingGroupLastActivitiesResponse(AbstractModel): """DescribeAutoScalingGroupLastActivities返回参数结构体 """ def __init__(self): r""" :param _ActivitySet: 符合条件的伸缩活动信息集合。说明:伸缩组伸缩活动不存在的则不返回,如传50个伸缩组ID,返回45条数据,说明其中有5个伸缩组伸缩活动不存在。 :type ActivitySet: list of Activity :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._ActivitySet = None self._RequestId = None @property def ActivitySet(self): """符合条件的伸缩活动信息集合。说明:伸缩组伸缩活动不存在的则不返回,如传50个伸缩组ID,返回45条数据,说明其中有5个伸缩组伸缩活动不存在。 :rtype: list of Activity """ return self._ActivitySet @ActivitySet.setter def ActivitySet(self, ActivitySet): self._ActivitySet = ActivitySet @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): if params.get("ActivitySet") is not None: self._ActivitySet = [] for item in params.get("ActivitySet"): obj = Activity() obj._deserialize(item) self._ActivitySet.append(obj) self._RequestId = params.get("RequestId") class DescribeAutoScalingGroupsRequest(AbstractModel): """DescribeAutoScalingGroups请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupIds: 按照一个或者多个伸缩组ID查询。伸缩组ID形如:`asg-nkdwoui0`。每次请求的上限为100。参数不支持同时指定`AutoScalingGroupIds`和`Filters`。 :type AutoScalingGroupIds: list of str :param _Filters: 过滤条件。 <li> auto-scaling-group-id - String - 是否必填:否 -(过滤条件)按照伸缩组ID过滤。</li> <li> auto-scaling-group-name - String - 是否必填:否 -(过滤条件)按照伸缩组名称过滤。</li> <li> vague-auto-scaling-group-name - String - 是否必填:否 -(过滤条件)按照伸缩组名称模糊搜索。</li> <li> launch-configuration-id - String - 是否必填:否 -(过滤条件)按照启动配置ID过滤。</li> <li> tag-key - String - 是否必填:否 -(过滤条件)按照标签键进行过滤。</li> <li> tag-value - String - 是否必填:否 -(过滤条件)按照标签值进行过滤。</li> <li> tag:tag-key - String - 是否必填:否 -(过滤条件)按照标签键值对进行过滤。 tag-key使用具体的标签键进行替换。使用请参考示例2</li> 每次请求的`Filters`的上限为10,`Filter.Values`的上限为5。参数不支持同时指定`AutoScalingGroupIds`和`Filters`。 :type Filters: list of Filter :param _Limit: 返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :type Limit: int :param _Offset: 偏移量,默认为0。关于`Offset`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :type Offset: int """ self._AutoScalingGroupIds = None self._Filters = None self._Limit = None self._Offset = None @property def AutoScalingGroupIds(self): """按照一个或者多个伸缩组ID查询。伸缩组ID形如:`asg-nkdwoui0`。每次请求的上限为100。参数不支持同时指定`AutoScalingGroupIds`和`Filters`。 :rtype: list of str """ return self._AutoScalingGroupIds @AutoScalingGroupIds.setter def AutoScalingGroupIds(self, AutoScalingGroupIds): self._AutoScalingGroupIds = AutoScalingGroupIds @property def Filters(self): """过滤条件。 <li> auto-scaling-group-id - String - 是否必填:否 -(过滤条件)按照伸缩组ID过滤。</li> <li> auto-scaling-group-name - String - 是否必填:否 -(过滤条件)按照伸缩组名称过滤。</li> <li> vague-auto-scaling-group-name - String - 是否必填:否 -(过滤条件)按照伸缩组名称模糊搜索。</li> <li> launch-configuration-id - String - 是否必填:否 -(过滤条件)按照启动配置ID过滤。</li> <li> tag-key - String - 是否必填:否 -(过滤条件)按照标签键进行过滤。</li> <li> tag-value - String - 是否必填:否 -(过滤条件)按照标签值进行过滤。</li> <li> tag:tag-key - String - 是否必填:否 -(过滤条件)按照标签键值对进行过滤。 tag-key使用具体的标签键进行替换。使用请参考示例2</li> 每次请求的`Filters`的上限为10,`Filter.Values`的上限为5。参数不支持同时指定`AutoScalingGroupIds`和`Filters`。 :rtype: list of Filter """ return self._Filters @Filters.setter def Filters(self, Filters): self._Filters = Filters @property def Limit(self): """返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :rtype: int """ return self._Limit @Limit.setter def Limit(self, Limit): self._Limit = Limit @property def Offset(self): """偏移量,默认为0。关于`Offset`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :rtype: int """ return self._Offset @Offset.setter def Offset(self, Offset): self._Offset = Offset def _deserialize(self, params): self._AutoScalingGroupIds = params.get("AutoScalingGroupIds") if params.get("Filters") is not None: self._Filters = [] for item in params.get("Filters"): obj = Filter() obj._deserialize(item) self._Filters.append(obj) self._Limit = params.get("Limit") self._Offset = params.get("Offset") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeAutoScalingGroupsResponse(AbstractModel): """DescribeAutoScalingGroups返回参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupSet: 伸缩组详细信息列表。 :type AutoScalingGroupSet: list of AutoScalingGroup :param _TotalCount: 符合条件的伸缩组数量。 :type TotalCount: int :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._AutoScalingGroupSet = None self._TotalCount = None self._RequestId = None @property def AutoScalingGroupSet(self): """伸缩组详细信息列表。 :rtype: list of AutoScalingGroup """ return self._AutoScalingGroupSet @AutoScalingGroupSet.setter def AutoScalingGroupSet(self, AutoScalingGroupSet): self._AutoScalingGroupSet = AutoScalingGroupSet @property def TotalCount(self): """符合条件的伸缩组数量。 :rtype: int """ return self._TotalCount @TotalCount.setter def TotalCount(self, TotalCount): self._TotalCount = TotalCount @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): if params.get("AutoScalingGroupSet") is not None: self._AutoScalingGroupSet = [] for item in params.get("AutoScalingGroupSet"): obj = AutoScalingGroup() obj._deserialize(item) self._AutoScalingGroupSet.append(obj) self._TotalCount = params.get("TotalCount") self._RequestId = params.get("RequestId") class DescribeAutoScalingInstancesRequest(AbstractModel): """DescribeAutoScalingInstances请求参数结构体 """ def __init__(self): r""" :param _InstanceIds: 待查询云服务器(CVM)的实例ID。每次请求的上限为100。参数不支持同时指定InstanceIds和Filters。 :type InstanceIds: list of str :param _Filters: 过滤条件。 <li> instance-id - String - 是否必填:否 -(过滤条件)按照实例ID过滤。</li> <li> auto-scaling-group-id - String - 是否必填:否 -(过滤条件)按照伸缩组ID过滤。</li> 每次请求的`Filters`的上限为10,`Filter.Values`的上限为5。参数不支持同时指定`InstanceIds`和`Filters`。 :type Filters: list of Filter :param _Offset: 偏移量,默认为0。关于`Offset`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :type Offset: int :param _Limit: 返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :type Limit: int """ self._InstanceIds = None self._Filters = None self._Offset = None self._Limit = None @property def InstanceIds(self): """待查询云服务器(CVM)的实例ID。每次请求的上限为100。参数不支持同时指定InstanceIds和Filters。 :rtype: list of str """ return self._InstanceIds @InstanceIds.setter def InstanceIds(self, InstanceIds): self._InstanceIds = InstanceIds @property def Filters(self): """过滤条件。 <li> instance-id - String - 是否必填:否 -(过滤条件)按照实例ID过滤。</li> <li> auto-scaling-group-id - String - 是否必填:否 -(过滤条件)按照伸缩组ID过滤。</li> 每次请求的`Filters`的上限为10,`Filter.Values`的上限为5。参数不支持同时指定`InstanceIds`和`Filters`。 :rtype: list of Filter """ return self._Filters @Filters.setter def Filters(self, Filters): self._Filters = Filters @property def Offset(self): """偏移量,默认为0。关于`Offset`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :rtype: int """ return self._Offset @Offset.setter def Offset(self, Offset): self._Offset = Offset @property def Limit(self): """返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :rtype: int """ return self._Limit @Limit.setter def Limit(self, Limit): self._Limit = Limit def _deserialize(self, params): self._InstanceIds = params.get("InstanceIds") if params.get("Filters") is not None: self._Filters = [] for item in params.get("Filters"): obj = Filter() obj._deserialize(item) self._Filters.append(obj) self._Offset = params.get("Offset") self._Limit = params.get("Limit") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeAutoScalingInstancesResponse(AbstractModel): """DescribeAutoScalingInstances返回参数结构体 """ def __init__(self): r""" :param _AutoScalingInstanceSet: 实例详细信息列表。 :type AutoScalingInstanceSet: list of Instance :param _TotalCount: 符合条件的实例数量。 :type TotalCount: int :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._AutoScalingInstanceSet = None self._TotalCount = None self._RequestId = None @property def AutoScalingInstanceSet(self): """实例详细信息列表。 :rtype: list of Instance """ return self._AutoScalingInstanceSet @AutoScalingInstanceSet.setter def AutoScalingInstanceSet(self, AutoScalingInstanceSet): self._AutoScalingInstanceSet = AutoScalingInstanceSet @property def TotalCount(self): """符合条件的实例数量。 :rtype: int """ return self._TotalCount @TotalCount.setter def TotalCount(self, TotalCount): self._TotalCount = TotalCount @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): if params.get("AutoScalingInstanceSet") is not None: self._AutoScalingInstanceSet = [] for item in params.get("AutoScalingInstanceSet"): obj = Instance() obj._deserialize(item) self._AutoScalingInstanceSet.append(obj) self._TotalCount = params.get("TotalCount") self._RequestId = params.get("RequestId") class DescribeLaunchConfigurationsRequest(AbstractModel): """DescribeLaunchConfigurations请求参数结构体 """ def __init__(self): r""" :param _LaunchConfigurationIds: 按照一个或者多个启动配置ID查询。启动配置ID形如:`asc-ouy1ax38`。每次请求的上限为100。参数不支持同时指定`LaunchConfigurationIds`和`Filters` :type LaunchConfigurationIds: list of str :param _Filters: 过滤条件。 <li> launch-configuration-id - String - 是否必填:否 -(过滤条件)按照启动配置ID过滤。</li> <li> launch-configuration-name - String - 是否必填:否 -(过滤条件)按照启动配置名称过滤。</li> <li> vague-launch-configuration-name - String - 是否必填:否 -(过滤条件)按照启动配置名称模糊搜索。</li> <li> tag-key - String - 是否必填:否 -(过滤条件)按照标签键进行过滤。</li> <li> tag-value - String - 是否必填:否 -(过滤条件)按照标签值进行过滤。</li> <li> tag:tag-key - String - 是否必填:否 -(过滤条件)按照标签键值对进行过滤。 tag-key使用具体的标签键进行替换。使用请参考示例3</li> 每次请求的`Filters`的上限为10,`Filter.Values`的上限为5。参数不支持同时指定`LaunchConfigurationIds`和`Filters`。 :type Filters: list of Filter :param _Limit: 返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :type Limit: int :param _Offset: 偏移量,默认为0。关于`Offset`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :type Offset: int """ self._LaunchConfigurationIds = None self._Filters = None self._Limit = None self._Offset = None @property def LaunchConfigurationIds(self): """按照一个或者多个启动配置ID查询。启动配置ID形如:`asc-ouy1ax38`。每次请求的上限为100。参数不支持同时指定`LaunchConfigurationIds`和`Filters` :rtype: list of str """ return self._LaunchConfigurationIds @LaunchConfigurationIds.setter def LaunchConfigurationIds(self, LaunchConfigurationIds): self._LaunchConfigurationIds = LaunchConfigurationIds @property def Filters(self): """过滤条件。 <li> launch-configuration-id - String - 是否必填:否 -(过滤条件)按照启动配置ID过滤。</li> <li> launch-configuration-name - String - 是否必填:否 -(过滤条件)按照启动配置名称过滤。</li> <li> vague-launch-configuration-name - String - 是否必填:否 -(过滤条件)按照启动配置名称模糊搜索。</li> <li> tag-key - String - 是否必填:否 -(过滤条件)按照标签键进行过滤。</li> <li> tag-value - String - 是否必填:否 -(过滤条件)按照标签值进行过滤。</li> <li> tag:tag-key - String - 是否必填:否 -(过滤条件)按照标签键值对进行过滤。 tag-key使用具体的标签键进行替换。使用请参考示例3</li> 每次请求的`Filters`的上限为10,`Filter.Values`的上限为5。参数不支持同时指定`LaunchConfigurationIds`和`Filters`。 :rtype: list of Filter """ return self._Filters @Filters.setter def Filters(self, Filters): self._Filters = Filters @property def Limit(self): """返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :rtype: int """ return self._Limit @Limit.setter def Limit(self, Limit): self._Limit = Limit @property def Offset(self): """偏移量,默认为0。关于`Offset`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :rtype: int """ return self._Offset @Offset.setter def Offset(self, Offset): self._Offset = Offset def _deserialize(self, params): self._LaunchConfigurationIds = params.get("LaunchConfigurationIds") if params.get("Filters") is not None: self._Filters = [] for item in params.get("Filters"): obj = Filter() obj._deserialize(item) self._Filters.append(obj) self._Limit = params.get("Limit") self._Offset = params.get("Offset") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeLaunchConfigurationsResponse(AbstractModel): """DescribeLaunchConfigurations返回参数结构体 """ def __init__(self): r""" :param _TotalCount: 符合条件的启动配置数量。 :type TotalCount: int :param _LaunchConfigurationSet: 启动配置详细信息列表。 :type LaunchConfigurationSet: list of LaunchConfiguration :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._TotalCount = None self._LaunchConfigurationSet = None self._RequestId = None @property def TotalCount(self): """符合条件的启动配置数量。 :rtype: int """ return self._TotalCount @TotalCount.setter def TotalCount(self, TotalCount): self._TotalCount = TotalCount @property def LaunchConfigurationSet(self): """启动配置详细信息列表。 :rtype: list of LaunchConfiguration """ return self._LaunchConfigurationSet @LaunchConfigurationSet.setter def LaunchConfigurationSet(self, LaunchConfigurationSet): self._LaunchConfigurationSet = LaunchConfigurationSet @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._TotalCount = params.get("TotalCount") if params.get("LaunchConfigurationSet") is not None: self._LaunchConfigurationSet = [] for item in params.get("LaunchConfigurationSet"): obj = LaunchConfiguration() obj._deserialize(item) self._LaunchConfigurationSet.append(obj) self._RequestId = params.get("RequestId") class DescribeLifecycleHooksRequest(AbstractModel): """DescribeLifecycleHooks请求参数结构体 """ def __init__(self): r""" :param _LifecycleHookIds: 按照一个或者多个生命周期挂钩ID查询。生命周期挂钩ID形如:`ash-8azjzxcl`。每次请求的上限为100。参数不支持同时指定`LifecycleHookIds`和`Filters`。 :type LifecycleHookIds: list of str :param _Filters: 过滤条件。 <li> lifecycle-hook-id - String - 是否必填:否 -(过滤条件)按照生命周期挂钩ID过滤。</li> <li> lifecycle-hook-name - String - 是否必填:否 -(过滤条件)按照生命周期挂钩名称过滤。</li> <li> auto-scaling-group-id - String - 是否必填:否 -(过滤条件)按照伸缩组ID过滤。</li> 每次请求的`Filters`的上限为10,`Filter.Values`的上限为5。参数不支持同时指定`LifecycleHookIds `和`Filters`。 :type Filters: list of Filter :param _Limit: 返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :type Limit: int :param _Offset: 偏移量,默认为0。关于`Offset`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :type Offset: int """ self._LifecycleHookIds = None self._Filters = None self._Limit = None self._Offset = None @property def LifecycleHookIds(self): """按照一个或者多个生命周期挂钩ID查询。生命周期挂钩ID形如:`ash-8azjzxcl`。每次请求的上限为100。参数不支持同时指定`LifecycleHookIds`和`Filters`。 :rtype: list of str """ return self._LifecycleHookIds @LifecycleHookIds.setter def LifecycleHookIds(self, LifecycleHookIds): self._LifecycleHookIds = LifecycleHookIds @property def Filters(self): """过滤条件。 <li> lifecycle-hook-id - String - 是否必填:否 -(过滤条件)按照生命周期挂钩ID过滤。</li> <li> lifecycle-hook-name - String - 是否必填:否 -(过滤条件)按照生命周期挂钩名称过滤。</li> <li> auto-scaling-group-id - String - 是否必填:否 -(过滤条件)按照伸缩组ID过滤。</li> 每次请求的`Filters`的上限为10,`Filter.Values`的上限为5。参数不支持同时指定`LifecycleHookIds `和`Filters`。 :rtype: list of Filter """ return self._Filters @Filters.setter def Filters(self, Filters): self._Filters = Filters @property def Limit(self): """返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :rtype: int """ return self._Limit @Limit.setter def Limit(self, Limit): self._Limit = Limit @property def Offset(self): """偏移量,默认为0。关于`Offset`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :rtype: int """ return self._Offset @Offset.setter def Offset(self, Offset): self._Offset = Offset def _deserialize(self, params): self._LifecycleHookIds = params.get("LifecycleHookIds") if params.get("Filters") is not None: self._Filters = [] for item in params.get("Filters"): obj = Filter() obj._deserialize(item) self._Filters.append(obj) self._Limit = params.get("Limit") self._Offset = params.get("Offset") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeLifecycleHooksResponse(AbstractModel): """DescribeLifecycleHooks返回参数结构体 """ def __init__(self): r""" :param _LifecycleHookSet: 生命周期挂钩数组 :type LifecycleHookSet: list of LifecycleHook :param _TotalCount: 总体数量 :type TotalCount: int :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._LifecycleHookSet = None self._TotalCount = None self._RequestId = None @property def LifecycleHookSet(self): """生命周期挂钩数组 :rtype: list of LifecycleHook """ return self._LifecycleHookSet @LifecycleHookSet.setter def LifecycleHookSet(self, LifecycleHookSet): self._LifecycleHookSet = LifecycleHookSet @property def TotalCount(self): """总体数量 :rtype: int """ return self._TotalCount @TotalCount.setter def TotalCount(self, TotalCount): self._TotalCount = TotalCount @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): if params.get("LifecycleHookSet") is not None: self._LifecycleHookSet = [] for item in params.get("LifecycleHookSet"): obj = LifecycleHook() obj._deserialize(item) self._LifecycleHookSet.append(obj) self._TotalCount = params.get("TotalCount") self._RequestId = params.get("RequestId") class DescribeNotificationConfigurationsRequest(AbstractModel): """DescribeNotificationConfigurations请求参数结构体 """ def __init__(self): r""" :param _AutoScalingNotificationIds: 按照一个或者多个通知ID查询。实例ID形如:asn-2sestqbr。每次请求的实例的上限为100。参数不支持同时指定`AutoScalingNotificationIds`和`Filters`。 :type AutoScalingNotificationIds: list of str :param _Filters: 过滤条件。 <li> auto-scaling-notification-id - String - 是否必填:否 -(过滤条件)按照通知ID过滤。</li> <li> auto-scaling-group-id - String - 是否必填:否 -(过滤条件)按照伸缩组ID过滤。</li> 每次请求的`Filters`的上限为10,`Filter.Values`的上限为5。参数不支持同时指定`AutoScalingNotificationIds`和`Filters`。 :type Filters: list of Filter :param _Limit: 返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :type Limit: int :param _Offset: 偏移量,默认为0。关于`Offset`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :type Offset: int """ self._AutoScalingNotificationIds = None self._Filters = None self._Limit = None self._Offset = None @property def AutoScalingNotificationIds(self): """按照一个或者多个通知ID查询。实例ID形如:asn-2sestqbr。每次请求的实例的上限为100。参数不支持同时指定`AutoScalingNotificationIds`和`Filters`。 :rtype: list of str """ return self._AutoScalingNotificationIds @AutoScalingNotificationIds.setter def AutoScalingNotificationIds(self, AutoScalingNotificationIds): self._AutoScalingNotificationIds = AutoScalingNotificationIds @property def Filters(self): """过滤条件。 <li> auto-scaling-notification-id - String - 是否必填:否 -(过滤条件)按照通知ID过滤。</li> <li> auto-scaling-group-id - String - 是否必填:否 -(过滤条件)按照伸缩组ID过滤。</li> 每次请求的`Filters`的上限为10,`Filter.Values`的上限为5。参数不支持同时指定`AutoScalingNotificationIds`和`Filters`。 :rtype: list of Filter """ return self._Filters @Filters.setter def Filters(self, Filters): self._Filters = Filters @property def Limit(self): """返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :rtype: int """ return self._Limit @Limit.setter def Limit(self, Limit): self._Limit = Limit @property def Offset(self): """偏移量,默认为0。关于`Offset`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :rtype: int """ return self._Offset @Offset.setter def Offset(self, Offset): self._Offset = Offset def _deserialize(self, params): self._AutoScalingNotificationIds = params.get("AutoScalingNotificationIds") if params.get("Filters") is not None: self._Filters = [] for item in params.get("Filters"): obj = Filter() obj._deserialize(item) self._Filters.append(obj) self._Limit = params.get("Limit") self._Offset = params.get("Offset") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeNotificationConfigurationsResponse(AbstractModel): """DescribeNotificationConfigurations返回参数结构体 """ def __init__(self): r""" :param _TotalCount: 符合条件的通知数量。 :type TotalCount: int :param _AutoScalingNotificationSet: 弹性伸缩事件通知详细信息列表。 :type AutoScalingNotificationSet: list of AutoScalingNotification :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._TotalCount = None self._AutoScalingNotificationSet = None self._RequestId = None @property def TotalCount(self): """符合条件的通知数量。 :rtype: int """ return self._TotalCount @TotalCount.setter def TotalCount(self, TotalCount): self._TotalCount = TotalCount @property def AutoScalingNotificationSet(self): """弹性伸缩事件通知详细信息列表。 :rtype: list of AutoScalingNotification """ return self._AutoScalingNotificationSet @AutoScalingNotificationSet.setter def AutoScalingNotificationSet(self, AutoScalingNotificationSet): self._AutoScalingNotificationSet = AutoScalingNotificationSet @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._TotalCount = params.get("TotalCount") if params.get("AutoScalingNotificationSet") is not None: self._AutoScalingNotificationSet = [] for item in params.get("AutoScalingNotificationSet"): obj = AutoScalingNotification() obj._deserialize(item) self._AutoScalingNotificationSet.append(obj) self._RequestId = params.get("RequestId") class DescribeRefreshActivitiesRequest(AbstractModel): """DescribeRefreshActivities请求参数结构体 """ def __init__(self): r""" :param _RefreshActivityIds: 刷新活动ID列表。ID形如:`asr-5l2ejpfo`。每次请求的上限为100。参数不支持同时指定`RefreshActivityIds`和`Filters`。 :type RefreshActivityIds: list of str :param _Filters: 过滤条件。 <li> auto-scaling-group-id - String - 是否必填:否 -(过滤条件)按照伸缩组ID过滤。</li> <li> refresh-activity-status-code - String - 是否必填:否 -(过滤条件)按照刷新活动状态过滤。(INIT:初始化中 | RUNNING:运行中 | SUCCESSFUL:活动成功 | FAILED_PAUSE:失败暂停 | AUTO_PAUSE:自动暂停 | MANUAL_PAUSE:手动暂停 | CANCELLED:活动取消 | FAILED:活动失败)</li> <li> refresh-activity-type - String - 是否必填:否 -(过滤条件)按照刷新活动类型过滤。(NORMAL:正常刷新活动 | ROLLBACK:回滚刷新活动)</li> <li> refresh-activity-id - String - 是否必填:否 -(过滤条件)按照刷新活动ID过滤。</li> <li> 每次请求的Filters的上限为10,Filter.Values的上限为5。参数不支持同时指定RefreshActivityIds和Filters。</li> :type Filters: list of Filter :param _Limit: 返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :type Limit: int :param _Offset: 偏移量,默认为0。关于`Offset`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :type Offset: int """ self._RefreshActivityIds = None self._Filters = None self._Limit = None self._Offset = None @property def RefreshActivityIds(self): """刷新活动ID列表。ID形如:`asr-5l2ejpfo`。每次请求的上限为100。参数不支持同时指定`RefreshActivityIds`和`Filters`。 :rtype: list of str """ return self._RefreshActivityIds @RefreshActivityIds.setter def RefreshActivityIds(self, RefreshActivityIds): self._RefreshActivityIds = RefreshActivityIds @property def Filters(self): """过滤条件。 <li> auto-scaling-group-id - String - 是否必填:否 -(过滤条件)按照伸缩组ID过滤。</li> <li> refresh-activity-status-code - String - 是否必填:否 -(过滤条件)按照刷新活动状态过滤。(INIT:初始化中 | RUNNING:运行中 | SUCCESSFUL:活动成功 | FAILED_PAUSE:失败暂停 | AUTO_PAUSE:自动暂停 | MANUAL_PAUSE:手动暂停 | CANCELLED:活动取消 | FAILED:活动失败)</li> <li> refresh-activity-type - String - 是否必填:否 -(过滤条件)按照刷新活动类型过滤。(NORMAL:正常刷新活动 | ROLLBACK:回滚刷新活动)</li> <li> refresh-activity-id - String - 是否必填:否 -(过滤条件)按照刷新活动ID过滤。</li> <li> 每次请求的Filters的上限为10,Filter.Values的上限为5。参数不支持同时指定RefreshActivityIds和Filters。</li> :rtype: list of Filter """ return self._Filters @Filters.setter def Filters(self, Filters): self._Filters = Filters @property def Limit(self): """返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :rtype: int """ return self._Limit @Limit.setter def Limit(self, Limit): self._Limit = Limit @property def Offset(self): """偏移量,默认为0。关于`Offset`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :rtype: int """ return self._Offset @Offset.setter def Offset(self, Offset): self._Offset = Offset def _deserialize(self, params): self._RefreshActivityIds = params.get("RefreshActivityIds") if params.get("Filters") is not None: self._Filters = [] for item in params.get("Filters"): obj = Filter() obj._deserialize(item) self._Filters.append(obj) self._Limit = params.get("Limit") self._Offset = params.get("Offset") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeRefreshActivitiesResponse(AbstractModel): """DescribeRefreshActivities返回参数结构体 """ def __init__(self): r""" :param _TotalCount: 符合条件的刷新活动数量。 :type TotalCount: int :param _RefreshActivitySet: 符合条件的刷新活动信息集合。 :type RefreshActivitySet: list of RefreshActivity :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._TotalCount = None self._RefreshActivitySet = None self._RequestId = None @property def TotalCount(self): """符合条件的刷新活动数量。 :rtype: int """ return self._TotalCount @TotalCount.setter def TotalCount(self, TotalCount): self._TotalCount = TotalCount @property def RefreshActivitySet(self): """符合条件的刷新活动信息集合。 :rtype: list of RefreshActivity """ return self._RefreshActivitySet @RefreshActivitySet.setter def RefreshActivitySet(self, RefreshActivitySet): self._RefreshActivitySet = RefreshActivitySet @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._TotalCount = params.get("TotalCount") if params.get("RefreshActivitySet") is not None: self._RefreshActivitySet = [] for item in params.get("RefreshActivitySet"): obj = RefreshActivity() obj._deserialize(item) self._RefreshActivitySet.append(obj) self._RequestId = params.get("RequestId") class DescribeScalingPoliciesRequest(AbstractModel): """DescribeScalingPolicies请求参数结构体 """ def __init__(self): r""" :param _AutoScalingPolicyIds: 按照一个或者多个告警策略ID查询。告警策略ID形如:asp-i9vkg894。每次请求的实例的上限为100。参数不支持同时指定`AutoScalingPolicyIds`和`Filters`。 :type AutoScalingPolicyIds: list of str :param _Filters: 过滤条件。 <li> auto-scaling-policy-id - String - 是否必填:否 -(过滤条件)按照告警策略ID过滤。</li> <li> auto-scaling-group-id - String - 是否必填:否 -(过滤条件)按照伸缩组ID过滤。</li> <li> scaling-policy-name - String - 是否必填:否 -(过滤条件)按照告警策略名称过滤。</li> <li> scaling-policy-type - String - 是否必填:否 -(过滤条件)按照告警策略类型过滤,取值范围为SIMPLE,TARGET_TRACKING。</li> 每次请求的`Filters`的上限为10,`Filter.Values`的上限为5。参数不支持同时指定`AutoScalingPolicyIds`和`Filters`。 :type Filters: list of Filter :param _Limit: 返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :type Limit: int :param _Offset: 偏移量,默认为0。关于`Offset`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :type Offset: int """ self._AutoScalingPolicyIds = None self._Filters = None self._Limit = None self._Offset = None @property def AutoScalingPolicyIds(self): """按照一个或者多个告警策略ID查询。告警策略ID形如:asp-i9vkg894。每次请求的实例的上限为100。参数不支持同时指定`AutoScalingPolicyIds`和`Filters`。 :rtype: list of str """ return self._AutoScalingPolicyIds @AutoScalingPolicyIds.setter def AutoScalingPolicyIds(self, AutoScalingPolicyIds): self._AutoScalingPolicyIds = AutoScalingPolicyIds @property def Filters(self): """过滤条件。 <li> auto-scaling-policy-id - String - 是否必填:否 -(过滤条件)按照告警策略ID过滤。</li> <li> auto-scaling-group-id - String - 是否必填:否 -(过滤条件)按照伸缩组ID过滤。</li> <li> scaling-policy-name - String - 是否必填:否 -(过滤条件)按照告警策略名称过滤。</li> <li> scaling-policy-type - String - 是否必填:否 -(过滤条件)按照告警策略类型过滤,取值范围为SIMPLE,TARGET_TRACKING。</li> 每次请求的`Filters`的上限为10,`Filter.Values`的上限为5。参数不支持同时指定`AutoScalingPolicyIds`和`Filters`。 :rtype: list of Filter """ return self._Filters @Filters.setter def Filters(self, Filters): self._Filters = Filters @property def Limit(self): """返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :rtype: int """ return self._Limit @Limit.setter def Limit(self, Limit): self._Limit = Limit @property def Offset(self): """偏移量,默认为0。关于`Offset`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :rtype: int """ return self._Offset @Offset.setter def Offset(self, Offset): self._Offset = Offset def _deserialize(self, params): self._AutoScalingPolicyIds = params.get("AutoScalingPolicyIds") if params.get("Filters") is not None: self._Filters = [] for item in params.get("Filters"): obj = Filter() obj._deserialize(item) self._Filters.append(obj) self._Limit = params.get("Limit") self._Offset = params.get("Offset") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeScalingPoliciesResponse(AbstractModel): """DescribeScalingPolicies返回参数结构体 """ def __init__(self): r""" :param _ScalingPolicySet: 弹性伸缩告警触发策略详细信息列表。 :type ScalingPolicySet: list of ScalingPolicy :param _TotalCount: 符合条件的通知数量。 :type TotalCount: int :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._ScalingPolicySet = None self._TotalCount = None self._RequestId = None @property def ScalingPolicySet(self): """弹性伸缩告警触发策略详细信息列表。 :rtype: list of ScalingPolicy """ return self._ScalingPolicySet @ScalingPolicySet.setter def ScalingPolicySet(self, ScalingPolicySet): self._ScalingPolicySet = ScalingPolicySet @property def TotalCount(self): """符合条件的通知数量。 :rtype: int """ return self._TotalCount @TotalCount.setter def TotalCount(self, TotalCount): self._TotalCount = TotalCount @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): if params.get("ScalingPolicySet") is not None: self._ScalingPolicySet = [] for item in params.get("ScalingPolicySet"): obj = ScalingPolicy() obj._deserialize(item) self._ScalingPolicySet.append(obj) self._TotalCount = params.get("TotalCount") self._RequestId = params.get("RequestId") class DescribeScheduledActionsRequest(AbstractModel): """DescribeScheduledActions请求参数结构体 """ def __init__(self): r""" :param _ScheduledActionIds: 按照一个或者多个定时任务ID查询。实例ID形如:asst-am691zxo。每次请求的实例的上限为100。参数不支持同时指定ScheduledActionIds和Filters。 :type ScheduledActionIds: list of str :param _Filters: 过滤条件。 <li> scheduled-action-id - String - 是否必填:否 -(过滤条件)按照定时任务ID过滤。</li> <li> scheduled-action-name - String - 是否必填:否 - (过滤条件) 按照定时任务名称过滤。</li> <li> auto-scaling-group-id - String - 是否必填:否 - (过滤条件) 按照伸缩组ID过滤。</li> :type Filters: list of Filter :param _Offset: 偏移量,默认为0。关于Offset的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :type Offset: int :param _Limit: 返回数量,默认为20,最大值为100。关于Limit的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :type Limit: int """ self._ScheduledActionIds = None self._Filters = None self._Offset = None self._Limit = None @property def ScheduledActionIds(self): """按照一个或者多个定时任务ID查询。实例ID形如:asst-am691zxo。每次请求的实例的上限为100。参数不支持同时指定ScheduledActionIds和Filters。 :rtype: list of str """ return self._ScheduledActionIds @ScheduledActionIds.setter def ScheduledActionIds(self, ScheduledActionIds): self._ScheduledActionIds = ScheduledActionIds @property def Filters(self): """过滤条件。 <li> scheduled-action-id - String - 是否必填:否 -(过滤条件)按照定时任务ID过滤。</li> <li> scheduled-action-name - String - 是否必填:否 - (过滤条件) 按照定时任务名称过滤。</li> <li> auto-scaling-group-id - String - 是否必填:否 - (过滤条件) 按照伸缩组ID过滤。</li> :rtype: list of Filter """ return self._Filters @Filters.setter def Filters(self, Filters): self._Filters = Filters @property def Offset(self): """偏移量,默认为0。关于Offset的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :rtype: int """ return self._Offset @Offset.setter def Offset(self, Offset): self._Offset = Offset @property def Limit(self): """返回数量,默认为20,最大值为100。关于Limit的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。 :rtype: int """ return self._Limit @Limit.setter def Limit(self, Limit): self._Limit = Limit def _deserialize(self, params): self._ScheduledActionIds = params.get("ScheduledActionIds") if params.get("Filters") is not None: self._Filters = [] for item in params.get("Filters"): obj = Filter() obj._deserialize(item) self._Filters.append(obj) self._Offset = params.get("Offset") self._Limit = params.get("Limit") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeScheduledActionsResponse(AbstractModel): """DescribeScheduledActions返回参数结构体 """ def __init__(self): r""" :param _TotalCount: 符合条件的定时任务数量。 :type TotalCount: int :param _ScheduledActionSet: 定时任务详细信息列表。 :type ScheduledActionSet: list of ScheduledAction :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._TotalCount = None self._ScheduledActionSet = None self._RequestId = None @property def TotalCount(self): """符合条件的定时任务数量。 :rtype: int """ return self._TotalCount @TotalCount.setter def TotalCount(self, TotalCount): self._TotalCount = TotalCount @property def ScheduledActionSet(self): """定时任务详细信息列表。 :rtype: list of ScheduledAction """ return self._ScheduledActionSet @ScheduledActionSet.setter def ScheduledActionSet(self, ScheduledActionSet): self._ScheduledActionSet = ScheduledActionSet @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._TotalCount = params.get("TotalCount") if params.get("ScheduledActionSet") is not None: self._ScheduledActionSet = [] for item in params.get("ScheduledActionSet"): obj = ScheduledAction() obj._deserialize(item) self._ScheduledActionSet.append(obj) self._RequestId = params.get("RequestId") class DetachInstancesRequest(AbstractModel): """DetachInstances请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str :param _InstanceIds: CVM实例ID列表 :type InstanceIds: list of str """ self._AutoScalingGroupId = None self._InstanceIds = None @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def InstanceIds(self): """CVM实例ID列表 :rtype: list of str """ return self._InstanceIds @InstanceIds.setter def InstanceIds(self, InstanceIds): self._InstanceIds = InstanceIds def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._InstanceIds = params.get("InstanceIds") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DetachInstancesResponse(AbstractModel): """DetachInstances返回参数结构体 """ def __init__(self): r""" :param _ActivityId: 伸缩活动ID :type ActivityId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._ActivityId = None self._RequestId = None @property def ActivityId(self): """伸缩活动ID :rtype: str """ return self._ActivityId @ActivityId.setter def ActivityId(self, ActivityId): self._ActivityId = ActivityId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._ActivityId = params.get("ActivityId") self._RequestId = params.get("RequestId") class DetachLoadBalancersRequest(AbstractModel): """DetachLoadBalancers请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str :param _LoadBalancerIds: 传统负载均衡器ID列表,列表长度上限为20,LoadBalancerIds 和 ForwardLoadBalancerIdentifications 二者同时最多只能指定一个 :type LoadBalancerIds: list of str :param _ForwardLoadBalancerIdentifications: 应用型负载均衡器标识信息列表,列表长度上限为100,LoadBalancerIds 和 ForwardLoadBalancerIdentifications二者同时最多只能指定一个 :type ForwardLoadBalancerIdentifications: list of ForwardLoadBalancerIdentification """ self._AutoScalingGroupId = None self._LoadBalancerIds = None self._ForwardLoadBalancerIdentifications = None @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def LoadBalancerIds(self): """传统负载均衡器ID列表,列表长度上限为20,LoadBalancerIds 和 ForwardLoadBalancerIdentifications 二者同时最多只能指定一个 :rtype: list of str """ return self._LoadBalancerIds @LoadBalancerIds.setter def LoadBalancerIds(self, LoadBalancerIds): self._LoadBalancerIds = LoadBalancerIds @property def ForwardLoadBalancerIdentifications(self): """应用型负载均衡器标识信息列表,列表长度上限为100,LoadBalancerIds 和 ForwardLoadBalancerIdentifications二者同时最多只能指定一个 :rtype: list of ForwardLoadBalancerIdentification """ return self._ForwardLoadBalancerIdentifications @ForwardLoadBalancerIdentifications.setter def ForwardLoadBalancerIdentifications(self, ForwardLoadBalancerIdentifications): self._ForwardLoadBalancerIdentifications = ForwardLoadBalancerIdentifications def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._LoadBalancerIds = params.get("LoadBalancerIds") if params.get("ForwardLoadBalancerIdentifications") is not None: self._ForwardLoadBalancerIdentifications = [] for item in params.get("ForwardLoadBalancerIdentifications"): obj = ForwardLoadBalancerIdentification() obj._deserialize(item) self._ForwardLoadBalancerIdentifications.append(obj) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DetachLoadBalancersResponse(AbstractModel): """DetachLoadBalancers返回参数结构体 """ def __init__(self): r""" :param _ActivityId: 伸缩活动ID :type ActivityId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._ActivityId = None self._RequestId = None @property def ActivityId(self): """伸缩活动ID :rtype: str """ return self._ActivityId @ActivityId.setter def ActivityId(self, ActivityId): self._ActivityId = ActivityId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._ActivityId = params.get("ActivityId") self._RequestId = params.get("RequestId") class DetailedStatusMessage(AbstractModel): """伸缩活动状态详细描述。 """ def __init__(self): r""" :param _Code: 错误类型。 :type Code: str :param _Zone: 可用区信息。 :type Zone: str :param _InstanceId: 实例ID。 :type InstanceId: str :param _InstanceChargeType: 实例计费类型。 :type InstanceChargeType: str :param _SubnetId: 子网ID。 :type SubnetId: str :param _Message: 错误描述。 :type Message: str :param _InstanceType: 实例类型。 :type InstanceType: str """ self._Code = None self._Zone = None self._InstanceId = None self._InstanceChargeType = None self._SubnetId = None self._Message = None self._InstanceType = None @property def Code(self): """错误类型。 :rtype: str """ return self._Code @Code.setter def Code(self, Code): self._Code = Code @property def Zone(self): """可用区信息。 :rtype: str """ return self._Zone @Zone.setter def Zone(self, Zone): self._Zone = Zone @property def InstanceId(self): """实例ID。 :rtype: str """ return self._InstanceId @InstanceId.setter def InstanceId(self, InstanceId): self._InstanceId = InstanceId @property def InstanceChargeType(self): """实例计费类型。 :rtype: str """ return self._InstanceChargeType @InstanceChargeType.setter def InstanceChargeType(self, InstanceChargeType): self._InstanceChargeType = InstanceChargeType @property def SubnetId(self): """子网ID。 :rtype: str """ return self._SubnetId @SubnetId.setter def SubnetId(self, SubnetId): self._SubnetId = SubnetId @property def Message(self): """错误描述。 :rtype: str """ return self._Message @Message.setter def Message(self, Message): self._Message = Message @property def InstanceType(self): """实例类型。 :rtype: str """ return self._InstanceType @InstanceType.setter def InstanceType(self, InstanceType): self._InstanceType = InstanceType def _deserialize(self, params): self._Code = params.get("Code") self._Zone = params.get("Zone") self._InstanceId = params.get("InstanceId") self._InstanceChargeType = params.get("InstanceChargeType") self._SubnetId = params.get("SubnetId") self._Message = params.get("Message") self._InstanceType = params.get("InstanceType") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DisableAutoScalingGroupRequest(AbstractModel): """DisableAutoScalingGroup请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str """ self._AutoScalingGroupId = None @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DisableAutoScalingGroupResponse(AbstractModel): """DisableAutoScalingGroup返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class EnableAutoScalingGroupRequest(AbstractModel): """EnableAutoScalingGroup请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str """ self._AutoScalingGroupId = None @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class EnableAutoScalingGroupResponse(AbstractModel): """EnableAutoScalingGroup返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class EnhancedService(AbstractModel): """描述了实例的增强服务启用情况与其设置,如云安全,云监控,自动化助手等实例 Agent。 """ def __init__(self): r""" :param _SecurityService: 开启云安全服务。若不指定该参数,则默认开启云安全服务。 :type SecurityService: :class:`tencentcloud.autoscaling.v20180419.models.RunSecurityServiceEnabled` :param _MonitorService: 开启云监控服务。若不指定该参数,则默认开启云监控服务。 :type MonitorService: :class:`tencentcloud.autoscaling.v20180419.models.RunMonitorServiceEnabled` :param _AutomationService: 该参数已废弃,查询时会返回空值,请勿使用。 :type AutomationService: list of RunAutomationServiceEnabled :param _AutomationToolsService: 开启自动化助手服务。若不指定该参数,则默认逻辑与CVM保持一致。注意:此字段可能返回 null,表示取不到有效值。 :type AutomationToolsService: :class:`tencentcloud.autoscaling.v20180419.models.RunAutomationServiceEnabled` """ self._SecurityService = None self._MonitorService = None self._AutomationService = None self._AutomationToolsService = None @property def SecurityService(self): """开启云安全服务。若不指定该参数,则默认开启云安全服务。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.RunSecurityServiceEnabled` """ return self._SecurityService @SecurityService.setter def SecurityService(self, SecurityService): self._SecurityService = SecurityService @property def MonitorService(self): """开启云监控服务。若不指定该参数,则默认开启云监控服务。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.RunMonitorServiceEnabled` """ return self._MonitorService @MonitorService.setter def MonitorService(self, MonitorService): self._MonitorService = MonitorService @property def AutomationService(self): warnings.warn("parameter `AutomationService` is deprecated", DeprecationWarning) """该参数已废弃,查询时会返回空值,请勿使用。 :rtype: list of RunAutomationServiceEnabled """ return self._AutomationService @AutomationService.setter def AutomationService(self, AutomationService): warnings.warn("parameter `AutomationService` is deprecated", DeprecationWarning) self._AutomationService = AutomationService @property def AutomationToolsService(self): """开启自动化助手服务。若不指定该参数,则默认逻辑与CVM保持一致。注意:此字段可能返回 null,表示取不到有效值。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.RunAutomationServiceEnabled` """ return self._AutomationToolsService @AutomationToolsService.setter def AutomationToolsService(self, AutomationToolsService): self._AutomationToolsService = AutomationToolsService def _deserialize(self, params): if params.get("SecurityService") is not None: self._SecurityService = RunSecurityServiceEnabled() self._SecurityService._deserialize(params.get("SecurityService")) if params.get("MonitorService") is not None: self._MonitorService = RunMonitorServiceEnabled() self._MonitorService._deserialize(params.get("MonitorService")) if params.get("AutomationService") is not None: self._AutomationService = [] for item in params.get("AutomationService"): obj = RunAutomationServiceEnabled() obj._deserialize(item) self._AutomationService.append(obj) if params.get("AutomationToolsService") is not None: self._AutomationToolsService = RunAutomationServiceEnabled() self._AutomationToolsService._deserialize(params.get("AutomationToolsService")) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ExecuteScalingPolicyRequest(AbstractModel): """ExecuteScalingPolicy请求参数结构体 """ def __init__(self): r""" :param _AutoScalingPolicyId: 告警伸缩策略ID,不支持目标追踪策略。 :type AutoScalingPolicyId: str :param _HonorCooldown: 是否检查伸缩组活动处于冷却时间内,默认值为false :type HonorCooldown: bool :param _TriggerSource: 执行伸缩策略的触发来源,取值包括 API 和 CLOUD_MONITOR,默认值为 API。CLOUD_MONITOR 专门供云监控触发调用。 :type TriggerSource: str """ self._AutoScalingPolicyId = None self._HonorCooldown = None self._TriggerSource = None @property def AutoScalingPolicyId(self): """告警伸缩策略ID,不支持目标追踪策略。 :rtype: str """ return self._AutoScalingPolicyId @AutoScalingPolicyId.setter def AutoScalingPolicyId(self, AutoScalingPolicyId): self._AutoScalingPolicyId = AutoScalingPolicyId @property def HonorCooldown(self): """是否检查伸缩组活动处于冷却时间内,默认值为false :rtype: bool """ return self._HonorCooldown @HonorCooldown.setter def HonorCooldown(self, HonorCooldown): self._HonorCooldown = HonorCooldown @property def TriggerSource(self): """执行伸缩策略的触发来源,取值包括 API 和 CLOUD_MONITOR,默认值为 API。CLOUD_MONITOR 专门供云监控触发调用。 :rtype: str """ return self._TriggerSource @TriggerSource.setter def TriggerSource(self, TriggerSource): self._TriggerSource = TriggerSource def _deserialize(self, params): self._AutoScalingPolicyId = params.get("AutoScalingPolicyId") self._HonorCooldown = params.get("HonorCooldown") self._TriggerSource = params.get("TriggerSource") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ExecuteScalingPolicyResponse(AbstractModel): """ExecuteScalingPolicy返回参数结构体 """ def __init__(self): r""" :param _ActivityId: 伸缩活动ID :type ActivityId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._ActivityId = None self._RequestId = None @property def ActivityId(self): """伸缩活动ID :rtype: str """ return self._ActivityId @ActivityId.setter def ActivityId(self, ActivityId): self._ActivityId = ActivityId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._ActivityId = params.get("ActivityId") self._RequestId = params.get("RequestId") class ExitStandbyRequest(AbstractModel): """ExitStandby请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组 ID。 :type AutoScalingGroupId: str :param _InstanceIds: 备用中状态 CVM 实例列表。 :type InstanceIds: list of str """ self._AutoScalingGroupId = None self._InstanceIds = None @property def AutoScalingGroupId(self): """伸缩组 ID。 :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def InstanceIds(self): """备用中状态 CVM 实例列表。 :rtype: list of str """ return self._InstanceIds @InstanceIds.setter def InstanceIds(self, InstanceIds): self._InstanceIds = InstanceIds def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._InstanceIds = params.get("InstanceIds") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ExitStandbyResponse(AbstractModel): """ExitStandby返回参数结构体 """ def __init__(self): r""" :param _ActivityId: 伸缩活动ID。 注意:此字段可能返回 null,表示取不到有效值。 :type ActivityId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._ActivityId = None self._RequestId = None @property def ActivityId(self): """伸缩活动ID。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._ActivityId @ActivityId.setter def ActivityId(self, ActivityId): self._ActivityId = ActivityId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._ActivityId = params.get("ActivityId") self._RequestId = params.get("RequestId") class Filter(AbstractModel): """>描述键值对过滤器,用于条件过滤查询。例如过滤ID、名称、状态等 > * 若存在多个`Filter`时,`Filter`间的关系为逻辑与(`AND`)关系。 > * 若同一个`Filter`存在多个`Values`,同一`Filter`下`Values`间的关系为逻辑或(`OR`)关系。 > > 以[DescribeInstances](https://cloud.tencent.com/document/api/213/15728)接口的`Filter`为例。若我们需要查询可用区(`zone`)为广州一区 ***并且*** 实例计费模式(`instance-charge-type`)为包年包月 ***或者*** 按量计费的实例时,可如下实现: ``` Filters.0.Name=zone &Filters.0.Values.0=ap-guangzhou-1 &Filters.1.Name=instance-charge-type &Filters.1.Values.0=PREPAID &Filters.1.Values.1=POSTPAID_BY_HOUR ``` """ def __init__(self): r""" :param _Name: 需要过滤的字段。 :type Name: str :param _Values: 字段的过滤值。 :type Values: list of str """ self._Name = None self._Values = None @property def Name(self): """需要过滤的字段。 :rtype: str """ return self._Name @Name.setter def Name(self, Name): self._Name = Name @property def Values(self): """字段的过滤值。 :rtype: list of str """ return self._Values @Values.setter def Values(self, Values): self._Values = Values def _deserialize(self, params): self._Name = params.get("Name") self._Values = params.get("Values") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ForwardLoadBalancer(AbstractModel): """应用型负载均衡器 """ def __init__(self): r""" :param _LoadBalancerId: 负载均衡器ID :type LoadBalancerId: str :param _ListenerId: 应用型负载均衡监听器 ID :type ListenerId: str :param _TargetAttributes: 目标规则属性列表 :type TargetAttributes: list of TargetAttribute :param _LocationId: 转发规则ID,注意:针对七层监听器此参数必填 :type LocationId: str :param _Region: 负载均衡实例所属地域,默认取AS服务所在地域。格式与公共参数Region相同,如:"ap-guangzhou"。 :type Region: str """ self._LoadBalancerId = None self._ListenerId = None self._TargetAttributes = None self._LocationId = None self._Region = None @property def LoadBalancerId(self): """负载均衡器ID :rtype: str """ return self._LoadBalancerId @LoadBalancerId.setter def LoadBalancerId(self, LoadBalancerId): self._LoadBalancerId = LoadBalancerId @property def ListenerId(self): """应用型负载均衡监听器 ID :rtype: str """ return self._ListenerId @ListenerId.setter def ListenerId(self, ListenerId): self._ListenerId = ListenerId @property def TargetAttributes(self): """目标规则属性列表 :rtype: list of TargetAttribute """ return self._TargetAttributes @TargetAttributes.setter def TargetAttributes(self, TargetAttributes): self._TargetAttributes = TargetAttributes @property def LocationId(self): """转发规则ID,注意:针对七层监听器此参数必填 :rtype: str """ return self._LocationId @LocationId.setter def LocationId(self, LocationId): self._LocationId = LocationId @property def Region(self): """负载均衡实例所属地域,默认取AS服务所在地域。格式与公共参数Region相同,如:"ap-guangzhou"。 :rtype: str """ return self._Region @Region.setter def Region(self, Region): self._Region = Region def _deserialize(self, params): self._LoadBalancerId = params.get("LoadBalancerId") self._ListenerId = params.get("ListenerId") if params.get("TargetAttributes") is not None: self._TargetAttributes = [] for item in params.get("TargetAttributes"): obj = TargetAttribute() obj._deserialize(item) self._TargetAttributes.append(obj) self._LocationId = params.get("LocationId") self._Region = params.get("Region") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ForwardLoadBalancerIdentification(AbstractModel): """应用型负载均衡器标识信息 """ def __init__(self): r""" :param _LoadBalancerId: 负载均衡器ID :type LoadBalancerId: str :param _ListenerId: 应用型负载均衡监听器 ID :type ListenerId: str :param _LocationId: 转发规则ID,注意:针对七层监听器此参数必填 :type LocationId: str """ self._LoadBalancerId = None self._ListenerId = None self._LocationId = None @property def LoadBalancerId(self): """负载均衡器ID :rtype: str """ return self._LoadBalancerId @LoadBalancerId.setter def LoadBalancerId(self, LoadBalancerId): self._LoadBalancerId = LoadBalancerId @property def ListenerId(self): """应用型负载均衡监听器 ID :rtype: str """ return self._ListenerId @ListenerId.setter def ListenerId(self, ListenerId): self._ListenerId = ListenerId @property def LocationId(self): """转发规则ID,注意:针对七层监听器此参数必填 :rtype: str """ return self._LocationId @LocationId.setter def LocationId(self, LocationId): self._LocationId = LocationId def _deserialize(self, params): self._LoadBalancerId = params.get("LoadBalancerId") self._ListenerId = params.get("ListenerId") self._LocationId = params.get("LocationId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class HostNameSettings(AbstractModel): """云服务器主机名(HostName)的相关设置 """ def __init__(self): r""" :param _HostName: 云服务器的主机名。 <li> 点号(.)和短横线(-)不能作为 HostName 的首尾字符,不能连续使用。</li> <li> 不支持 Windows 实例。</li> <li> 其他类型(Linux 等)实例:字符长度为[2, 40],允许支持多个点号,点之间为一段,每段允许字母(不限制大小写)、数字和短横线(-)组成。不允许为纯数字。</li> 注意:此字段可能返回 null,表示取不到有效值。 :type HostName: str :param _HostNameStyle: 云服务器主机名的风格,取值范围包括 ORIGINAL 和 UNIQUE,默认为 ORIGINAL。 <li> ORIGINAL,AS 直接将入参中所填的 HostName 传递给 CVM,CVM 可能会对 HostName 追加序列号,伸缩组中实例的 HostName 会出现冲突的情况。</li> <li> UNIQUE,入参所填的 HostName 相当于主机名前缀,AS 和 CVM 会对其进行拓展,伸缩组中实例的 HostName 可以保证唯一。</li> 注意:此字段可能返回 null,表示取不到有效值。 :type HostNameStyle: str :param _HostNameSuffix: 云服务器的主机名后缀。 <li> 点号(.)和短横线(-)不能作为 HostNameSuffix 的首尾字符,不能连续使用。</li> <li> 不支持 Windows 实例。</li> <li>其他类型(Linux 等)实例:字符长度为[1, 37],且与 HostName 的长度和不能超过 39,允许支持多个点号,点之间为一段,每段允许字母(不限制大小写)、数字和短横线(-)组成。</li> 假设后缀名称为 suffix,原主机名为 test.0,最终主机名为 test.0.suffix。 注意:此字段可能返回 null,表示取不到有效值。 :type HostNameSuffix: str """ self._HostName = None self._HostNameStyle = None self._HostNameSuffix = None @property def HostName(self): """云服务器的主机名。 <li> 点号(.)和短横线(-)不能作为 HostName 的首尾字符,不能连续使用。</li> <li> 不支持 Windows 实例。</li> <li> 其他类型(Linux 等)实例:字符长度为[2, 40],允许支持多个点号,点之间为一段,每段允许字母(不限制大小写)、数字和短横线(-)组成。不允许为纯数字。</li> 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._HostName @HostName.setter def HostName(self, HostName): self._HostName = HostName @property def HostNameStyle(self): """云服务器主机名的风格,取值范围包括 ORIGINAL 和 UNIQUE,默认为 ORIGINAL。 <li> ORIGINAL,AS 直接将入参中所填的 HostName 传递给 CVM,CVM 可能会对 HostName 追加序列号,伸缩组中实例的 HostName 会出现冲突的情况。</li> <li> UNIQUE,入参所填的 HostName 相当于主机名前缀,AS 和 CVM 会对其进行拓展,伸缩组中实例的 HostName 可以保证唯一。</li> 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._HostNameStyle @HostNameStyle.setter def HostNameStyle(self, HostNameStyle): self._HostNameStyle = HostNameStyle @property def HostNameSuffix(self): """云服务器的主机名后缀。 <li> 点号(.)和短横线(-)不能作为 HostNameSuffix 的首尾字符,不能连续使用。</li> <li> 不支持 Windows 实例。</li> <li>其他类型(Linux 等)实例:字符长度为[1, 37],且与 HostName 的长度和不能超过 39,允许支持多个点号,点之间为一段,每段允许字母(不限制大小写)、数字和短横线(-)组成。</li> 假设后缀名称为 suffix,原主机名为 test.0,最终主机名为 test.0.suffix。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._HostNameSuffix @HostNameSuffix.setter def HostNameSuffix(self, HostNameSuffix): self._HostNameSuffix = HostNameSuffix def _deserialize(self, params): self._HostName = params.get("HostName") self._HostNameStyle = params.get("HostNameStyle") self._HostNameSuffix = params.get("HostNameSuffix") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class IPv6InternetAccessible(AbstractModel): """描述了启动配置创建实例的IPv6地址公网可访问性,声明了IPv6地址公网使用计费模式,最大带宽等 """ def __init__(self): r""" :param _InternetChargeType: 网络计费模式。取值包括TRAFFIC_POSTPAID_BY_HOUR、BANDWIDTH_PACKAGE,默认取值为TRAFFIC_POSTPAID_BY_HOUR。查看当前账户类型可参考[账户类型说明](https://cloud.tencent.com/document/product/1199/49090#judge)。 <br><li> IPv6对标准账户类型支持TRAFFIC_POSTPAID_BY_HOUR。 <br><li> IPv6对传统账户类型支持BANDWIDTH_PACKAGE。 注意:此字段可能返回 null,表示取不到有效值。 :type InternetChargeType: str :param _InternetMaxBandwidthOut: 公网出带宽上限,单位:Mbps。<br>默认值:0,此时不为IPv6分配公网带宽。不同机型、可用区、计费模式的带宽上限范围不一致,具体限制详见[公网带宽上限](https://cloud.tencent.com/document/product/213/12523)。 注意:此字段可能返回 null,表示取不到有效值。 :type InternetMaxBandwidthOut: int :param _BandwidthPackageId: 带宽包ID。可通过[DescribeBandwidthPackages](https://cloud.tencent.com/document/api/215/19209)接口返回值中的`BandwidthPackageId`获取。 注意:此字段可能返回 null,表示取不到有效值。 :type BandwidthPackageId: str """ self._InternetChargeType = None self._InternetMaxBandwidthOut = None self._BandwidthPackageId = None @property def InternetChargeType(self): """网络计费模式。取值包括TRAFFIC_POSTPAID_BY_HOUR、BANDWIDTH_PACKAGE,默认取值为TRAFFIC_POSTPAID_BY_HOUR。查看当前账户类型可参考[账户类型说明](https://cloud.tencent.com/document/product/1199/49090#judge)。 <br><li> IPv6对标准账户类型支持TRAFFIC_POSTPAID_BY_HOUR。 <br><li> IPv6对传统账户类型支持BANDWIDTH_PACKAGE。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._InternetChargeType @InternetChargeType.setter def InternetChargeType(self, InternetChargeType): self._InternetChargeType = InternetChargeType @property def InternetMaxBandwidthOut(self): """公网出带宽上限,单位:Mbps。<br>默认值:0,此时不为IPv6分配公网带宽。不同机型、可用区、计费模式的带宽上限范围不一致,具体限制详见[公网带宽上限](https://cloud.tencent.com/document/product/213/12523)。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: int """ return self._InternetMaxBandwidthOut @InternetMaxBandwidthOut.setter def InternetMaxBandwidthOut(self, InternetMaxBandwidthOut): self._InternetMaxBandwidthOut = InternetMaxBandwidthOut @property def BandwidthPackageId(self): """带宽包ID。可通过[DescribeBandwidthPackages](https://cloud.tencent.com/document/api/215/19209)接口返回值中的`BandwidthPackageId`获取。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._BandwidthPackageId @BandwidthPackageId.setter def BandwidthPackageId(self, BandwidthPackageId): self._BandwidthPackageId = BandwidthPackageId def _deserialize(self, params): self._InternetChargeType = params.get("InternetChargeType") self._InternetMaxBandwidthOut = params.get("InternetMaxBandwidthOut") self._BandwidthPackageId = params.get("BandwidthPackageId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class Instance(AbstractModel): """实例信息 """ def __init__(self): r""" :param _InstanceId: 实例ID :type InstanceId: str :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str :param _LaunchConfigurationId: 启动配置ID :type LaunchConfigurationId: str :param _LaunchConfigurationName: 启动配置名称 :type LaunchConfigurationName: str :param _LifeCycleState: 生命周期状态,取值如下:<br> <li>IN_SERVICE:运行中 <li>CREATING:创建中 <li>CREATION_FAILED:创建失败 <li>TERMINATING:中止中 <li>TERMINATION_FAILED:中止失败 <li>ATTACHING:绑定中 <li>ATTACH_FAILED:绑定失败 <li>DETACHING:解绑中 <li>DETACH_FAILED:解绑失败 <li>ATTACHING_LB:绑定LB中 <li>DETACHING_LB:解绑LB中 <li>MODIFYING_LB:修改LB中 <li>STARTING:开机中 <li>START_FAILED:开机失败 <li>STOPPING:关机中 <li>STOP_FAILED:关机失败 <li>STOPPED:已关机 <li>IN_LAUNCHING_HOOK:扩容生命周期挂钩中 <li>IN_TERMINATING_HOOK:缩容生命周期挂钩中 :type LifeCycleState: str :param _HealthStatus: 健康状态,取值包括HEALTHY和UNHEALTHY :type HealthStatus: str :param _ProtectedFromScaleIn: 是否加入缩容保护 :type ProtectedFromScaleIn: bool :param _Zone: 可用区 :type Zone: str :param _CreationType: 创建类型,取值包括AUTO_CREATION, MANUAL_ATTACHING。 :type CreationType: str :param _AddTime: 实例加入时间 :type AddTime: str :param _InstanceType: 实例类型 :type InstanceType: str :param _VersionNumber: 版本号 :type VersionNumber: int :param _AutoScalingGroupName: 伸缩组名称 :type AutoScalingGroupName: str :param _WarmupStatus: 预热状态,取值如下: <li>WAITING_ENTER_WARMUP:等待进入预热 <li>NO_NEED_WARMUP:无需预热 <li>IN_WARMUP:预热中 <li>AFTER_WARMUP:完成预热 :type WarmupStatus: str :param _DisasterRecoverGroupIds: 置放群组id,仅支持指定一个。 注意:此字段可能返回 null,表示取不到有效值。 :type DisasterRecoverGroupIds: list of str """ self._InstanceId = None self._AutoScalingGroupId = None self._LaunchConfigurationId = None self._LaunchConfigurationName = None self._LifeCycleState = None self._HealthStatus = None self._ProtectedFromScaleIn = None self._Zone = None self._CreationType = None self._AddTime = None self._InstanceType = None self._VersionNumber = None self._AutoScalingGroupName = None self._WarmupStatus = None self._DisasterRecoverGroupIds = None @property def InstanceId(self): """实例ID :rtype: str """ return self._InstanceId @InstanceId.setter def InstanceId(self, InstanceId): self._InstanceId = InstanceId @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def LaunchConfigurationId(self): """启动配置ID :rtype: str """ return self._LaunchConfigurationId @LaunchConfigurationId.setter def LaunchConfigurationId(self, LaunchConfigurationId): self._LaunchConfigurationId = LaunchConfigurationId @property def LaunchConfigurationName(self): """启动配置名称 :rtype: str """ return self._LaunchConfigurationName @LaunchConfigurationName.setter def LaunchConfigurationName(self, LaunchConfigurationName): self._LaunchConfigurationName = LaunchConfigurationName @property def LifeCycleState(self): """生命周期状态,取值如下:<br> <li>IN_SERVICE:运行中 <li>CREATING:创建中 <li>CREATION_FAILED:创建失败 <li>TERMINATING:中止中 <li>TERMINATION_FAILED:中止失败 <li>ATTACHING:绑定中 <li>ATTACH_FAILED:绑定失败 <li>DETACHING:解绑中 <li>DETACH_FAILED:解绑失败 <li>ATTACHING_LB:绑定LB中 <li>DETACHING_LB:解绑LB中 <li>MODIFYING_LB:修改LB中 <li>STARTING:开机中 <li>START_FAILED:开机失败 <li>STOPPING:关机中 <li>STOP_FAILED:关机失败 <li>STOPPED:已关机 <li>IN_LAUNCHING_HOOK:扩容生命周期挂钩中 <li>IN_TERMINATING_HOOK:缩容生命周期挂钩中 :rtype: str """ return self._LifeCycleState @LifeCycleState.setter def LifeCycleState(self, LifeCycleState): self._LifeCycleState = LifeCycleState @property def HealthStatus(self): """健康状态,取值包括HEALTHY和UNHEALTHY :rtype: str """ return self._HealthStatus @HealthStatus.setter def HealthStatus(self, HealthStatus): self._HealthStatus = HealthStatus @property def ProtectedFromScaleIn(self): """是否加入缩容保护 :rtype: bool """ return self._ProtectedFromScaleIn @ProtectedFromScaleIn.setter def ProtectedFromScaleIn(self, ProtectedFromScaleIn): self._ProtectedFromScaleIn = ProtectedFromScaleIn @property def Zone(self): """可用区 :rtype: str """ return self._Zone @Zone.setter def Zone(self, Zone): self._Zone = Zone @property def CreationType(self): """创建类型,取值包括AUTO_CREATION, MANUAL_ATTACHING。 :rtype: str """ return self._CreationType @CreationType.setter def CreationType(self, CreationType): self._CreationType = CreationType @property def AddTime(self): """实例加入时间 :rtype: str """ return self._AddTime @AddTime.setter def AddTime(self, AddTime): self._AddTime = AddTime @property def InstanceType(self): """实例类型 :rtype: str """ return self._InstanceType @InstanceType.setter def InstanceType(self, InstanceType): self._InstanceType = InstanceType @property def VersionNumber(self): """版本号 :rtype: int """ return self._VersionNumber @VersionNumber.setter def VersionNumber(self, VersionNumber): self._VersionNumber = VersionNumber @property def AutoScalingGroupName(self): """伸缩组名称 :rtype: str """ return self._AutoScalingGroupName @AutoScalingGroupName.setter def AutoScalingGroupName(self, AutoScalingGroupName): self._AutoScalingGroupName = AutoScalingGroupName @property def WarmupStatus(self): """预热状态,取值如下: <li>WAITING_ENTER_WARMUP:等待进入预热 <li>NO_NEED_WARMUP:无需预热 <li>IN_WARMUP:预热中 <li>AFTER_WARMUP:完成预热 :rtype: str """ return self._WarmupStatus @WarmupStatus.setter def WarmupStatus(self, WarmupStatus): self._WarmupStatus = WarmupStatus @property def DisasterRecoverGroupIds(self): """置放群组id,仅支持指定一个。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: list of str """ return self._DisasterRecoverGroupIds @DisasterRecoverGroupIds.setter def DisasterRecoverGroupIds(self, DisasterRecoverGroupIds): self._DisasterRecoverGroupIds = DisasterRecoverGroupIds def _deserialize(self, params): self._InstanceId = params.get("InstanceId") self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._LaunchConfigurationId = params.get("LaunchConfigurationId") self._LaunchConfigurationName = params.get("LaunchConfigurationName") self._LifeCycleState = params.get("LifeCycleState") self._HealthStatus = params.get("HealthStatus") self._ProtectedFromScaleIn = params.get("ProtectedFromScaleIn") self._Zone = params.get("Zone") self._CreationType = params.get("CreationType") self._AddTime = params.get("AddTime") self._InstanceType = params.get("InstanceType") self._VersionNumber = params.get("VersionNumber") self._AutoScalingGroupName = params.get("AutoScalingGroupName") self._WarmupStatus = params.get("WarmupStatus") self._DisasterRecoverGroupIds = params.get("DisasterRecoverGroupIds") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class InstanceChargePrepaid(AbstractModel): """描述了实例的计费模式 """ def __init__(self): r""" :param _Period: 购买实例的时长,单位:月。取值范围:1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 24, 36。 :type Period: int :param _RenewFlag: 自动续费标识。取值范围:<li>NOTIFY_AND_AUTO_RENEW:通知过期且自动续费</li><li>NOTIFY_AND_MANUAL_RENEW:通知过期不自动续费</li><li>DISABLE_NOTIFY_AND_MANUAL_RENEW:不通知过期不自动续费</li>默认取值:NOTIFY_AND_MANUAL_RENEW。若该参数指定为NOTIFY_AND_AUTO_RENEW,在账户余额充足的情况下,实例到期后将按月自动续费。 :type RenewFlag: str """ self._Period = None self._RenewFlag = None @property def Period(self): """购买实例的时长,单位:月。取值范围:1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 24, 36。 :rtype: int """ return self._Period @Period.setter def Period(self, Period): self._Period = Period @property def RenewFlag(self): """自动续费标识。取值范围:<li>NOTIFY_AND_AUTO_RENEW:通知过期且自动续费</li><li>NOTIFY_AND_MANUAL_RENEW:通知过期不自动续费</li><li>DISABLE_NOTIFY_AND_MANUAL_RENEW:不通知过期不自动续费</li>默认取值:NOTIFY_AND_MANUAL_RENEW。若该参数指定为NOTIFY_AND_AUTO_RENEW,在账户余额充足的情况下,实例到期后将按月自动续费。 :rtype: str """ return self._RenewFlag @RenewFlag.setter def RenewFlag(self, RenewFlag): self._RenewFlag = RenewFlag def _deserialize(self, params): self._Period = params.get("Period") self._RenewFlag = params.get("RenewFlag") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class InstanceMarketOptionsRequest(AbstractModel): """CVM竞价请求相关选项 """ def __init__(self): r""" :param _SpotOptions: 竞价相关选项 :type SpotOptions: :class:`tencentcloud.autoscaling.v20180419.models.SpotMarketOptions` :param _MarketType: 市场选项类型,当前只支持取值:spot 注意:此字段可能返回 null,表示取不到有效值。 :type MarketType: str """ self._SpotOptions = None self._MarketType = None @property def SpotOptions(self): """竞价相关选项 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.SpotMarketOptions` """ return self._SpotOptions @SpotOptions.setter def SpotOptions(self, SpotOptions): self._SpotOptions = SpotOptions @property def MarketType(self): """市场选项类型,当前只支持取值:spot 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._MarketType @MarketType.setter def MarketType(self, MarketType): self._MarketType = MarketType def _deserialize(self, params): if params.get("SpotOptions") is not None: self._SpotOptions = SpotMarketOptions() self._SpotOptions._deserialize(params.get("SpotOptions")) self._MarketType = params.get("MarketType") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class InstanceNameIndexSettings(AbstractModel): """实例名称序号相关设置。 """ def __init__(self): r""" :param _Enabled: 是否开启实例创建序号,默认不开启。取值范围:<li>TRUE:表示开启实例创建序号<li>FALSE:表示不开启实例创建序号 注意:此字段可能返回 null,表示取不到有效值。 :type Enabled: bool :param _BeginIndex: 初始序号,取值范围为 [0, 99999999]。当序号递增后超出取值范围时,扩容活动会失败。<li>首次开启实例名称序号:默认值为 0。<li>非首次开启实例名称序号:若不指定该参数,沿用历史序号。下调初始序号可能会造成伸缩组内实例名称序号重复。 注意:此字段可能返回 null,表示取不到有效值。 :type BeginIndex: int """ self._Enabled = None self._BeginIndex = None @property def Enabled(self): """是否开启实例创建序号,默认不开启。取值范围:<li>TRUE:表示开启实例创建序号<li>FALSE:表示不开启实例创建序号 注意:此字段可能返回 null,表示取不到有效值。 :rtype: bool """ return self._Enabled @Enabled.setter def Enabled(self, Enabled): self._Enabled = Enabled @property def BeginIndex(self): """初始序号,取值范围为 [0, 99999999]。当序号递增后超出取值范围时,扩容活动会失败。<li>首次开启实例名称序号:默认值为 0。<li>非首次开启实例名称序号:若不指定该参数,沿用历史序号。下调初始序号可能会造成伸缩组内实例名称序号重复。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: int """ return self._BeginIndex @BeginIndex.setter def BeginIndex(self, BeginIndex): self._BeginIndex = BeginIndex def _deserialize(self, params): self._Enabled = params.get("Enabled") self._BeginIndex = params.get("BeginIndex") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class InstanceNameSettings(AbstractModel): """云服务器实例名称(InstanceName)的相关设置 """ def __init__(self): r""" :param _InstanceName: 云服务器的实例名。字符长度为[2, 108]。 :type InstanceName: str :param _InstanceNameStyle: 云服务器实例名的风格,取值范围包括 ORIGINAL 和 UNIQUE,默认为 ORIGINAL。 ORIGINAL,AS 直接将入参中所填的 InstanceName 传递给 CVM,CVM 可能会对 InstanceName 追加序列号,伸缩组中实例的 InstanceName 会出现冲突的情况。 UNIQUE,入参所填的 InstanceName 相当于实例名前缀,AS 和 CVM 会对其进行拓展,伸缩组中实例的 InstanceName 可以保证唯一。 :type InstanceNameStyle: str :param _InstanceNameSuffix: 云服务器实例名后缀。字符长度为[1,105],且与 InstanceName 的长度和不能超过107。 假设后缀名称为 suffix,原实例名为 test.0,最终实例名为 test.0.suffix。 注意:此字段可能返回 null,表示取不到有效值。 :type InstanceNameSuffix: str """ self._InstanceName = None self._InstanceNameStyle = None self._InstanceNameSuffix = None @property def InstanceName(self): """云服务器的实例名。字符长度为[2, 108]。 :rtype: str """ return self._InstanceName @InstanceName.setter def InstanceName(self, InstanceName): self._InstanceName = InstanceName @property def InstanceNameStyle(self): """云服务器实例名的风格,取值范围包括 ORIGINAL 和 UNIQUE,默认为 ORIGINAL。 ORIGINAL,AS 直接将入参中所填的 InstanceName 传递给 CVM,CVM 可能会对 InstanceName 追加序列号,伸缩组中实例的 InstanceName 会出现冲突的情况。 UNIQUE,入参所填的 InstanceName 相当于实例名前缀,AS 和 CVM 会对其进行拓展,伸缩组中实例的 InstanceName 可以保证唯一。 :rtype: str """ return self._InstanceNameStyle @InstanceNameStyle.setter def InstanceNameStyle(self, InstanceNameStyle): self._InstanceNameStyle = InstanceNameStyle @property def InstanceNameSuffix(self): """云服务器实例名后缀。字符长度为[1,105],且与 InstanceName 的长度和不能超过107。 假设后缀名称为 suffix,原实例名为 test.0,最终实例名为 test.0.suffix。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._InstanceNameSuffix @InstanceNameSuffix.setter def InstanceNameSuffix(self, InstanceNameSuffix): self._InstanceNameSuffix = InstanceNameSuffix def _deserialize(self, params): self._InstanceName = params.get("InstanceName") self._InstanceNameStyle = params.get("InstanceNameStyle") self._InstanceNameSuffix = params.get("InstanceNameSuffix") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class InstanceTag(AbstractModel): """实例标签。通过指定该参数,可以为扩容的实例绑定标签。 """ def __init__(self): r""" :param _Key: 标签键 :type Key: str :param _Value: 标签值 :type Value: str """ self._Key = None self._Value = None @property def Key(self): """标签键 :rtype: str """ return self._Key @Key.setter def Key(self, Key): self._Key = Key @property def Value(self): """标签值 :rtype: str """ return self._Value @Value.setter def Value(self, Value): self._Value = Value def _deserialize(self, params): self._Key = params.get("Key") self._Value = params.get("Value") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class InternetAccessible(AbstractModel): """描述了启动配置创建实例的公网可访问性,声明了实例的公网使用计费模式,最大带宽等 """ def __init__(self): r""" :param _InternetChargeType: 网络计费类型。取值范围:<li>BANDWIDTH_PREPAID:预付费按带宽结算</li><li>TRAFFIC_POSTPAID_BY_HOUR:流量按小时后付费</li><li>BANDWIDTH_POSTPAID_BY_HOUR:带宽按小时后付费</li><li>BANDWIDTH_PACKAGE:带宽包用户</li>默认取值:TRAFFIC_POSTPAID_BY_HOUR。 注意:此字段可能返回 null,表示取不到有效值。 :type InternetChargeType: str :param _InternetMaxBandwidthOut: 公网出带宽上限,单位:Mbps。默认值:0Mbps。不同机型带宽上限范围不一致,具体限制详见[购买网络带宽](https://cloud.tencent.com/document/product/213/509)。 注意:此字段可能返回 null,表示取不到有效值。 :type InternetMaxBandwidthOut: int :param _PublicIpAssigned: 是否分配公网IP。取值范围:<li>TRUE:表示分配公网IP</li><li>FALSE:表示不分配公网IP</li>当公网带宽大于0Mbps时,可自由选择开通与否,默认开通公网IP;当公网带宽为0,则不允许分配公网IP。 注意:此字段可能返回 null,表示取不到有效值。 :type PublicIpAssigned: bool :param _BandwidthPackageId: 带宽包ID。可通过[DescribeBandwidthPackages](https://cloud.tencent.com/document/api/215/19209)接口返回值中的`BandwidthPackageId`获取。 注意:此字段可能返回 null,表示取不到有效值。 :type BandwidthPackageId: str """ self._InternetChargeType = None self._InternetMaxBandwidthOut = None self._PublicIpAssigned = None self._BandwidthPackageId = None @property def InternetChargeType(self): """网络计费类型。取值范围:<li>BANDWIDTH_PREPAID:预付费按带宽结算</li><li>TRAFFIC_POSTPAID_BY_HOUR:流量按小时后付费</li><li>BANDWIDTH_POSTPAID_BY_HOUR:带宽按小时后付费</li><li>BANDWIDTH_PACKAGE:带宽包用户</li>默认取值:TRAFFIC_POSTPAID_BY_HOUR。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._InternetChargeType @InternetChargeType.setter def InternetChargeType(self, InternetChargeType): self._InternetChargeType = InternetChargeType @property def InternetMaxBandwidthOut(self): """公网出带宽上限,单位:Mbps。默认值:0Mbps。不同机型带宽上限范围不一致,具体限制详见[购买网络带宽](https://cloud.tencent.com/document/product/213/509)。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: int """ return self._InternetMaxBandwidthOut @InternetMaxBandwidthOut.setter def InternetMaxBandwidthOut(self, InternetMaxBandwidthOut): self._InternetMaxBandwidthOut = InternetMaxBandwidthOut @property def PublicIpAssigned(self): """是否分配公网IP。取值范围:<li>TRUE:表示分配公网IP</li><li>FALSE:表示不分配公网IP</li>当公网带宽大于0Mbps时,可自由选择开通与否,默认开通公网IP;当公网带宽为0,则不允许分配公网IP。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: bool """ return self._PublicIpAssigned @PublicIpAssigned.setter def PublicIpAssigned(self, PublicIpAssigned): self._PublicIpAssigned = PublicIpAssigned @property def BandwidthPackageId(self): """带宽包ID。可通过[DescribeBandwidthPackages](https://cloud.tencent.com/document/api/215/19209)接口返回值中的`BandwidthPackageId`获取。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._BandwidthPackageId @BandwidthPackageId.setter def BandwidthPackageId(self, BandwidthPackageId): self._BandwidthPackageId = BandwidthPackageId def _deserialize(self, params): self._InternetChargeType = params.get("InternetChargeType") self._InternetMaxBandwidthOut = params.get("InternetMaxBandwidthOut") self._PublicIpAssigned = params.get("PublicIpAssigned") self._BandwidthPackageId = params.get("BandwidthPackageId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class InvocationResult(AbstractModel): """执行命令结果。 """ def __init__(self): r""" :param _InstanceId: 实例ID。 注意:此字段可能返回 null,表示取不到有效值。 :type InstanceId: str :param _InvocationId: 执行活动ID。 注意:此字段可能返回 null,表示取不到有效值。 :type InvocationId: str :param _InvocationTaskId: 执行任务ID。 注意:此字段可能返回 null,表示取不到有效值。 :type InvocationTaskId: str :param _CommandId: 命令ID。 注意:此字段可能返回 null,表示取不到有效值。 :type CommandId: str :param _TaskStatus: 执行任务状态。 注意:此字段可能返回 null,表示取不到有效值。 :type TaskStatus: str :param _ErrorMessage: 执行异常信息。 注意:此字段可能返回 null,表示取不到有效值。 :type ErrorMessage: str """ self._InstanceId = None self._InvocationId = None self._InvocationTaskId = None self._CommandId = None self._TaskStatus = None self._ErrorMessage = None @property def InstanceId(self): """实例ID。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._InstanceId @InstanceId.setter def InstanceId(self, InstanceId): self._InstanceId = InstanceId @property def InvocationId(self): """执行活动ID。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._InvocationId @InvocationId.setter def InvocationId(self, InvocationId): self._InvocationId = InvocationId @property def InvocationTaskId(self): """执行任务ID。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._InvocationTaskId @InvocationTaskId.setter def InvocationTaskId(self, InvocationTaskId): self._InvocationTaskId = InvocationTaskId @property def CommandId(self): """命令ID。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._CommandId @CommandId.setter def CommandId(self, CommandId): self._CommandId = CommandId @property def TaskStatus(self): """执行任务状态。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._TaskStatus @TaskStatus.setter def TaskStatus(self, TaskStatus): self._TaskStatus = TaskStatus @property def ErrorMessage(self): """执行异常信息。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._ErrorMessage @ErrorMessage.setter def ErrorMessage(self, ErrorMessage): self._ErrorMessage = ErrorMessage def _deserialize(self, params): self._InstanceId = params.get("InstanceId") self._InvocationId = params.get("InvocationId") self._InvocationTaskId = params.get("InvocationTaskId") self._CommandId = params.get("CommandId") self._TaskStatus = params.get("TaskStatus") self._ErrorMessage = params.get("ErrorMessage") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class LaunchConfiguration(AbstractModel): """符合条件的启动配置信息的集合。 """ def __init__(self): r""" :param _ProjectId: 实例所属项目ID。 :type ProjectId: int :param _LaunchConfigurationId: 启动配置ID。 :type LaunchConfigurationId: str :param _LaunchConfigurationName: 启动配置名称。 :type LaunchConfigurationName: str :param _InstanceType: 实例机型。 :type InstanceType: str :param _SystemDisk: 实例系统盘配置信息。 :type SystemDisk: :class:`tencentcloud.autoscaling.v20180419.models.SystemDisk` :param _DataDisks: 实例数据盘配置信息。 :type DataDisks: list of DataDisk :param _LoginSettings: 实例登录设置。 :type LoginSettings: :class:`tencentcloud.autoscaling.v20180419.models.LimitedLoginSettings` :param _InternetAccessible: 公网带宽相关信息设置。 :type InternetAccessible: :class:`tencentcloud.autoscaling.v20180419.models.InternetAccessible` :param _SecurityGroupIds: 实例所属安全组。 :type SecurityGroupIds: list of str :param _AutoScalingGroupAbstractSet: 启动配置关联的伸缩组。 :type AutoScalingGroupAbstractSet: list of AutoScalingGroupAbstract :param _UserData: 自定义数据。 注意:此字段可能返回 null,表示取不到有效值。 :type UserData: str :param _CreatedTime: 启动配置创建时间。 :type CreatedTime: str :param _EnhancedService: 实例的增强服务启用情况与其设置。 :type EnhancedService: :class:`tencentcloud.autoscaling.v20180419.models.EnhancedService` :param _ImageId: 镜像ID。 :type ImageId: str :param _LaunchConfigurationStatus: 启动配置当前状态。取值范围:<li>NORMAL:正常</li><li>IMAGE_ABNORMAL:启动配置镜像异常</li><li>CBS_SNAP_ABNORMAL:启动配置数据盘快照异常</li><li>SECURITY_GROUP_ABNORMAL:启动配置安全组异常</li> :type LaunchConfigurationStatus: str :param _InstanceChargeType: 实例计费类型,CVM默认值按照POSTPAID_BY_HOUR处理。<li>POSTPAID_BY_HOUR:按小时后付费</li><li>SPOTPAID:竞价付费</li> :type InstanceChargeType: str :param _InstanceMarketOptions: 实例的市场相关选项,如竞价实例相关参数,若指定实例的付费模式为竞价付费则该参数必传。 注意:此字段可能返回 null,表示取不到有效值。 :type InstanceMarketOptions: :class:`tencentcloud.autoscaling.v20180419.models.InstanceMarketOptionsRequest` :param _InstanceTypes: 实例机型列表。 :type InstanceTypes: list of str :param _InstanceTags: 实例标签列表。扩容出来的实例会自动带上标签,最多支持10个标签。 :type InstanceTags: list of InstanceTag :param _Tags: 标签列表。 注意:此字段可能返回 null,表示取不到有效值。 :type Tags: list of Tag :param _VersionNumber: 版本号。 :type VersionNumber: int :param _UpdatedTime: 更新时间。 :type UpdatedTime: str :param _CamRoleName: CAM角色名称。可通过DescribeRoleList接口返回值中的roleName获取。 :type CamRoleName: str :param _LastOperationInstanceTypesCheckPolicy: 上次操作时,InstanceTypesCheckPolicy 取值。 :type LastOperationInstanceTypesCheckPolicy: str :param _HostNameSettings: 云服务器主机名(HostName)的相关设置。 :type HostNameSettings: :class:`tencentcloud.autoscaling.v20180419.models.HostNameSettings` :param _InstanceNameSettings: 云服务器实例名(InstanceName)的相关设置。 :type InstanceNameSettings: :class:`tencentcloud.autoscaling.v20180419.models.InstanceNameSettings` :param _InstanceChargePrepaid: 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月实例的购买时长、是否设置自动续费等属性。若指定实例的付费模式为预付费则该参数必传。 :type InstanceChargePrepaid: :class:`tencentcloud.autoscaling.v20180419.models.InstanceChargePrepaid` :param _DiskTypePolicy: 云盘类型选择策略。取值范围:<li>ORIGINAL:使用设置的云盘类型</li><li>AUTOMATIC:自动选择当前可用区下可用的云盘类型</li> :type DiskTypePolicy: str :param _HpcClusterId: 高性能计算集群ID。<br> 注意:此字段默认为空。 :type HpcClusterId: str :param _IPv6InternetAccessible: IPv6公网带宽相关信息设置。 :type IPv6InternetAccessible: :class:`tencentcloud.autoscaling.v20180419.models.IPv6InternetAccessible` :param _DisasterRecoverGroupIds: 置放群组id,仅支持指定一个。 :type DisasterRecoverGroupIds: list of str :param _ImageFamily: 镜像族名称。 注意:此字段可能返回 null,表示取不到有效值。 :type ImageFamily: str :param _DedicatedClusterId: 本地专用集群 ID。 :type DedicatedClusterId: str """ self._ProjectId = None self._LaunchConfigurationId = None self._LaunchConfigurationName = None self._InstanceType = None self._SystemDisk = None self._DataDisks = None self._LoginSettings = None self._InternetAccessible = None self._SecurityGroupIds = None self._AutoScalingGroupAbstractSet = None self._UserData = None self._CreatedTime = None self._EnhancedService = None self._ImageId = None self._LaunchConfigurationStatus = None self._InstanceChargeType = None self._InstanceMarketOptions = None self._InstanceTypes = None self._InstanceTags = None self._Tags = None self._VersionNumber = None self._UpdatedTime = None self._CamRoleName = None self._LastOperationInstanceTypesCheckPolicy = None self._HostNameSettings = None self._InstanceNameSettings = None self._InstanceChargePrepaid = None self._DiskTypePolicy = None self._HpcClusterId = None self._IPv6InternetAccessible = None self._DisasterRecoverGroupIds = None self._ImageFamily = None self._DedicatedClusterId = None @property def ProjectId(self): """实例所属项目ID。 :rtype: int """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def LaunchConfigurationId(self): """启动配置ID。 :rtype: str """ return self._LaunchConfigurationId @LaunchConfigurationId.setter def LaunchConfigurationId(self, LaunchConfigurationId): self._LaunchConfigurationId = LaunchConfigurationId @property def LaunchConfigurationName(self): """启动配置名称。 :rtype: str """ return self._LaunchConfigurationName @LaunchConfigurationName.setter def LaunchConfigurationName(self, LaunchConfigurationName): self._LaunchConfigurationName = LaunchConfigurationName @property def InstanceType(self): """实例机型。 :rtype: str """ return self._InstanceType @InstanceType.setter def InstanceType(self, InstanceType): self._InstanceType = InstanceType @property def SystemDisk(self): """实例系统盘配置信息。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.SystemDisk` """ return self._SystemDisk @SystemDisk.setter def SystemDisk(self, SystemDisk): self._SystemDisk = SystemDisk @property def DataDisks(self): """实例数据盘配置信息。 :rtype: list of DataDisk """ return self._DataDisks @DataDisks.setter def DataDisks(self, DataDisks): self._DataDisks = DataDisks @property def LoginSettings(self): """实例登录设置。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.LimitedLoginSettings` """ return self._LoginSettings @LoginSettings.setter def LoginSettings(self, LoginSettings): self._LoginSettings = LoginSettings @property def InternetAccessible(self): """公网带宽相关信息设置。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.InternetAccessible` """ return self._InternetAccessible @InternetAccessible.setter def InternetAccessible(self, InternetAccessible): self._InternetAccessible = InternetAccessible @property def SecurityGroupIds(self): """实例所属安全组。 :rtype: list of str """ return self._SecurityGroupIds @SecurityGroupIds.setter def SecurityGroupIds(self, SecurityGroupIds): self._SecurityGroupIds = SecurityGroupIds @property def AutoScalingGroupAbstractSet(self): """启动配置关联的伸缩组。 :rtype: list of AutoScalingGroupAbstract """ return self._AutoScalingGroupAbstractSet @AutoScalingGroupAbstractSet.setter def AutoScalingGroupAbstractSet(self, AutoScalingGroupAbstractSet): self._AutoScalingGroupAbstractSet = AutoScalingGroupAbstractSet @property def UserData(self): """自定义数据。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._UserData @UserData.setter def UserData(self, UserData): self._UserData = UserData @property def CreatedTime(self): """启动配置创建时间。 :rtype: str """ return self._CreatedTime @CreatedTime.setter def CreatedTime(self, CreatedTime): self._CreatedTime = CreatedTime @property def EnhancedService(self): """实例的增强服务启用情况与其设置。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.EnhancedService` """ return self._EnhancedService @EnhancedService.setter def EnhancedService(self, EnhancedService): self._EnhancedService = EnhancedService @property def ImageId(self): """镜像ID。 :rtype: str """ return self._ImageId @ImageId.setter def ImageId(self, ImageId): self._ImageId = ImageId @property def LaunchConfigurationStatus(self): """启动配置当前状态。取值范围:<li>NORMAL:正常</li><li>IMAGE_ABNORMAL:启动配置镜像异常</li><li>CBS_SNAP_ABNORMAL:启动配置数据盘快照异常</li><li>SECURITY_GROUP_ABNORMAL:启动配置安全组异常</li> :rtype: str """ return self._LaunchConfigurationStatus @LaunchConfigurationStatus.setter def LaunchConfigurationStatus(self, LaunchConfigurationStatus): self._LaunchConfigurationStatus = LaunchConfigurationStatus @property def InstanceChargeType(self): """实例计费类型,CVM默认值按照POSTPAID_BY_HOUR处理。<li>POSTPAID_BY_HOUR:按小时后付费</li><li>SPOTPAID:竞价付费</li> :rtype: str """ return self._InstanceChargeType @InstanceChargeType.setter def InstanceChargeType(self, InstanceChargeType): self._InstanceChargeType = InstanceChargeType @property def InstanceMarketOptions(self): """实例的市场相关选项,如竞价实例相关参数,若指定实例的付费模式为竞价付费则该参数必传。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.InstanceMarketOptionsRequest` """ return self._InstanceMarketOptions @InstanceMarketOptions.setter def InstanceMarketOptions(self, InstanceMarketOptions): self._InstanceMarketOptions = InstanceMarketOptions @property def InstanceTypes(self): """实例机型列表。 :rtype: list of str """ return self._InstanceTypes @InstanceTypes.setter def InstanceTypes(self, InstanceTypes): self._InstanceTypes = InstanceTypes @property def InstanceTags(self): """实例标签列表。扩容出来的实例会自动带上标签,最多支持10个标签。 :rtype: list of InstanceTag """ return self._InstanceTags @InstanceTags.setter def InstanceTags(self, InstanceTags): self._InstanceTags = InstanceTags @property def Tags(self): """标签列表。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: list of Tag """ return self._Tags @Tags.setter def Tags(self, Tags): self._Tags = Tags @property def VersionNumber(self): """版本号。 :rtype: int """ return self._VersionNumber @VersionNumber.setter def VersionNumber(self, VersionNumber): self._VersionNumber = VersionNumber @property def UpdatedTime(self): """更新时间。 :rtype: str """ return self._UpdatedTime @UpdatedTime.setter def UpdatedTime(self, UpdatedTime): self._UpdatedTime = UpdatedTime @property def CamRoleName(self): """CAM角色名称。可通过DescribeRoleList接口返回值中的roleName获取。 :rtype: str """ return self._CamRoleName @CamRoleName.setter def CamRoleName(self, CamRoleName): self._CamRoleName = CamRoleName @property def LastOperationInstanceTypesCheckPolicy(self): """上次操作时,InstanceTypesCheckPolicy 取值。 :rtype: str """ return self._LastOperationInstanceTypesCheckPolicy @LastOperationInstanceTypesCheckPolicy.setter def LastOperationInstanceTypesCheckPolicy(self, LastOperationInstanceTypesCheckPolicy): self._LastOperationInstanceTypesCheckPolicy = LastOperationInstanceTypesCheckPolicy @property def HostNameSettings(self): """云服务器主机名(HostName)的相关设置。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.HostNameSettings` """ return self._HostNameSettings @HostNameSettings.setter def HostNameSettings(self, HostNameSettings): self._HostNameSettings = HostNameSettings @property def InstanceNameSettings(self): """云服务器实例名(InstanceName)的相关设置。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.InstanceNameSettings` """ return self._InstanceNameSettings @InstanceNameSettings.setter def InstanceNameSettings(self, InstanceNameSettings): self._InstanceNameSettings = InstanceNameSettings @property def InstanceChargePrepaid(self): """预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月实例的购买时长、是否设置自动续费等属性。若指定实例的付费模式为预付费则该参数必传。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.InstanceChargePrepaid` """ return self._InstanceChargePrepaid @InstanceChargePrepaid.setter def InstanceChargePrepaid(self, InstanceChargePrepaid): self._InstanceChargePrepaid = InstanceChargePrepaid @property def DiskTypePolicy(self): """云盘类型选择策略。取值范围:<li>ORIGINAL:使用设置的云盘类型</li><li>AUTOMATIC:自动选择当前可用区下可用的云盘类型</li> :rtype: str """ return self._DiskTypePolicy @DiskTypePolicy.setter def DiskTypePolicy(self, DiskTypePolicy): self._DiskTypePolicy = DiskTypePolicy @property def HpcClusterId(self): """高性能计算集群ID。<br> 注意:此字段默认为空。 :rtype: str """ return self._HpcClusterId @HpcClusterId.setter def HpcClusterId(self, HpcClusterId): self._HpcClusterId = HpcClusterId @property def IPv6InternetAccessible(self): """IPv6公网带宽相关信息设置。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.IPv6InternetAccessible` """ return self._IPv6InternetAccessible @IPv6InternetAccessible.setter def IPv6InternetAccessible(self, IPv6InternetAccessible): self._IPv6InternetAccessible = IPv6InternetAccessible @property def DisasterRecoverGroupIds(self): """置放群组id,仅支持指定一个。 :rtype: list of str """ return self._DisasterRecoverGroupIds @DisasterRecoverGroupIds.setter def DisasterRecoverGroupIds(self, DisasterRecoverGroupIds): self._DisasterRecoverGroupIds = DisasterRecoverGroupIds @property def ImageFamily(self): """镜像族名称。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._ImageFamily @ImageFamily.setter def ImageFamily(self, ImageFamily): self._ImageFamily = ImageFamily @property def DedicatedClusterId(self): """本地专用集群 ID。 :rtype: str """ return self._DedicatedClusterId @DedicatedClusterId.setter def DedicatedClusterId(self, DedicatedClusterId): self._DedicatedClusterId = DedicatedClusterId def _deserialize(self, params): self._ProjectId = params.get("ProjectId") self._LaunchConfigurationId = params.get("LaunchConfigurationId") self._LaunchConfigurationName = params.get("LaunchConfigurationName") self._InstanceType = params.get("InstanceType") if params.get("SystemDisk") is not None: self._SystemDisk = SystemDisk() self._SystemDisk._deserialize(params.get("SystemDisk")) if params.get("DataDisks") is not None: self._DataDisks = [] for item in params.get("DataDisks"): obj = DataDisk() obj._deserialize(item) self._DataDisks.append(obj) if params.get("LoginSettings") is not None: self._LoginSettings = LimitedLoginSettings() self._LoginSettings._deserialize(params.get("LoginSettings")) if params.get("InternetAccessible") is not None: self._InternetAccessible = InternetAccessible() self._InternetAccessible._deserialize(params.get("InternetAccessible")) self._SecurityGroupIds = params.get("SecurityGroupIds") if params.get("AutoScalingGroupAbstractSet") is not None: self._AutoScalingGroupAbstractSet = [] for item in params.get("AutoScalingGroupAbstractSet"): obj = AutoScalingGroupAbstract() obj._deserialize(item) self._AutoScalingGroupAbstractSet.append(obj) self._UserData = params.get("UserData") self._CreatedTime = params.get("CreatedTime") if params.get("EnhancedService") is not None: self._EnhancedService = EnhancedService() self._EnhancedService._deserialize(params.get("EnhancedService")) self._ImageId = params.get("ImageId") self._LaunchConfigurationStatus = params.get("LaunchConfigurationStatus") self._InstanceChargeType = params.get("InstanceChargeType") if params.get("InstanceMarketOptions") is not None: self._InstanceMarketOptions = InstanceMarketOptionsRequest() self._InstanceMarketOptions._deserialize(params.get("InstanceMarketOptions")) self._InstanceTypes = params.get("InstanceTypes") if params.get("InstanceTags") is not None: self._InstanceTags = [] for item in params.get("InstanceTags"): obj = InstanceTag() obj._deserialize(item) self._InstanceTags.append(obj) if params.get("Tags") is not None: self._Tags = [] for item in params.get("Tags"): obj = Tag() obj._deserialize(item) self._Tags.append(obj) self._VersionNumber = params.get("VersionNumber") self._UpdatedTime = params.get("UpdatedTime") self._CamRoleName = params.get("CamRoleName") self._LastOperationInstanceTypesCheckPolicy = params.get("LastOperationInstanceTypesCheckPolicy") if params.get("HostNameSettings") is not None: self._HostNameSettings = HostNameSettings() self._HostNameSettings._deserialize(params.get("HostNameSettings")) if params.get("InstanceNameSettings") is not None: self._InstanceNameSettings = InstanceNameSettings() self._InstanceNameSettings._deserialize(params.get("InstanceNameSettings")) if params.get("InstanceChargePrepaid") is not None: self._InstanceChargePrepaid = InstanceChargePrepaid() self._InstanceChargePrepaid._deserialize(params.get("InstanceChargePrepaid")) self._DiskTypePolicy = params.get("DiskTypePolicy") self._HpcClusterId = params.get("HpcClusterId") if params.get("IPv6InternetAccessible") is not None: self._IPv6InternetAccessible = IPv6InternetAccessible() self._IPv6InternetAccessible._deserialize(params.get("IPv6InternetAccessible")) self._DisasterRecoverGroupIds = params.get("DisasterRecoverGroupIds") self._ImageFamily = params.get("ImageFamily") self._DedicatedClusterId = params.get("DedicatedClusterId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class LifecycleActionResultInfo(AbstractModel): """生命周期挂钩动作的执行结果信息。 """ def __init__(self): r""" :param _LifecycleHookId: 生命周期挂钩标识。 :type LifecycleHookId: str :param _InstanceId: 实例标识。 :type InstanceId: str :param _InvocationId: 执行活动ID。可通过TAT的[查询执行活动](https://cloud.tencent.com/document/api/1340/52679)API查询具体的执行结果。 :type InvocationId: str :param _InvokeCommandResult: 命令调用的结果,表示执行TAT命令是否成功。<br> <li>SUCCESSFUL 命令调用成功,不代表命令执行成功,执行的具体情况可根据InvocationId进行查询</li> <li>FAILED 命令调用失败</li> <li>NONE</li> :type InvokeCommandResult: str :param _NotificationResult: 通知的结果,表示通知CMQ/TDMQ是否成功。<br> <li>SUCCESSFUL 通知成功</li> <li>FAILED 通知失败</li> <li>NONE</li> :type NotificationResult: str :param _LifecycleActionResult: 生命周期挂钩动作的执行结果,取值包括 CONTINUE、ABANDON。 :type LifecycleActionResult: str :param _ResultReason: 结果的原因。<br> <li>HEARTBEAT_TIMEOUT 由于心跳超时,结果根据DefaultResult设置。</li> <li>NOTIFICATION_FAILURE 由于发送通知失败,结果根据DefaultResult设置。</li> <li>CALL_INTERFACE 调用了接口CompleteLifecycleAction设置结果。</li> <li>ANOTHER_ACTION_ABANDON 另一个生命周期操作的结果已设置为“ABANDON”。</li> <li>COMMAND_CALL_FAILURE 由于命令调用失败,结果根据DefaultResult设置。</li> <li>COMMAND_EXEC_FINISH 命令执行完成。</li> <li>COMMAND_EXEC_FAILURE 由于命令执行失败,结果根据DefaultResult设置。</li> <li>COMMAND_EXEC_RESULT_CHECK_FAILURE 由于命令结果检查失败,结果根据DefaultResult设置。</li> :type ResultReason: str """ self._LifecycleHookId = None self._InstanceId = None self._InvocationId = None self._InvokeCommandResult = None self._NotificationResult = None self._LifecycleActionResult = None self._ResultReason = None @property def LifecycleHookId(self): """生命周期挂钩标识。 :rtype: str """ return self._LifecycleHookId @LifecycleHookId.setter def LifecycleHookId(self, LifecycleHookId): self._LifecycleHookId = LifecycleHookId @property def InstanceId(self): """实例标识。 :rtype: str """ return self._InstanceId @InstanceId.setter def InstanceId(self, InstanceId): self._InstanceId = InstanceId @property def InvocationId(self): """执行活动ID。可通过TAT的[查询执行活动](https://cloud.tencent.com/document/api/1340/52679)API查询具体的执行结果。 :rtype: str """ return self._InvocationId @InvocationId.setter def InvocationId(self, InvocationId): self._InvocationId = InvocationId @property def InvokeCommandResult(self): """命令调用的结果,表示执行TAT命令是否成功。<br> <li>SUCCESSFUL 命令调用成功,不代表命令执行成功,执行的具体情况可根据InvocationId进行查询</li> <li>FAILED 命令调用失败</li> <li>NONE</li> :rtype: str """ return self._InvokeCommandResult @InvokeCommandResult.setter def InvokeCommandResult(self, InvokeCommandResult): self._InvokeCommandResult = InvokeCommandResult @property def NotificationResult(self): """通知的结果,表示通知CMQ/TDMQ是否成功。<br> <li>SUCCESSFUL 通知成功</li> <li>FAILED 通知失败</li> <li>NONE</li> :rtype: str """ return self._NotificationResult @NotificationResult.setter def NotificationResult(self, NotificationResult): self._NotificationResult = NotificationResult @property def LifecycleActionResult(self): """生命周期挂钩动作的执行结果,取值包括 CONTINUE、ABANDON。 :rtype: str """ return self._LifecycleActionResult @LifecycleActionResult.setter def LifecycleActionResult(self, LifecycleActionResult): self._LifecycleActionResult = LifecycleActionResult @property def ResultReason(self): """结果的原因。<br> <li>HEARTBEAT_TIMEOUT 由于心跳超时,结果根据DefaultResult设置。</li> <li>NOTIFICATION_FAILURE 由于发送通知失败,结果根据DefaultResult设置。</li> <li>CALL_INTERFACE 调用了接口CompleteLifecycleAction设置结果。</li> <li>ANOTHER_ACTION_ABANDON 另一个生命周期操作的结果已设置为“ABANDON”。</li> <li>COMMAND_CALL_FAILURE 由于命令调用失败,结果根据DefaultResult设置。</li> <li>COMMAND_EXEC_FINISH 命令执行完成。</li> <li>COMMAND_EXEC_FAILURE 由于命令执行失败,结果根据DefaultResult设置。</li> <li>COMMAND_EXEC_RESULT_CHECK_FAILURE 由于命令结果检查失败,结果根据DefaultResult设置。</li> :rtype: str """ return self._ResultReason @ResultReason.setter def ResultReason(self, ResultReason): self._ResultReason = ResultReason def _deserialize(self, params): self._LifecycleHookId = params.get("LifecycleHookId") self._InstanceId = params.get("InstanceId") self._InvocationId = params.get("InvocationId") self._InvokeCommandResult = params.get("InvokeCommandResult") self._NotificationResult = params.get("NotificationResult") self._LifecycleActionResult = params.get("LifecycleActionResult") self._ResultReason = params.get("ResultReason") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class LifecycleCommand(AbstractModel): """远程命令执行对象。 """ def __init__(self): r""" :param _CommandId: 远程命令ID。若选择执行命令,则此项必填。 注意:此字段可能返回 null,表示取不到有效值。 :type CommandId: str :param _Parameters: 自定义参数。字段类型为 json encoded string。如:{"varA": "222"}。 key为自定义参数名称,value为该参数的默认取值。kv均为字符串型。 如果未提供该参数取值,将使用 Command 的 DefaultParameters 进行替换。 自定义参数最多20个。自定义参数名称需符合以下规范:字符数目上限64,可选范围【a-zA-Z0-9-_】。 注意:此字段可能返回 null,表示取不到有效值。 :type Parameters: str """ self._CommandId = None self._Parameters = None @property def CommandId(self): """远程命令ID。若选择执行命令,则此项必填。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._CommandId @CommandId.setter def CommandId(self, CommandId): self._CommandId = CommandId @property def Parameters(self): """自定义参数。字段类型为 json encoded string。如:{"varA": "222"}。 key为自定义参数名称,value为该参数的默认取值。kv均为字符串型。 如果未提供该参数取值,将使用 Command 的 DefaultParameters 进行替换。 自定义参数最多20个。自定义参数名称需符合以下规范:字符数目上限64,可选范围【a-zA-Z0-9-_】。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._Parameters @Parameters.setter def Parameters(self, Parameters): self._Parameters = Parameters def _deserialize(self, params): self._CommandId = params.get("CommandId") self._Parameters = params.get("Parameters") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class LifecycleHook(AbstractModel): """生命周期挂钩 """ def __init__(self): r""" :param _LifecycleHookId: 生命周期挂钩ID :type LifecycleHookId: str :param _LifecycleHookName: 生命周期挂钩名称 :type LifecycleHookName: str :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str :param _DefaultResult: 生命周期挂钩默认结果 :type DefaultResult: str :param _HeartbeatTimeout: 生命周期挂钩等待超时时间 :type HeartbeatTimeout: int :param _LifecycleTransition: 生命周期挂钩适用场景 :type LifecycleTransition: str :param _NotificationMetadata: 通知目标的附加信息 :type NotificationMetadata: str :param _CreatedTime: 创建时间 :type CreatedTime: str :param _NotificationTarget: 通知目标 :type NotificationTarget: :class:`tencentcloud.autoscaling.v20180419.models.NotificationTarget` :param _LifecycleTransitionType: 生命周期挂钩适用场景 :type LifecycleTransitionType: str :param _LifecycleCommand: 远程命令执行对象 注意:此字段可能返回 null,表示取不到有效值。 :type LifecycleCommand: :class:`tencentcloud.autoscaling.v20180419.models.LifecycleCommand` """ self._LifecycleHookId = None self._LifecycleHookName = None self._AutoScalingGroupId = None self._DefaultResult = None self._HeartbeatTimeout = None self._LifecycleTransition = None self._NotificationMetadata = None self._CreatedTime = None self._NotificationTarget = None self._LifecycleTransitionType = None self._LifecycleCommand = None @property def LifecycleHookId(self): """生命周期挂钩ID :rtype: str """ return self._LifecycleHookId @LifecycleHookId.setter def LifecycleHookId(self, LifecycleHookId): self._LifecycleHookId = LifecycleHookId @property def LifecycleHookName(self): """生命周期挂钩名称 :rtype: str """ return self._LifecycleHookName @LifecycleHookName.setter def LifecycleHookName(self, LifecycleHookName): self._LifecycleHookName = LifecycleHookName @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def DefaultResult(self): """生命周期挂钩默认结果 :rtype: str """ return self._DefaultResult @DefaultResult.setter def DefaultResult(self, DefaultResult): self._DefaultResult = DefaultResult @property def HeartbeatTimeout(self): """生命周期挂钩等待超时时间 :rtype: int """ return self._HeartbeatTimeout @HeartbeatTimeout.setter def HeartbeatTimeout(self, HeartbeatTimeout): self._HeartbeatTimeout = HeartbeatTimeout @property def LifecycleTransition(self): """生命周期挂钩适用场景 :rtype: str """ return self._LifecycleTransition @LifecycleTransition.setter def LifecycleTransition(self, LifecycleTransition): self._LifecycleTransition = LifecycleTransition @property def NotificationMetadata(self): """通知目标的附加信息 :rtype: str """ return self._NotificationMetadata @NotificationMetadata.setter def NotificationMetadata(self, NotificationMetadata): self._NotificationMetadata = NotificationMetadata @property def CreatedTime(self): """创建时间 :rtype: str """ return self._CreatedTime @CreatedTime.setter def CreatedTime(self, CreatedTime): self._CreatedTime = CreatedTime @property def NotificationTarget(self): """通知目标 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.NotificationTarget` """ return self._NotificationTarget @NotificationTarget.setter def NotificationTarget(self, NotificationTarget): self._NotificationTarget = NotificationTarget @property def LifecycleTransitionType(self): """生命周期挂钩适用场景 :rtype: str """ return self._LifecycleTransitionType @LifecycleTransitionType.setter def LifecycleTransitionType(self, LifecycleTransitionType): self._LifecycleTransitionType = LifecycleTransitionType @property def LifecycleCommand(self): """远程命令执行对象 注意:此字段可能返回 null,表示取不到有效值。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.LifecycleCommand` """ return self._LifecycleCommand @LifecycleCommand.setter def LifecycleCommand(self, LifecycleCommand): self._LifecycleCommand = LifecycleCommand def _deserialize(self, params): self._LifecycleHookId = params.get("LifecycleHookId") self._LifecycleHookName = params.get("LifecycleHookName") self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._DefaultResult = params.get("DefaultResult") self._HeartbeatTimeout = params.get("HeartbeatTimeout") self._LifecycleTransition = params.get("LifecycleTransition") self._NotificationMetadata = params.get("NotificationMetadata") self._CreatedTime = params.get("CreatedTime") if params.get("NotificationTarget") is not None: self._NotificationTarget = NotificationTarget() self._NotificationTarget._deserialize(params.get("NotificationTarget")) self._LifecycleTransitionType = params.get("LifecycleTransitionType") if params.get("LifecycleCommand") is not None: self._LifecycleCommand = LifecycleCommand() self._LifecycleCommand._deserialize(params.get("LifecycleCommand")) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class LimitedLoginSettings(AbstractModel): """描述了实例登录相关配置与信息,出于安全性考虑,不会描述敏感信息。 """ def __init__(self): r""" :param _KeyIds: 密钥ID列表。 :type KeyIds: list of str """ self._KeyIds = None @property def KeyIds(self): """密钥ID列表。 :rtype: list of str """ return self._KeyIds @KeyIds.setter def KeyIds(self, KeyIds): self._KeyIds = KeyIds def _deserialize(self, params): self._KeyIds = params.get("KeyIds") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class LoginSettings(AbstractModel): """描述了实例登录相关配置与信息。 """ def __init__(self): r""" :param _Password: 实例登录密码。不同操作系统类型密码复杂度限制不一样,具体如下: - Linux实例密码必须8到30位,至少包括四项(小写字母、大写字母、数字和特殊符号)中的两项。 - Windows实例密码必须12到30位,至少包括包括四项(小写字母、大写字母、数字和特殊符号)中的三项。 - 若不指定该参数,则由系统随机生成密码,并通过站内信方式通知到用户。 特殊符号的取值范围: [( ) ` ~ ! @ # $ % ^ & * - + = | { } [ ] : ; ' , . ? / ] :type Password: str :param _KeyIds: 密钥ID列表。关联密钥后,就可以通过对应的私钥来访问实例;KeyId可通过接口DescribeKeyPairs获取,密钥与密码不能同时指定,同时Windows操作系统不支持指定密钥。当前仅支持购买的时候指定一个密钥。 :type KeyIds: list of str :param _KeepImageLogin: 保持镜像的原始设置。该参数与Password或KeyIds.N不能同时指定。只有使用自定义镜像、共享镜像或外部导入镜像创建实例时才能指定该参数为TRUE。取值范围: <li>TRUE:表示保持镜像的登录设置</li> <li>FALSE:表示不保持镜像的登录设置</li>默认取值:FALSE。 :type KeepImageLogin: bool """ self._Password = None self._KeyIds = None self._KeepImageLogin = None @property def Password(self): """实例登录密码。不同操作系统类型密码复杂度限制不一样,具体如下: - Linux实例密码必须8到30位,至少包括四项(小写字母、大写字母、数字和特殊符号)中的两项。 - Windows实例密码必须12到30位,至少包括包括四项(小写字母、大写字母、数字和特殊符号)中的三项。 - 若不指定该参数,则由系统随机生成密码,并通过站内信方式通知到用户。 特殊符号的取值范围: [( ) ` ~ ! @ # $ % ^ & * - + = | { } [ ] : ; ' , . ? / ] :rtype: str """ return self._Password @Password.setter def Password(self, Password): self._Password = Password @property def KeyIds(self): """密钥ID列表。关联密钥后,就可以通过对应的私钥来访问实例;KeyId可通过接口DescribeKeyPairs获取,密钥与密码不能同时指定,同时Windows操作系统不支持指定密钥。当前仅支持购买的时候指定一个密钥。 :rtype: list of str """ return self._KeyIds @KeyIds.setter def KeyIds(self, KeyIds): self._KeyIds = KeyIds @property def KeepImageLogin(self): """保持镜像的原始设置。该参数与Password或KeyIds.N不能同时指定。只有使用自定义镜像、共享镜像或外部导入镜像创建实例时才能指定该参数为TRUE。取值范围: <li>TRUE:表示保持镜像的登录设置</li> <li>FALSE:表示不保持镜像的登录设置</li>默认取值:FALSE。 :rtype: bool """ return self._KeepImageLogin @KeepImageLogin.setter def KeepImageLogin(self, KeepImageLogin): self._KeepImageLogin = KeepImageLogin def _deserialize(self, params): self._Password = params.get("Password") self._KeyIds = params.get("KeyIds") self._KeepImageLogin = params.get("KeepImageLogin") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class Metadata(AbstractModel): """自定义 Metadata """ def __init__(self): r""" :param _Items: 自定义 Metadata 键值对列表 :type Items: list of MetadataItem """ self._Items = None @property def Items(self): """自定义 Metadata 键值对列表 :rtype: list of MetadataItem """ return self._Items @Items.setter def Items(self, Items): self._Items = Items def _deserialize(self, params): if params.get("Items") is not None: self._Items = [] for item in params.get("Items"): obj = MetadataItem() obj._deserialize(item) self._Items.append(obj) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class MetadataItem(AbstractModel): """自定义 Metadata 的一组键值对信息 """ def __init__(self): r""" :param _Key: 自定义 MetaData 键 :type Key: str :param _Value: 自定义 MetaData 值 :type Value: str """ self._Key = None self._Value = None @property def Key(self): """自定义 MetaData 键 :rtype: str """ return self._Key @Key.setter def Key(self, Key): self._Key = Key @property def Value(self): """自定义 MetaData 值 :rtype: str """ return self._Value @Value.setter def Value(self, Value): self._Value = Value def _deserialize(self, params): self._Key = params.get("Key") self._Value = params.get("Value") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class MetricAlarm(AbstractModel): """弹性伸缩告警指标 """ def __init__(self): r""" :param _ComparisonOperator: 比较运算符,可选值:<br><li>GREATER_THAN:大于</li><li>GREATER_THAN_OR_EQUAL_TO:大于或等于</li><li>LESS_THAN:小于</li><li> LESS_THAN_OR_EQUAL_TO:小于或等于</li><li> EQUAL_TO:等于</li> <li>NOT_EQUAL_TO:不等于</li> :type ComparisonOperator: str :param _MetricName: 指标名称,可选字段如下:<br><li>CPU_UTILIZATION:CPU利用率</li><li>MEM_UTILIZATION:内存利用率</li><li>LAN_TRAFFIC_OUT:内网出带宽</li><li>LAN_TRAFFIC_IN:内网入带宽</li><li>WAN_TRAFFIC_OUT:外网出带宽</li><li>WAN_TRAFFIC_IN:外网入带宽</li><li>TCP_CURR_ESTAB:TCP连接数</li> :type MetricName: str :param _Threshold: 告警阈值:<br><li>CPU_UTILIZATION:[1, 100],单位:%</li><li>MEM_UTILIZATION:[1, 100],单位:%</li><li>LAN_TRAFFIC_OUT:>0,单位:Mbps </li><li>LAN_TRAFFIC_IN:>0,单位:Mbps</li><li>WAN_TRAFFIC_OUT:>0,单位:Mbps</li><li>WAN_TRAFFIC_IN:>0,单位:Mbps</li><li>TCP_CURR_ESTAB:>0, 单位:Count</li> :type Threshold: int :param _Period: 时间周期,单位:秒,取值枚举值为60、300。 :type Period: int :param _ContinuousTime: 重复次数。取值范围 [1, 10] :type ContinuousTime: int :param _Statistic: 统计类型,可选字段如下:<br><li>AVERAGE:平均值</li><li>MAXIMUM:最大值<li>MINIMUM:最小值</li><br> 默认取值:AVERAGE :type Statistic: str :param _PreciseThreshold: 精确告警阈值,本参数不作为入参输入,仅用作查询接口出参:<br><li>CPU_UTILIZATION:(0, 100],单位:%</li><li>MEM_UTILIZATION:(0, 100],单位:%</li><li>LAN_TRAFFIC_OUT:>0,单位:Mbps </li><li>LAN_TRAFFIC_IN:>0,单位:Mbps</li><li>WAN_TRAFFIC_OUT:>0,单位:Mbps</li><li>WAN_TRAFFIC_IN:>0,单位:Mbps</li><li>TCP_CURR_ESTAB:>0, 单位:Count</li> :type PreciseThreshold: float """ self._ComparisonOperator = None self._MetricName = None self._Threshold = None self._Period = None self._ContinuousTime = None self._Statistic = None self._PreciseThreshold = None @property def ComparisonOperator(self): """比较运算符,可选值:<br><li>GREATER_THAN:大于</li><li>GREATER_THAN_OR_EQUAL_TO:大于或等于</li><li>LESS_THAN:小于</li><li> LESS_THAN_OR_EQUAL_TO:小于或等于</li><li> EQUAL_TO:等于</li> <li>NOT_EQUAL_TO:不等于</li> :rtype: str """ return self._ComparisonOperator @ComparisonOperator.setter def ComparisonOperator(self, ComparisonOperator): self._ComparisonOperator = ComparisonOperator @property def MetricName(self): """指标名称,可选字段如下:<br><li>CPU_UTILIZATION:CPU利用率</li><li>MEM_UTILIZATION:内存利用率</li><li>LAN_TRAFFIC_OUT:内网出带宽</li><li>LAN_TRAFFIC_IN:内网入带宽</li><li>WAN_TRAFFIC_OUT:外网出带宽</li><li>WAN_TRAFFIC_IN:外网入带宽</li><li>TCP_CURR_ESTAB:TCP连接数</li> :rtype: str """ return self._MetricName @MetricName.setter def MetricName(self, MetricName): self._MetricName = MetricName @property def Threshold(self): """告警阈值:<br><li>CPU_UTILIZATION:[1, 100],单位:%</li><li>MEM_UTILIZATION:[1, 100],单位:%</li><li>LAN_TRAFFIC_OUT:>0,单位:Mbps </li><li>LAN_TRAFFIC_IN:>0,单位:Mbps</li><li>WAN_TRAFFIC_OUT:>0,单位:Mbps</li><li>WAN_TRAFFIC_IN:>0,单位:Mbps</li><li>TCP_CURR_ESTAB:>0, 单位:Count</li> :rtype: int """ return self._Threshold @Threshold.setter def Threshold(self, Threshold): self._Threshold = Threshold @property def Period(self): """时间周期,单位:秒,取值枚举值为60、300。 :rtype: int """ return self._Period @Period.setter def Period(self, Period): self._Period = Period @property def ContinuousTime(self): """重复次数。取值范围 [1, 10] :rtype: int """ return self._ContinuousTime @ContinuousTime.setter def ContinuousTime(self, ContinuousTime): self._ContinuousTime = ContinuousTime @property def Statistic(self): """统计类型,可选字段如下:<br><li>AVERAGE:平均值</li><li>MAXIMUM:最大值<li>MINIMUM:最小值</li><br> 默认取值:AVERAGE :rtype: str """ return self._Statistic @Statistic.setter def Statistic(self, Statistic): self._Statistic = Statistic @property def PreciseThreshold(self): """精确告警阈值,本参数不作为入参输入,仅用作查询接口出参:<br><li>CPU_UTILIZATION:(0, 100],单位:%</li><li>MEM_UTILIZATION:(0, 100],单位:%</li><li>LAN_TRAFFIC_OUT:>0,单位:Mbps </li><li>LAN_TRAFFIC_IN:>0,单位:Mbps</li><li>WAN_TRAFFIC_OUT:>0,单位:Mbps</li><li>WAN_TRAFFIC_IN:>0,单位:Mbps</li><li>TCP_CURR_ESTAB:>0, 单位:Count</li> :rtype: float """ return self._PreciseThreshold @PreciseThreshold.setter def PreciseThreshold(self, PreciseThreshold): self._PreciseThreshold = PreciseThreshold def _deserialize(self, params): self._ComparisonOperator = params.get("ComparisonOperator") self._MetricName = params.get("MetricName") self._Threshold = params.get("Threshold") self._Period = params.get("Period") self._ContinuousTime = params.get("ContinuousTime") self._Statistic = params.get("Statistic") self._PreciseThreshold = params.get("PreciseThreshold") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifyAutoScalingGroupRequest(AbstractModel): """ModifyAutoScalingGroup请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str :param _AutoScalingGroupName: 伸缩组名称,在您账号中必须唯一。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超55个字节。 :type AutoScalingGroupName: str :param _DefaultCooldown: 默认冷却时间,单位秒,默认值为300 :type DefaultCooldown: int :param _DesiredCapacity: 期望实例数,大小介于最小实例数和最大实例数之间 :type DesiredCapacity: int :param _LaunchConfigurationId: 启动配置ID :type LaunchConfigurationId: str :param _MaxSize: 最大实例数,取值范围为0-2000。 :type MaxSize: int :param _MinSize: 最小实例数,取值范围为0-2000。 :type MinSize: int :param _ProjectId: 项目ID :type ProjectId: int :param _SubnetIds: 子网ID列表 :type SubnetIds: list of str :param _TerminationPolicies: 销毁策略,目前长度上限为1。取值包括 OLDEST_INSTANCE 和 NEWEST_INSTANCE。 <li> OLDEST_INSTANCE 优先销毁伸缩组中最旧的实例。</li> <li> NEWEST_INSTANCE,优先销毁伸缩组中最新的实例。</li> :type TerminationPolicies: list of str :param _VpcId: VPC ID,基础网络则填空字符串。修改为具体VPC ID时,需指定相应的SubnetIds;修改为基础网络时,需指定相应的Zones。 :type VpcId: str :param _Zones: 可用区列表 :type Zones: list of str :param _RetryPolicy: 重试策略,取值包括 IMMEDIATE_RETRY、 INCREMENTAL_INTERVALS、NO_RETRY,默认取值为 IMMEDIATE_RETRY。部分成功的伸缩活动判定为一次失败活动。 <li>IMMEDIATE_RETRY,立即重试,在较短时间内快速重试,连续失败超过一定次数(5次)后不再重试。</li> <li>INCREMENTAL_INTERVALS,间隔递增重试,随着连续失败次数的增加,重试间隔逐渐增大,重试间隔从秒级到1天不等。</li> <li> NO_RETRY,不进行重试,直到再次收到用户调用或者告警信息后才会重试。</li> :type RetryPolicy: str :param _ZonesCheckPolicy: 可用区校验策略,取值包括 ALL 和 ANY,默认取值为ANY。在伸缩组实际变更资源相关字段时(启动配置、可用区、子网)发挥作用。 <li> ALL,所有可用区(Zone)或子网(SubnetId)都可用则通过校验,否则校验报错。</li> <li> ANY,存在任何一个可用区(Zone)或子网(SubnetId)可用则通过校验,否则校验报错。</li> 可用区或子网不可用的常见原因包括该可用区CVM实例类型售罄、该可用区CBS云盘售罄、该可用区配额不足、该子网IP不足等。 如果 Zones/SubnetIds 中可用区或者子网不存在,则无论 ZonesCheckPolicy 采用何种取值,都会校验报错。 :type ZonesCheckPolicy: str :param _ServiceSettings: 服务设置,包括云监控不健康替换等服务设置。 :type ServiceSettings: :class:`tencentcloud.autoscaling.v20180419.models.ServiceSettings` :param _Ipv6AddressCount: 实例具有IPv6地址数量的配置,取值包括0、1。 :type Ipv6AddressCount: int :param _MultiZoneSubnetPolicy: 多可用区/子网策略,取值包括 PRIORITY 和 EQUALITY,默认为 PRIORITY。 <li> PRIORITY,按照可用区/子网列表的顺序,作为优先级来尝试创建实例,如果优先级最高的可用区/子网可以创建成功,则总在该可用区/子网创建。</li> <li> EQUALITY:扩容出的实例会打散到多个可用区/子网,保证扩容后的各个可用区/子网实例数相对均衡。</li> 与本策略相关的注意点: <li> 当伸缩组为基础网络时,本策略适用于多可用区;当伸缩组为VPC网络时,本策略适用于多子网,此时不再考虑可用区因素,例如四个子网ABCD,其中ABC处于可用区1,D处于可用区2,此时考虑子网ABCD进行排序,而不考虑可用区1、2。</li> <li> 本策略适用于多可用区/子网,不适用于启动配置的多机型。多机型按照优先级策略进行选择。</li> <li> 按照 PRIORITY 策略创建实例时,先保证多机型的策略,后保证多可用区/子网的策略。例如多机型A、B,多子网1、2、3,会按照A1、A2、A3、B1、B2、B3 进行尝试,如果A1售罄,会尝试A2(而非B1)。</li> :type MultiZoneSubnetPolicy: str :param _HealthCheckType: 伸缩组实例健康检查类型,取值如下: <li>CVM:根据实例网络状态判断实例是否处于不健康状态,不健康的网络状态即发生实例 PING 不可达事件,详细判断标准可参考[实例健康检查](https://cloud.tencent.com/document/product/377/8553)</li> <li>CLB:根据 CLB 的健康检查状态判断实例是否处于不健康状态,CLB健康检查原理可参考[健康检查](https://cloud.tencent.com/document/product/214/6097)</li> :type HealthCheckType: str :param _LoadBalancerHealthCheckGracePeriod: CLB健康检查宽限期。 :type LoadBalancerHealthCheckGracePeriod: int :param _InstanceAllocationPolicy: 实例分配策略,取值包括 LAUNCH_CONFIGURATION 和 SPOT_MIXED。 <li> LAUNCH_CONFIGURATION,代表传统的按照启动配置模式。</li> <li> SPOT_MIXED,代表竞价混合模式。目前仅支持启动配置为按量计费模式时使用混合模式,混合模式下,伸缩组将根据设定扩容按量或竞价机型。使用混合模式时,关联的启动配置的计费类型不可被修改。</li> :type InstanceAllocationPolicy: str :param _SpotMixedAllocationPolicy: 竞价混合模式下,各计费类型实例的分配策略。 仅当 InstanceAllocationPolicy 取 SPOT_MIXED 时可用。 :type SpotMixedAllocationPolicy: :class:`tencentcloud.autoscaling.v20180419.models.SpotMixedAllocationPolicy` :param _CapacityRebalance: 容量重平衡功能,仅对伸缩组内的竞价实例有效。取值范围: <li> TRUE,开启该功能,当伸缩组内的竞价实例即将被竞价实例服务自动回收前,AS 主动发起竞价实例销毁流程,如果有配置过缩容 hook,则销毁前 hook 会生效。销毁流程启动后,AS 会异步开启一个扩容活动,用于补齐期望实例数。</li> <li> FALSE,不开启该功能,则 AS 等待竞价实例被销毁后才会去扩容补齐伸缩组期望实例数。</li> :type CapacityRebalance: bool :param _InstanceNameIndexSettings: 实例名称序号相关设置。开启后为伸缩组内自动创建的实例名称添加递增的数字序号。 :type InstanceNameIndexSettings: :class:`tencentcloud.autoscaling.v20180419.models.InstanceNameIndexSettings` """ self._AutoScalingGroupId = None self._AutoScalingGroupName = None self._DefaultCooldown = None self._DesiredCapacity = None self._LaunchConfigurationId = None self._MaxSize = None self._MinSize = None self._ProjectId = None self._SubnetIds = None self._TerminationPolicies = None self._VpcId = None self._Zones = None self._RetryPolicy = None self._ZonesCheckPolicy = None self._ServiceSettings = None self._Ipv6AddressCount = None self._MultiZoneSubnetPolicy = None self._HealthCheckType = None self._LoadBalancerHealthCheckGracePeriod = None self._InstanceAllocationPolicy = None self._SpotMixedAllocationPolicy = None self._CapacityRebalance = None self._InstanceNameIndexSettings = None @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def AutoScalingGroupName(self): """伸缩组名称,在您账号中必须唯一。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超55个字节。 :rtype: str """ return self._AutoScalingGroupName @AutoScalingGroupName.setter def AutoScalingGroupName(self, AutoScalingGroupName): self._AutoScalingGroupName = AutoScalingGroupName @property def DefaultCooldown(self): """默认冷却时间,单位秒,默认值为300 :rtype: int """ return self._DefaultCooldown @DefaultCooldown.setter def DefaultCooldown(self, DefaultCooldown): self._DefaultCooldown = DefaultCooldown @property def DesiredCapacity(self): """期望实例数,大小介于最小实例数和最大实例数之间 :rtype: int """ return self._DesiredCapacity @DesiredCapacity.setter def DesiredCapacity(self, DesiredCapacity): self._DesiredCapacity = DesiredCapacity @property def LaunchConfigurationId(self): """启动配置ID :rtype: str """ return self._LaunchConfigurationId @LaunchConfigurationId.setter def LaunchConfigurationId(self, LaunchConfigurationId): self._LaunchConfigurationId = LaunchConfigurationId @property def MaxSize(self): """最大实例数,取值范围为0-2000。 :rtype: int """ return self._MaxSize @MaxSize.setter def MaxSize(self, MaxSize): self._MaxSize = MaxSize @property def MinSize(self): """最小实例数,取值范围为0-2000。 :rtype: int """ return self._MinSize @MinSize.setter def MinSize(self, MinSize): self._MinSize = MinSize @property def ProjectId(self): """项目ID :rtype: int """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def SubnetIds(self): """子网ID列表 :rtype: list of str """ return self._SubnetIds @SubnetIds.setter def SubnetIds(self, SubnetIds): self._SubnetIds = SubnetIds @property def TerminationPolicies(self): """销毁策略,目前长度上限为1。取值包括 OLDEST_INSTANCE 和 NEWEST_INSTANCE。 <li> OLDEST_INSTANCE 优先销毁伸缩组中最旧的实例。</li> <li> NEWEST_INSTANCE,优先销毁伸缩组中最新的实例。</li> :rtype: list of str """ return self._TerminationPolicies @TerminationPolicies.setter def TerminationPolicies(self, TerminationPolicies): self._TerminationPolicies = TerminationPolicies @property def VpcId(self): """VPC ID,基础网络则填空字符串。修改为具体VPC ID时,需指定相应的SubnetIds;修改为基础网络时,需指定相应的Zones。 :rtype: str """ return self._VpcId @VpcId.setter def VpcId(self, VpcId): self._VpcId = VpcId @property def Zones(self): """可用区列表 :rtype: list of str """ return self._Zones @Zones.setter def Zones(self, Zones): self._Zones = Zones @property def RetryPolicy(self): """重试策略,取值包括 IMMEDIATE_RETRY、 INCREMENTAL_INTERVALS、NO_RETRY,默认取值为 IMMEDIATE_RETRY。部分成功的伸缩活动判定为一次失败活动。 <li>IMMEDIATE_RETRY,立即重试,在较短时间内快速重试,连续失败超过一定次数(5次)后不再重试。</li> <li>INCREMENTAL_INTERVALS,间隔递增重试,随着连续失败次数的增加,重试间隔逐渐增大,重试间隔从秒级到1天不等。</li> <li> NO_RETRY,不进行重试,直到再次收到用户调用或者告警信息后才会重试。</li> :rtype: str """ return self._RetryPolicy @RetryPolicy.setter def RetryPolicy(self, RetryPolicy): self._RetryPolicy = RetryPolicy @property def ZonesCheckPolicy(self): """可用区校验策略,取值包括 ALL 和 ANY,默认取值为ANY。在伸缩组实际变更资源相关字段时(启动配置、可用区、子网)发挥作用。 <li> ALL,所有可用区(Zone)或子网(SubnetId)都可用则通过校验,否则校验报错。</li> <li> ANY,存在任何一个可用区(Zone)或子网(SubnetId)可用则通过校验,否则校验报错。</li> 可用区或子网不可用的常见原因包括该可用区CVM实例类型售罄、该可用区CBS云盘售罄、该可用区配额不足、该子网IP不足等。 如果 Zones/SubnetIds 中可用区或者子网不存在,则无论 ZonesCheckPolicy 采用何种取值,都会校验报错。 :rtype: str """ return self._ZonesCheckPolicy @ZonesCheckPolicy.setter def ZonesCheckPolicy(self, ZonesCheckPolicy): self._ZonesCheckPolicy = ZonesCheckPolicy @property def ServiceSettings(self): """服务设置,包括云监控不健康替换等服务设置。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.ServiceSettings` """ return self._ServiceSettings @ServiceSettings.setter def ServiceSettings(self, ServiceSettings): self._ServiceSettings = ServiceSettings @property def Ipv6AddressCount(self): """实例具有IPv6地址数量的配置,取值包括0、1。 :rtype: int """ return self._Ipv6AddressCount @Ipv6AddressCount.setter def Ipv6AddressCount(self, Ipv6AddressCount): self._Ipv6AddressCount = Ipv6AddressCount @property def MultiZoneSubnetPolicy(self): """多可用区/子网策略,取值包括 PRIORITY 和 EQUALITY,默认为 PRIORITY。 <li> PRIORITY,按照可用区/子网列表的顺序,作为优先级来尝试创建实例,如果优先级最高的可用区/子网可以创建成功,则总在该可用区/子网创建。</li> <li> EQUALITY:扩容出的实例会打散到多个可用区/子网,保证扩容后的各个可用区/子网实例数相对均衡。</li> 与本策略相关的注意点: <li> 当伸缩组为基础网络时,本策略适用于多可用区;当伸缩组为VPC网络时,本策略适用于多子网,此时不再考虑可用区因素,例如四个子网ABCD,其中ABC处于可用区1,D处于可用区2,此时考虑子网ABCD进行排序,而不考虑可用区1、2。</li> <li> 本策略适用于多可用区/子网,不适用于启动配置的多机型。多机型按照优先级策略进行选择。</li> <li> 按照 PRIORITY 策略创建实例时,先保证多机型的策略,后保证多可用区/子网的策略。例如多机型A、B,多子网1、2、3,会按照A1、A2、A3、B1、B2、B3 进行尝试,如果A1售罄,会尝试A2(而非B1)。</li> :rtype: str """ return self._MultiZoneSubnetPolicy @MultiZoneSubnetPolicy.setter def MultiZoneSubnetPolicy(self, MultiZoneSubnetPolicy): self._MultiZoneSubnetPolicy = MultiZoneSubnetPolicy @property def HealthCheckType(self): """伸缩组实例健康检查类型,取值如下: <li>CVM:根据实例网络状态判断实例是否处于不健康状态,不健康的网络状态即发生实例 PING 不可达事件,详细判断标准可参考[实例健康检查](https://cloud.tencent.com/document/product/377/8553)</li> <li>CLB:根据 CLB 的健康检查状态判断实例是否处于不健康状态,CLB健康检查原理可参考[健康检查](https://cloud.tencent.com/document/product/214/6097)</li> :rtype: str """ return self._HealthCheckType @HealthCheckType.setter def HealthCheckType(self, HealthCheckType): self._HealthCheckType = HealthCheckType @property def LoadBalancerHealthCheckGracePeriod(self): """CLB健康检查宽限期。 :rtype: int """ return self._LoadBalancerHealthCheckGracePeriod @LoadBalancerHealthCheckGracePeriod.setter def LoadBalancerHealthCheckGracePeriod(self, LoadBalancerHealthCheckGracePeriod): self._LoadBalancerHealthCheckGracePeriod = LoadBalancerHealthCheckGracePeriod @property def InstanceAllocationPolicy(self): """实例分配策略,取值包括 LAUNCH_CONFIGURATION 和 SPOT_MIXED。 <li> LAUNCH_CONFIGURATION,代表传统的按照启动配置模式。</li> <li> SPOT_MIXED,代表竞价混合模式。目前仅支持启动配置为按量计费模式时使用混合模式,混合模式下,伸缩组将根据设定扩容按量或竞价机型。使用混合模式时,关联的启动配置的计费类型不可被修改。</li> :rtype: str """ return self._InstanceAllocationPolicy @InstanceAllocationPolicy.setter def InstanceAllocationPolicy(self, InstanceAllocationPolicy): self._InstanceAllocationPolicy = InstanceAllocationPolicy @property def SpotMixedAllocationPolicy(self): """竞价混合模式下,各计费类型实例的分配策略。 仅当 InstanceAllocationPolicy 取 SPOT_MIXED 时可用。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.SpotMixedAllocationPolicy` """ return self._SpotMixedAllocationPolicy @SpotMixedAllocationPolicy.setter def SpotMixedAllocationPolicy(self, SpotMixedAllocationPolicy): self._SpotMixedAllocationPolicy = SpotMixedAllocationPolicy @property def CapacityRebalance(self): """容量重平衡功能,仅对伸缩组内的竞价实例有效。取值范围: <li> TRUE,开启该功能,当伸缩组内的竞价实例即将被竞价实例服务自动回收前,AS 主动发起竞价实例销毁流程,如果有配置过缩容 hook,则销毁前 hook 会生效。销毁流程启动后,AS 会异步开启一个扩容活动,用于补齐期望实例数。</li> <li> FALSE,不开启该功能,则 AS 等待竞价实例被销毁后才会去扩容补齐伸缩组期望实例数。</li> :rtype: bool """ return self._CapacityRebalance @CapacityRebalance.setter def CapacityRebalance(self, CapacityRebalance): self._CapacityRebalance = CapacityRebalance @property def InstanceNameIndexSettings(self): """实例名称序号相关设置。开启后为伸缩组内自动创建的实例名称添加递增的数字序号。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.InstanceNameIndexSettings` """ return self._InstanceNameIndexSettings @InstanceNameIndexSettings.setter def InstanceNameIndexSettings(self, InstanceNameIndexSettings): self._InstanceNameIndexSettings = InstanceNameIndexSettings def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._AutoScalingGroupName = params.get("AutoScalingGroupName") self._DefaultCooldown = params.get("DefaultCooldown") self._DesiredCapacity = params.get("DesiredCapacity") self._LaunchConfigurationId = params.get("LaunchConfigurationId") self._MaxSize = params.get("MaxSize") self._MinSize = params.get("MinSize") self._ProjectId = params.get("ProjectId") self._SubnetIds = params.get("SubnetIds") self._TerminationPolicies = params.get("TerminationPolicies") self._VpcId = params.get("VpcId") self._Zones = params.get("Zones") self._RetryPolicy = params.get("RetryPolicy") self._ZonesCheckPolicy = params.get("ZonesCheckPolicy") if params.get("ServiceSettings") is not None: self._ServiceSettings = ServiceSettings() self._ServiceSettings._deserialize(params.get("ServiceSettings")) self._Ipv6AddressCount = params.get("Ipv6AddressCount") self._MultiZoneSubnetPolicy = params.get("MultiZoneSubnetPolicy") self._HealthCheckType = params.get("HealthCheckType") self._LoadBalancerHealthCheckGracePeriod = params.get("LoadBalancerHealthCheckGracePeriod") self._InstanceAllocationPolicy = params.get("InstanceAllocationPolicy") if params.get("SpotMixedAllocationPolicy") is not None: self._SpotMixedAllocationPolicy = SpotMixedAllocationPolicy() self._SpotMixedAllocationPolicy._deserialize(params.get("SpotMixedAllocationPolicy")) self._CapacityRebalance = params.get("CapacityRebalance") if params.get("InstanceNameIndexSettings") is not None: self._InstanceNameIndexSettings = InstanceNameIndexSettings() self._InstanceNameIndexSettings._deserialize(params.get("InstanceNameIndexSettings")) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifyAutoScalingGroupResponse(AbstractModel): """ModifyAutoScalingGroup返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class ModifyDesiredCapacityRequest(AbstractModel): """ModifyDesiredCapacity请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str :param _DesiredCapacity: 期望实例数 :type DesiredCapacity: int :param _MinSize: 最小实例数,取值范围为0-2000。 :type MinSize: int :param _MaxSize: 最大实例数,取值范围为0-2000。 :type MaxSize: int """ self._AutoScalingGroupId = None self._DesiredCapacity = None self._MinSize = None self._MaxSize = None @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def DesiredCapacity(self): """期望实例数 :rtype: int """ return self._DesiredCapacity @DesiredCapacity.setter def DesiredCapacity(self, DesiredCapacity): self._DesiredCapacity = DesiredCapacity @property def MinSize(self): """最小实例数,取值范围为0-2000。 :rtype: int """ return self._MinSize @MinSize.setter def MinSize(self, MinSize): self._MinSize = MinSize @property def MaxSize(self): """最大实例数,取值范围为0-2000。 :rtype: int """ return self._MaxSize @MaxSize.setter def MaxSize(self, MaxSize): self._MaxSize = MaxSize def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._DesiredCapacity = params.get("DesiredCapacity") self._MinSize = params.get("MinSize") self._MaxSize = params.get("MaxSize") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifyDesiredCapacityResponse(AbstractModel): """ModifyDesiredCapacity返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class ModifyLaunchConfigurationAttributesRequest(AbstractModel): """ModifyLaunchConfigurationAttributes请求参数结构体 """ def __init__(self): r""" :param _LaunchConfigurationId: 启动配置ID :type LaunchConfigurationId: str :param _ImageId: 指定有效的[镜像](https://cloud.tencent.com/document/product/213/4940)ID,格式形如`img-8toqc6s3`。镜像类型分为四种:<br/><li>公共镜像</li><li>自定义镜像</li><li>共享镜像</li><li>服务市场镜像</li><br/>可通过以下方式获取可用的镜像ID:<br/><li>`公共镜像`、`自定义镜像`、`共享镜像`的镜像ID可通过登录[控制台](https://console.cloud.tencent.com/cvm/image?rid=1&imageType=PUBLIC_IMAGE)查询;`服务镜像市场`的镜像ID可通过[云市场](https://market.cloud.tencent.com/list)查询。</li><li>通过调用接口 [DescribeImages](https://cloud.tencent.com/document/api/213/15715) ,取返回信息中的`ImageId`字段。</li> :type ImageId: str :param _InstanceTypes: 实例类型列表,不同实例机型指定了不同的资源规格,最多支持10种实例机型。 InstanceType 指定单一实例类型,通过设置 InstanceTypes可以指定多实例类型,并使原有的InstanceType失效。 :type InstanceTypes: list of str :param _InstanceTypesCheckPolicy: 实例类型校验策略,在实际修改 InstanceTypes 时发挥作用,取值包括 ALL 和 ANY,默认取值为ANY。 <li> ALL,所有实例类型(InstanceType)都可用则通过校验,否则校验报错。</li> <li> ANY,存在任何一个实例类型(InstanceType)可用则通过校验,否则校验报错。</li> 实例类型不可用的常见原因包括该实例类型售罄、对应云盘售罄等。 如果 InstanceTypes 中一款机型不存在或者已下线,则无论 InstanceTypesCheckPolicy 采用何种取值,都会校验报错。 :type InstanceTypesCheckPolicy: str :param _LaunchConfigurationName: 启动配置显示名称。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超60个字节。 :type LaunchConfigurationName: str :param _UserData: 经过 Base64 编码后的自定义数据,最大长度不超过16KB。如果要清空UserData,则指定其为空字符串。 :type UserData: str :param _SecurityGroupIds: 实例所属安全组。该参数可以通过调用 [DescribeSecurityGroups](https://cloud.tencent.com/document/api/215/15808) 的返回值中的`SecurityGroupId`字段来获取。 若指定该参数,请至少提供一个安全组,列表顺序有先后。 :type SecurityGroupIds: list of str :param _InternetAccessible: 公网带宽相关信息设置。 当公网出带宽上限为0Mbps时,不支持修改为开通分配公网IP;相应的,当前为开通分配公网IP时,修改的公网出带宽上限值必须大于0Mbps。 :type InternetAccessible: :class:`tencentcloud.autoscaling.v20180419.models.InternetAccessible` :param _InstanceChargeType: 实例计费类型。具体取值范围如下: <li>POSTPAID_BY_HOUR:按小时后付费</li> <li>SPOTPAID:竞价付费</li> <li>PREPAID:预付费,即包年包月</li> <li>CDCPAID:专用集群付费</li> :type InstanceChargeType: str :param _InstanceChargePrepaid: 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月实例的购买时长、是否设置自动续费等属性。 若修改实例的付费模式为预付费,则该参数必传;从预付费修改为其他付费模式时,本字段原信息会自动丢弃。 当新增该字段时,必须传递购买实例的时长,其它未传递字段会设置为默认值。 当修改本字段时,当前付费模式必须为预付费。 :type InstanceChargePrepaid: :class:`tencentcloud.autoscaling.v20180419.models.InstanceChargePrepaid` :param _InstanceMarketOptions: 实例的市场相关选项,如竞价实例相关参数。 若修改实例的付费模式为竞价付费,则该参数必传;从竞价付费修改为其他付费模式时,本字段原信息会自动丢弃。 当新增该字段时,必须传递竞价相关选项下的竞价出价,其它未传递字段会设置为默认值。 当修改本字段时,当前付费模式必须为竞价付费。 :type InstanceMarketOptions: :class:`tencentcloud.autoscaling.v20180419.models.InstanceMarketOptionsRequest` :param _DiskTypePolicy: 云盘类型选择策略,取值范围: <li>ORIGINAL:使用设置的云盘类型。</li> <li>AUTOMATIC:自动选择当前可用的云盘类型。</li> :type DiskTypePolicy: str :param _SystemDisk: 实例系统盘配置信息。 :type SystemDisk: :class:`tencentcloud.autoscaling.v20180419.models.SystemDisk` :param _DataDisks: 实例数据盘配置信息。 最多支持指定11块数据盘。采取整体修改,因此请提供修改后的全部值。 数据盘类型默认与系统盘类型保持一致。 :type DataDisks: list of DataDisk :param _HostNameSettings: 云服务器主机名(HostName)的相关设置。 不支持windows实例设置主机名。 新增该属性时,必须传递云服务器的主机名,其它未传递字段会设置为默认值。 :type HostNameSettings: :class:`tencentcloud.autoscaling.v20180419.models.HostNameSettings` :param _InstanceNameSettings: 云服务器(InstanceName)实例名的相关设置。 如果用户在启动配置中设置此字段,则伸缩组创建出的实例 InstanceName 参照此字段进行设置,并传递给 CVM;如果用户未在启动配置中设置此字段,则伸缩组创建出的实例 InstanceName 按照“as-{{ 伸缩组AutoScalingGroupName }}”进行设置,并传递给 CVM。 新增该属性时,必须传递云服务器的实例名称,其它未传递字段会设置为默认值。 :type InstanceNameSettings: :class:`tencentcloud.autoscaling.v20180419.models.InstanceNameSettings` :param _EnhancedService: 增强服务。通过该参数可以指定是否开启云安全、云监控等服务。 :type EnhancedService: :class:`tencentcloud.autoscaling.v20180419.models.EnhancedService` :param _CamRoleName: CAM角色名称。可通过DescribeRoleList接口返回值中的roleName获取。 :type CamRoleName: str :param _HpcClusterId: 高性能计算集群ID。<br> 注意:此字段默认为空。 :type HpcClusterId: str :param _IPv6InternetAccessible: IPv6公网带宽相关信息设置。若新建实例包含IPv6地址,该参数可为新建实例的IPv6地址分配公网带宽。关联启动配置的伸缩组Ipv6AddressCount参数为0时,该参数不会生效。 :type IPv6InternetAccessible: :class:`tencentcloud.autoscaling.v20180419.models.IPv6InternetAccessible` :param _DisasterRecoverGroupIds: 置放群组id,仅支持指定一个。 :type DisasterRecoverGroupIds: list of str :param _LoginSettings: 实例登录设置,包括密码、密钥或保持镜像的原始登录设置。<br>请注意,指定新的登录设置会覆盖原有登录设置。例如,如果您之前使用密码登录,使用该参数将登录设置修改为密钥,则原有密码被清除。 :type LoginSettings: :class:`tencentcloud.autoscaling.v20180419.models.LoginSettings` :param _InstanceTags: 实例标签列表。通过指定该参数,可以为扩容的实例绑定标签。最多支持指定10个标签。 该参数会覆盖原有的实例标签列表,如需新增标签,需将新标签和原有标签一并传入。 :type InstanceTags: list of InstanceTag :param _ImageFamily: 镜像族名称。 :type ImageFamily: str :param _DedicatedClusterId: 本地专用集群ID。 :type DedicatedClusterId: str :param _Metadata: 自定义metadata。 :type Metadata: :class:`tencentcloud.autoscaling.v20180419.models.Metadata` """ self._LaunchConfigurationId = None self._ImageId = None self._InstanceTypes = None self._InstanceTypesCheckPolicy = None self._LaunchConfigurationName = None self._UserData = None self._SecurityGroupIds = None self._InternetAccessible = None self._InstanceChargeType = None self._InstanceChargePrepaid = None self._InstanceMarketOptions = None self._DiskTypePolicy = None self._SystemDisk = None self._DataDisks = None self._HostNameSettings = None self._InstanceNameSettings = None self._EnhancedService = None self._CamRoleName = None self._HpcClusterId = None self._IPv6InternetAccessible = None self._DisasterRecoverGroupIds = None self._LoginSettings = None self._InstanceTags = None self._ImageFamily = None self._DedicatedClusterId = None self._Metadata = None @property def LaunchConfigurationId(self): """启动配置ID :rtype: str """ return self._LaunchConfigurationId @LaunchConfigurationId.setter def LaunchConfigurationId(self, LaunchConfigurationId): self._LaunchConfigurationId = LaunchConfigurationId @property def ImageId(self): """指定有效的[镜像](https://cloud.tencent.com/document/product/213/4940)ID,格式形如`img-8toqc6s3`。镜像类型分为四种:<br/><li>公共镜像</li><li>自定义镜像</li><li>共享镜像</li><li>服务市场镜像</li><br/>可通过以下方式获取可用的镜像ID:<br/><li>`公共镜像`、`自定义镜像`、`共享镜像`的镜像ID可通过登录[控制台](https://console.cloud.tencent.com/cvm/image?rid=1&imageType=PUBLIC_IMAGE)查询;`服务镜像市场`的镜像ID可通过[云市场](https://market.cloud.tencent.com/list)查询。</li><li>通过调用接口 [DescribeImages](https://cloud.tencent.com/document/api/213/15715) ,取返回信息中的`ImageId`字段。</li> :rtype: str """ return self._ImageId @ImageId.setter def ImageId(self, ImageId): self._ImageId = ImageId @property def InstanceTypes(self): """实例类型列表,不同实例机型指定了不同的资源规格,最多支持10种实例机型。 InstanceType 指定单一实例类型,通过设置 InstanceTypes可以指定多实例类型,并使原有的InstanceType失效。 :rtype: list of str """ return self._InstanceTypes @InstanceTypes.setter def InstanceTypes(self, InstanceTypes): self._InstanceTypes = InstanceTypes @property def InstanceTypesCheckPolicy(self): """实例类型校验策略,在实际修改 InstanceTypes 时发挥作用,取值包括 ALL 和 ANY,默认取值为ANY。 <li> ALL,所有实例类型(InstanceType)都可用则通过校验,否则校验报错。</li> <li> ANY,存在任何一个实例类型(InstanceType)可用则通过校验,否则校验报错。</li> 实例类型不可用的常见原因包括该实例类型售罄、对应云盘售罄等。 如果 InstanceTypes 中一款机型不存在或者已下线,则无论 InstanceTypesCheckPolicy 采用何种取值,都会校验报错。 :rtype: str """ return self._InstanceTypesCheckPolicy @InstanceTypesCheckPolicy.setter def InstanceTypesCheckPolicy(self, InstanceTypesCheckPolicy): self._InstanceTypesCheckPolicy = InstanceTypesCheckPolicy @property def LaunchConfigurationName(self): """启动配置显示名称。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超60个字节。 :rtype: str """ return self._LaunchConfigurationName @LaunchConfigurationName.setter def LaunchConfigurationName(self, LaunchConfigurationName): self._LaunchConfigurationName = LaunchConfigurationName @property def UserData(self): """经过 Base64 编码后的自定义数据,最大长度不超过16KB。如果要清空UserData,则指定其为空字符串。 :rtype: str """ return self._UserData @UserData.setter def UserData(self, UserData): self._UserData = UserData @property def SecurityGroupIds(self): """实例所属安全组。该参数可以通过调用 [DescribeSecurityGroups](https://cloud.tencent.com/document/api/215/15808) 的返回值中的`SecurityGroupId`字段来获取。 若指定该参数,请至少提供一个安全组,列表顺序有先后。 :rtype: list of str """ return self._SecurityGroupIds @SecurityGroupIds.setter def SecurityGroupIds(self, SecurityGroupIds): self._SecurityGroupIds = SecurityGroupIds @property def InternetAccessible(self): """公网带宽相关信息设置。 当公网出带宽上限为0Mbps时,不支持修改为开通分配公网IP;相应的,当前为开通分配公网IP时,修改的公网出带宽上限值必须大于0Mbps。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.InternetAccessible` """ return self._InternetAccessible @InternetAccessible.setter def InternetAccessible(self, InternetAccessible): self._InternetAccessible = InternetAccessible @property def InstanceChargeType(self): """实例计费类型。具体取值范围如下: <li>POSTPAID_BY_HOUR:按小时后付费</li> <li>SPOTPAID:竞价付费</li> <li>PREPAID:预付费,即包年包月</li> <li>CDCPAID:专用集群付费</li> :rtype: str """ return self._InstanceChargeType @InstanceChargeType.setter def InstanceChargeType(self, InstanceChargeType): self._InstanceChargeType = InstanceChargeType @property def InstanceChargePrepaid(self): """预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月实例的购买时长、是否设置自动续费等属性。 若修改实例的付费模式为预付费,则该参数必传;从预付费修改为其他付费模式时,本字段原信息会自动丢弃。 当新增该字段时,必须传递购买实例的时长,其它未传递字段会设置为默认值。 当修改本字段时,当前付费模式必须为预付费。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.InstanceChargePrepaid` """ return self._InstanceChargePrepaid @InstanceChargePrepaid.setter def InstanceChargePrepaid(self, InstanceChargePrepaid): self._InstanceChargePrepaid = InstanceChargePrepaid @property def InstanceMarketOptions(self): """实例的市场相关选项,如竞价实例相关参数。 若修改实例的付费模式为竞价付费,则该参数必传;从竞价付费修改为其他付费模式时,本字段原信息会自动丢弃。 当新增该字段时,必须传递竞价相关选项下的竞价出价,其它未传递字段会设置为默认值。 当修改本字段时,当前付费模式必须为竞价付费。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.InstanceMarketOptionsRequest` """ return self._InstanceMarketOptions @InstanceMarketOptions.setter def InstanceMarketOptions(self, InstanceMarketOptions): self._InstanceMarketOptions = InstanceMarketOptions @property def DiskTypePolicy(self): """云盘类型选择策略,取值范围: <li>ORIGINAL:使用设置的云盘类型。</li> <li>AUTOMATIC:自动选择当前可用的云盘类型。</li> :rtype: str """ return self._DiskTypePolicy @DiskTypePolicy.setter def DiskTypePolicy(self, DiskTypePolicy): self._DiskTypePolicy = DiskTypePolicy @property def SystemDisk(self): """实例系统盘配置信息。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.SystemDisk` """ return self._SystemDisk @SystemDisk.setter def SystemDisk(self, SystemDisk): self._SystemDisk = SystemDisk @property def DataDisks(self): """实例数据盘配置信息。 最多支持指定11块数据盘。采取整体修改,因此请提供修改后的全部值。 数据盘类型默认与系统盘类型保持一致。 :rtype: list of DataDisk """ return self._DataDisks @DataDisks.setter def DataDisks(self, DataDisks): self._DataDisks = DataDisks @property def HostNameSettings(self): """云服务器主机名(HostName)的相关设置。 不支持windows实例设置主机名。 新增该属性时,必须传递云服务器的主机名,其它未传递字段会设置为默认值。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.HostNameSettings` """ return self._HostNameSettings @HostNameSettings.setter def HostNameSettings(self, HostNameSettings): self._HostNameSettings = HostNameSettings @property def InstanceNameSettings(self): """云服务器(InstanceName)实例名的相关设置。 如果用户在启动配置中设置此字段,则伸缩组创建出的实例 InstanceName 参照此字段进行设置,并传递给 CVM;如果用户未在启动配置中设置此字段,则伸缩组创建出的实例 InstanceName 按照“as-{{ 伸缩组AutoScalingGroupName }}”进行设置,并传递给 CVM。 新增该属性时,必须传递云服务器的实例名称,其它未传递字段会设置为默认值。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.InstanceNameSettings` """ return self._InstanceNameSettings @InstanceNameSettings.setter def InstanceNameSettings(self, InstanceNameSettings): self._InstanceNameSettings = InstanceNameSettings @property def EnhancedService(self): """增强服务。通过该参数可以指定是否开启云安全、云监控等服务。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.EnhancedService` """ return self._EnhancedService @EnhancedService.setter def EnhancedService(self, EnhancedService): self._EnhancedService = EnhancedService @property def CamRoleName(self): """CAM角色名称。可通过DescribeRoleList接口返回值中的roleName获取。 :rtype: str """ return self._CamRoleName @CamRoleName.setter def CamRoleName(self, CamRoleName): self._CamRoleName = CamRoleName @property def HpcClusterId(self): """高性能计算集群ID。<br> 注意:此字段默认为空。 :rtype: str """ return self._HpcClusterId @HpcClusterId.setter def HpcClusterId(self, HpcClusterId): self._HpcClusterId = HpcClusterId @property def IPv6InternetAccessible(self): """IPv6公网带宽相关信息设置。若新建实例包含IPv6地址,该参数可为新建实例的IPv6地址分配公网带宽。关联启动配置的伸缩组Ipv6AddressCount参数为0时,该参数不会生效。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.IPv6InternetAccessible` """ return self._IPv6InternetAccessible @IPv6InternetAccessible.setter def IPv6InternetAccessible(self, IPv6InternetAccessible): self._IPv6InternetAccessible = IPv6InternetAccessible @property def DisasterRecoverGroupIds(self): """置放群组id,仅支持指定一个。 :rtype: list of str """ return self._DisasterRecoverGroupIds @DisasterRecoverGroupIds.setter def DisasterRecoverGroupIds(self, DisasterRecoverGroupIds): self._DisasterRecoverGroupIds = DisasterRecoverGroupIds @property def LoginSettings(self): """实例登录设置,包括密码、密钥或保持镜像的原始登录设置。<br>请注意,指定新的登录设置会覆盖原有登录设置。例如,如果您之前使用密码登录,使用该参数将登录设置修改为密钥,则原有密码被清除。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.LoginSettings` """ return self._LoginSettings @LoginSettings.setter def LoginSettings(self, LoginSettings): self._LoginSettings = LoginSettings @property def InstanceTags(self): """实例标签列表。通过指定该参数,可以为扩容的实例绑定标签。最多支持指定10个标签。 该参数会覆盖原有的实例标签列表,如需新增标签,需将新标签和原有标签一并传入。 :rtype: list of InstanceTag """ return self._InstanceTags @InstanceTags.setter def InstanceTags(self, InstanceTags): self._InstanceTags = InstanceTags @property def ImageFamily(self): """镜像族名称。 :rtype: str """ return self._ImageFamily @ImageFamily.setter def ImageFamily(self, ImageFamily): self._ImageFamily = ImageFamily @property def DedicatedClusterId(self): """本地专用集群ID。 :rtype: str """ return self._DedicatedClusterId @DedicatedClusterId.setter def DedicatedClusterId(self, DedicatedClusterId): self._DedicatedClusterId = DedicatedClusterId @property def Metadata(self): """自定义metadata。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.Metadata` """ return self._Metadata @Metadata.setter def Metadata(self, Metadata): self._Metadata = Metadata def _deserialize(self, params): self._LaunchConfigurationId = params.get("LaunchConfigurationId") self._ImageId = params.get("ImageId") self._InstanceTypes = params.get("InstanceTypes") self._InstanceTypesCheckPolicy = params.get("InstanceTypesCheckPolicy") self._LaunchConfigurationName = params.get("LaunchConfigurationName") self._UserData = params.get("UserData") self._SecurityGroupIds = params.get("SecurityGroupIds") if params.get("InternetAccessible") is not None: self._InternetAccessible = InternetAccessible() self._InternetAccessible._deserialize(params.get("InternetAccessible")) self._InstanceChargeType = params.get("InstanceChargeType") if params.get("InstanceChargePrepaid") is not None: self._InstanceChargePrepaid = InstanceChargePrepaid() self._InstanceChargePrepaid._deserialize(params.get("InstanceChargePrepaid")) if params.get("InstanceMarketOptions") is not None: self._InstanceMarketOptions = InstanceMarketOptionsRequest() self._InstanceMarketOptions._deserialize(params.get("InstanceMarketOptions")) self._DiskTypePolicy = params.get("DiskTypePolicy") if params.get("SystemDisk") is not None: self._SystemDisk = SystemDisk() self._SystemDisk._deserialize(params.get("SystemDisk")) if params.get("DataDisks") is not None: self._DataDisks = [] for item in params.get("DataDisks"): obj = DataDisk() obj._deserialize(item) self._DataDisks.append(obj) if params.get("HostNameSettings") is not None: self._HostNameSettings = HostNameSettings() self._HostNameSettings._deserialize(params.get("HostNameSettings")) if params.get("InstanceNameSettings") is not None: self._InstanceNameSettings = InstanceNameSettings() self._InstanceNameSettings._deserialize(params.get("InstanceNameSettings")) if params.get("EnhancedService") is not None: self._EnhancedService = EnhancedService() self._EnhancedService._deserialize(params.get("EnhancedService")) self._CamRoleName = params.get("CamRoleName") self._HpcClusterId = params.get("HpcClusterId") if params.get("IPv6InternetAccessible") is not None: self._IPv6InternetAccessible = IPv6InternetAccessible() self._IPv6InternetAccessible._deserialize(params.get("IPv6InternetAccessible")) self._DisasterRecoverGroupIds = params.get("DisasterRecoverGroupIds") if params.get("LoginSettings") is not None: self._LoginSettings = LoginSettings() self._LoginSettings._deserialize(params.get("LoginSettings")) if params.get("InstanceTags") is not None: self._InstanceTags = [] for item in params.get("InstanceTags"): obj = InstanceTag() obj._deserialize(item) self._InstanceTags.append(obj) self._ImageFamily = params.get("ImageFamily") self._DedicatedClusterId = params.get("DedicatedClusterId") if params.get("Metadata") is not None: self._Metadata = Metadata() self._Metadata._deserialize(params.get("Metadata")) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifyLaunchConfigurationAttributesResponse(AbstractModel): """ModifyLaunchConfigurationAttributes返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class ModifyLifecycleHookRequest(AbstractModel): """ModifyLifecycleHook请求参数结构体 """ def __init__(self): r""" :param _LifecycleHookId: 生命周期挂钩ID。 :type LifecycleHookId: str :param _LifecycleHookName: 生命周期挂钩名称。 :type LifecycleHookName: str :param _LifecycleTransition: 进入生命周期挂钩场景,取值包括: <li> INSTANCE_LAUNCHING:实例启动后</li> <li> INSTANCE_TERMINATING:实例销毁前</li> :type LifecycleTransition: str :param _DefaultResult: 定义伸缩组在生命周期挂钩超时的情况下应采取的操作,取值包括: <li> CONTINUE: 超时后继续伸缩活动</li> <li> ABANDON:超时后终止伸缩活动</li> :type DefaultResult: str :param _HeartbeatTimeout: 生命周期挂钩超时之前可以经过的最长时间(以秒为单位),范围从 30 到 7200 秒。 :type HeartbeatTimeout: int :param _NotificationMetadata: 弹性伸缩向通知目标发送的附加信息。 :type NotificationMetadata: str :param _LifecycleTransitionType: 进行生命周期挂钩的场景类型,取值范围包括`NORMAL`和 `EXTENSION`。说明:设置为`EXTENSION`值,在AttachInstances、DetachInstances、RemoveInstances 接口时会触发生命周期挂钩操作,值为`NORMAL`则不会在这些接口中触发生命周期挂钩。 :type LifecycleTransitionType: str :param _NotificationTarget: 通知目标信息。 :type NotificationTarget: :class:`tencentcloud.autoscaling.v20180419.models.NotificationTarget` :param _LifecycleCommand: 远程命令执行对象。 :type LifecycleCommand: :class:`tencentcloud.autoscaling.v20180419.models.LifecycleCommand` """ self._LifecycleHookId = None self._LifecycleHookName = None self._LifecycleTransition = None self._DefaultResult = None self._HeartbeatTimeout = None self._NotificationMetadata = None self._LifecycleTransitionType = None self._NotificationTarget = None self._LifecycleCommand = None @property def LifecycleHookId(self): """生命周期挂钩ID。 :rtype: str """ return self._LifecycleHookId @LifecycleHookId.setter def LifecycleHookId(self, LifecycleHookId): self._LifecycleHookId = LifecycleHookId @property def LifecycleHookName(self): """生命周期挂钩名称。 :rtype: str """ return self._LifecycleHookName @LifecycleHookName.setter def LifecycleHookName(self, LifecycleHookName): self._LifecycleHookName = LifecycleHookName @property def LifecycleTransition(self): """进入生命周期挂钩场景,取值包括: <li> INSTANCE_LAUNCHING:实例启动后</li> <li> INSTANCE_TERMINATING:实例销毁前</li> :rtype: str """ return self._LifecycleTransition @LifecycleTransition.setter def LifecycleTransition(self, LifecycleTransition): self._LifecycleTransition = LifecycleTransition @property def DefaultResult(self): """定义伸缩组在生命周期挂钩超时的情况下应采取的操作,取值包括: <li> CONTINUE: 超时后继续伸缩活动</li> <li> ABANDON:超时后终止伸缩活动</li> :rtype: str """ return self._DefaultResult @DefaultResult.setter def DefaultResult(self, DefaultResult): self._DefaultResult = DefaultResult @property def HeartbeatTimeout(self): """生命周期挂钩超时之前可以经过的最长时间(以秒为单位),范围从 30 到 7200 秒。 :rtype: int """ return self._HeartbeatTimeout @HeartbeatTimeout.setter def HeartbeatTimeout(self, HeartbeatTimeout): self._HeartbeatTimeout = HeartbeatTimeout @property def NotificationMetadata(self): """弹性伸缩向通知目标发送的附加信息。 :rtype: str """ return self._NotificationMetadata @NotificationMetadata.setter def NotificationMetadata(self, NotificationMetadata): self._NotificationMetadata = NotificationMetadata @property def LifecycleTransitionType(self): """进行生命周期挂钩的场景类型,取值范围包括`NORMAL`和 `EXTENSION`。说明:设置为`EXTENSION`值,在AttachInstances、DetachInstances、RemoveInstances 接口时会触发生命周期挂钩操作,值为`NORMAL`则不会在这些接口中触发生命周期挂钩。 :rtype: str """ return self._LifecycleTransitionType @LifecycleTransitionType.setter def LifecycleTransitionType(self, LifecycleTransitionType): self._LifecycleTransitionType = LifecycleTransitionType @property def NotificationTarget(self): """通知目标信息。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.NotificationTarget` """ return self._NotificationTarget @NotificationTarget.setter def NotificationTarget(self, NotificationTarget): self._NotificationTarget = NotificationTarget @property def LifecycleCommand(self): """远程命令执行对象。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.LifecycleCommand` """ return self._LifecycleCommand @LifecycleCommand.setter def LifecycleCommand(self, LifecycleCommand): self._LifecycleCommand = LifecycleCommand def _deserialize(self, params): self._LifecycleHookId = params.get("LifecycleHookId") self._LifecycleHookName = params.get("LifecycleHookName") self._LifecycleTransition = params.get("LifecycleTransition") self._DefaultResult = params.get("DefaultResult") self._HeartbeatTimeout = params.get("HeartbeatTimeout") self._NotificationMetadata = params.get("NotificationMetadata") self._LifecycleTransitionType = params.get("LifecycleTransitionType") if params.get("NotificationTarget") is not None: self._NotificationTarget = NotificationTarget() self._NotificationTarget._deserialize(params.get("NotificationTarget")) if params.get("LifecycleCommand") is not None: self._LifecycleCommand = LifecycleCommand() self._LifecycleCommand._deserialize(params.get("LifecycleCommand")) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifyLifecycleHookResponse(AbstractModel): """ModifyLifecycleHook返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class ModifyLoadBalancerTargetAttributesRequest(AbstractModel): """ModifyLoadBalancerTargetAttributes请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str :param _ForwardLoadBalancers: 需修改目标规则属性的应用型负载均衡器列表,列表长度上限为100 :type ForwardLoadBalancers: list of ForwardLoadBalancer """ self._AutoScalingGroupId = None self._ForwardLoadBalancers = None @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def ForwardLoadBalancers(self): """需修改目标规则属性的应用型负载均衡器列表,列表长度上限为100 :rtype: list of ForwardLoadBalancer """ return self._ForwardLoadBalancers @ForwardLoadBalancers.setter def ForwardLoadBalancers(self, ForwardLoadBalancers): self._ForwardLoadBalancers = ForwardLoadBalancers def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") if params.get("ForwardLoadBalancers") is not None: self._ForwardLoadBalancers = [] for item in params.get("ForwardLoadBalancers"): obj = ForwardLoadBalancer() obj._deserialize(item) self._ForwardLoadBalancers.append(obj) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifyLoadBalancerTargetAttributesResponse(AbstractModel): """ModifyLoadBalancerTargetAttributes返回参数结构体 """ def __init__(self): r""" :param _ActivityId: 伸缩活动ID :type ActivityId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._ActivityId = None self._RequestId = None @property def ActivityId(self): """伸缩活动ID :rtype: str """ return self._ActivityId @ActivityId.setter def ActivityId(self, ActivityId): self._ActivityId = ActivityId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._ActivityId = params.get("ActivityId") self._RequestId = params.get("RequestId") class ModifyLoadBalancersRequest(AbstractModel): """ModifyLoadBalancers请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str :param _LoadBalancerIds: 传统负载均衡器ID列表,目前长度上限为20,LoadBalancerIds 和 ForwardLoadBalancers 二者同时最多只能指定一个 :type LoadBalancerIds: list of str :param _ForwardLoadBalancers: 应用型负载均衡器列表,目前长度上限为100,LoadBalancerIds 和 ForwardLoadBalancers 二者同时最多只能指定一个 :type ForwardLoadBalancers: list of ForwardLoadBalancer :param _LoadBalancersCheckPolicy: 负载均衡器校验策略,取值包括 ALL 和 DIFF,默认取值为 ALL。 <li> ALL,所有负载均衡器都合法则通过校验,否则校验报错。</li> <li> DIFF,仅校验负载均衡器参数中实际变化的部分,如果合法则通过校验,否则校验报错。</li> :type LoadBalancersCheckPolicy: str """ self._AutoScalingGroupId = None self._LoadBalancerIds = None self._ForwardLoadBalancers = None self._LoadBalancersCheckPolicy = None @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def LoadBalancerIds(self): """传统负载均衡器ID列表,目前长度上限为20,LoadBalancerIds 和 ForwardLoadBalancers 二者同时最多只能指定一个 :rtype: list of str """ return self._LoadBalancerIds @LoadBalancerIds.setter def LoadBalancerIds(self, LoadBalancerIds): self._LoadBalancerIds = LoadBalancerIds @property def ForwardLoadBalancers(self): """应用型负载均衡器列表,目前长度上限为100,LoadBalancerIds 和 ForwardLoadBalancers 二者同时最多只能指定一个 :rtype: list of ForwardLoadBalancer """ return self._ForwardLoadBalancers @ForwardLoadBalancers.setter def ForwardLoadBalancers(self, ForwardLoadBalancers): self._ForwardLoadBalancers = ForwardLoadBalancers @property def LoadBalancersCheckPolicy(self): """负载均衡器校验策略,取值包括 ALL 和 DIFF,默认取值为 ALL。 <li> ALL,所有负载均衡器都合法则通过校验,否则校验报错。</li> <li> DIFF,仅校验负载均衡器参数中实际变化的部分,如果合法则通过校验,否则校验报错。</li> :rtype: str """ return self._LoadBalancersCheckPolicy @LoadBalancersCheckPolicy.setter def LoadBalancersCheckPolicy(self, LoadBalancersCheckPolicy): self._LoadBalancersCheckPolicy = LoadBalancersCheckPolicy def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._LoadBalancerIds = params.get("LoadBalancerIds") if params.get("ForwardLoadBalancers") is not None: self._ForwardLoadBalancers = [] for item in params.get("ForwardLoadBalancers"): obj = ForwardLoadBalancer() obj._deserialize(item) self._ForwardLoadBalancers.append(obj) self._LoadBalancersCheckPolicy = params.get("LoadBalancersCheckPolicy") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifyLoadBalancersResponse(AbstractModel): """ModifyLoadBalancers返回参数结构体 """ def __init__(self): r""" :param _ActivityId: 伸缩活动ID :type ActivityId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._ActivityId = None self._RequestId = None @property def ActivityId(self): """伸缩活动ID :rtype: str """ return self._ActivityId @ActivityId.setter def ActivityId(self, ActivityId): self._ActivityId = ActivityId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._ActivityId = params.get("ActivityId") self._RequestId = params.get("RequestId") class ModifyNotificationConfigurationRequest(AbstractModel): """ModifyNotificationConfiguration请求参数结构体 """ def __init__(self): r""" :param _AutoScalingNotificationId: 待修改的通知ID。 :type AutoScalingNotificationId: str :param _NotificationTypes: 通知类型,即为需要订阅的通知类型集合,取值范围如下: <li>SCALE_OUT_SUCCESSFUL:扩容成功</li> <li>SCALE_OUT_FAILED:扩容失败</li> <li>SCALE_IN_SUCCESSFUL:缩容成功</li> <li>SCALE_IN_FAILED:缩容失败</li> <li>REPLACE_UNHEALTHY_INSTANCE_SUCCESSFUL:替换不健康子机成功</li> <li>REPLACE_UNHEALTHY_INSTANCE_FAILED:替换不健康子机失败</li> :type NotificationTypes: list of str :param _NotificationUserGroupIds: 通知组ID,即为用户组ID集合,用户组ID可以通过[ListGroups](https://cloud.tencent.com/document/product/598/34589)查询。 :type NotificationUserGroupIds: list of str :param _QueueName: CMQ 队列或 TDMQ CMQ 队列名。 :type QueueName: str :param _TopicName: CMQ 主题或 TDMQ CMQ 主题名。 :type TopicName: str """ self._AutoScalingNotificationId = None self._NotificationTypes = None self._NotificationUserGroupIds = None self._QueueName = None self._TopicName = None @property def AutoScalingNotificationId(self): """待修改的通知ID。 :rtype: str """ return self._AutoScalingNotificationId @AutoScalingNotificationId.setter def AutoScalingNotificationId(self, AutoScalingNotificationId): self._AutoScalingNotificationId = AutoScalingNotificationId @property def NotificationTypes(self): """通知类型,即为需要订阅的通知类型集合,取值范围如下: <li>SCALE_OUT_SUCCESSFUL:扩容成功</li> <li>SCALE_OUT_FAILED:扩容失败</li> <li>SCALE_IN_SUCCESSFUL:缩容成功</li> <li>SCALE_IN_FAILED:缩容失败</li> <li>REPLACE_UNHEALTHY_INSTANCE_SUCCESSFUL:替换不健康子机成功</li> <li>REPLACE_UNHEALTHY_INSTANCE_FAILED:替换不健康子机失败</li> :rtype: list of str """ return self._NotificationTypes @NotificationTypes.setter def NotificationTypes(self, NotificationTypes): self._NotificationTypes = NotificationTypes @property def NotificationUserGroupIds(self): """通知组ID,即为用户组ID集合,用户组ID可以通过[ListGroups](https://cloud.tencent.com/document/product/598/34589)查询。 :rtype: list of str """ return self._NotificationUserGroupIds @NotificationUserGroupIds.setter def NotificationUserGroupIds(self, NotificationUserGroupIds): self._NotificationUserGroupIds = NotificationUserGroupIds @property def QueueName(self): """CMQ 队列或 TDMQ CMQ 队列名。 :rtype: str """ return self._QueueName @QueueName.setter def QueueName(self, QueueName): self._QueueName = QueueName @property def TopicName(self): """CMQ 主题或 TDMQ CMQ 主题名。 :rtype: str """ return self._TopicName @TopicName.setter def TopicName(self, TopicName): self._TopicName = TopicName def _deserialize(self, params): self._AutoScalingNotificationId = params.get("AutoScalingNotificationId") self._NotificationTypes = params.get("NotificationTypes") self._NotificationUserGroupIds = params.get("NotificationUserGroupIds") self._QueueName = params.get("QueueName") self._TopicName = params.get("TopicName") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifyNotificationConfigurationResponse(AbstractModel): """ModifyNotificationConfiguration返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class ModifyScalingPolicyRequest(AbstractModel): """ModifyScalingPolicy请求参数结构体 """ def __init__(self): r""" :param _AutoScalingPolicyId: 告警策略ID。 :type AutoScalingPolicyId: str :param _ScalingPolicyName: 告警策略名称。 :type ScalingPolicyName: str :param _AdjustmentType: 告警触发后,期望实例数修改方式,仅适用于简单策略。取值范围:<br><li>CHANGE_IN_CAPACITY:增加或减少若干期望实例数</li><li>EXACT_CAPACITY:调整至指定期望实例数</li> <li>PERCENT_CHANGE_IN_CAPACITY:按百分比调整期望实例数</li> :type AdjustmentType: str :param _AdjustmentValue: 告警触发后,期望实例数的调整值,仅适用于简单策略。<li>当 AdjustmentType 为 CHANGE_IN_CAPACITY 时,AdjustmentValue 为正数表示告警触发后增加实例,为负数表示告警触发后减少实例 </li> <li> 当 AdjustmentType 为 EXACT_CAPACITY 时,AdjustmentValue 的值即为告警触发后新的期望实例数,需要大于或等于0 </li> <li> 当 AdjustmentType 为 PERCENT_CHANGE_IN_CAPACITY 时,AdjusmentValue 为正数表示告警触发后按百分比增加实例,为负数表示告警触发后按百分比减少实例,单位是:%。</li> :type AdjustmentValue: int :param _Cooldown: 冷却时间,仅适用于简单策略,单位为秒。 :type Cooldown: int :param _MetricAlarm: 告警监控指标,仅适用于简单策略。 :type MetricAlarm: :class:`tencentcloud.autoscaling.v20180419.models.MetricAlarm` :param _PredefinedMetricType: 预定义监控项,仅适用于目标追踪策略。取值范围:<br><li>ASG_AVG_CPU_UTILIZATION:平均CPU使用率</li><li>ASG_AVG_LAN_TRAFFIC_OUT:平均内网出带宽</li><li>ASG_AVG_LAN_TRAFFIC_IN:平均内网入带宽</li><li>ASG_AVG_WAN_TRAFFIC_OUT:平均外网出带宽</li><li>ASG_AVG_WAN_TRAFFIC_IN:平均外网出带宽</li> :type PredefinedMetricType: str :param _TargetValue: 目标值,仅适用于目标追踪策略。<br><li>ASG_AVG_CPU_UTILIZATION:[1, 100),单位:%</li><li>ASG_AVG_LAN_TRAFFIC_OUT:>0,单位:Mbps</li><li>ASG_AVG_LAN_TRAFFIC_IN:>0,单位:Mbps</li><li>ASG_AVG_WAN_TRAFFIC_OUT:>0,单位:Mbps</li><li>ASG_AVG_WAN_TRAFFIC_IN:>0,单位:Mbps</li> :type TargetValue: int :param _EstimatedInstanceWarmup: 实例预热时间,单位为秒,仅适用于目标追踪策略。取值范围为0-3600。 :type EstimatedInstanceWarmup: int :param _DisableScaleIn: 是否禁用缩容,仅适用于目标追踪策略。取值范围:<br><li>true:目标追踪策略仅触发扩容</li><li>false:目标追踪策略触发扩容和缩容</li> :type DisableScaleIn: bool :param _NotificationUserGroupIds: 此参数已不再生效,请使用[创建通知](https://cloud.tencent.com/document/api/377/33185)。 通知组ID,即为用户组ID集合。 :type NotificationUserGroupIds: list of str """ self._AutoScalingPolicyId = None self._ScalingPolicyName = None self._AdjustmentType = None self._AdjustmentValue = None self._Cooldown = None self._MetricAlarm = None self._PredefinedMetricType = None self._TargetValue = None self._EstimatedInstanceWarmup = None self._DisableScaleIn = None self._NotificationUserGroupIds = None @property def AutoScalingPolicyId(self): """告警策略ID。 :rtype: str """ return self._AutoScalingPolicyId @AutoScalingPolicyId.setter def AutoScalingPolicyId(self, AutoScalingPolicyId): self._AutoScalingPolicyId = AutoScalingPolicyId @property def ScalingPolicyName(self): """告警策略名称。 :rtype: str """ return self._ScalingPolicyName @ScalingPolicyName.setter def ScalingPolicyName(self, ScalingPolicyName): self._ScalingPolicyName = ScalingPolicyName @property def AdjustmentType(self): """告警触发后,期望实例数修改方式,仅适用于简单策略。取值范围:<br><li>CHANGE_IN_CAPACITY:增加或减少若干期望实例数</li><li>EXACT_CAPACITY:调整至指定期望实例数</li> <li>PERCENT_CHANGE_IN_CAPACITY:按百分比调整期望实例数</li> :rtype: str """ return self._AdjustmentType @AdjustmentType.setter def AdjustmentType(self, AdjustmentType): self._AdjustmentType = AdjustmentType @property def AdjustmentValue(self): """告警触发后,期望实例数的调整值,仅适用于简单策略。<li>当 AdjustmentType 为 CHANGE_IN_CAPACITY 时,AdjustmentValue 为正数表示告警触发后增加实例,为负数表示告警触发后减少实例 </li> <li> 当 AdjustmentType 为 EXACT_CAPACITY 时,AdjustmentValue 的值即为告警触发后新的期望实例数,需要大于或等于0 </li> <li> 当 AdjustmentType 为 PERCENT_CHANGE_IN_CAPACITY 时,AdjusmentValue 为正数表示告警触发后按百分比增加实例,为负数表示告警触发后按百分比减少实例,单位是:%。</li> :rtype: int """ return self._AdjustmentValue @AdjustmentValue.setter def AdjustmentValue(self, AdjustmentValue): self._AdjustmentValue = AdjustmentValue @property def Cooldown(self): """冷却时间,仅适用于简单策略,单位为秒。 :rtype: int """ return self._Cooldown @Cooldown.setter def Cooldown(self, Cooldown): self._Cooldown = Cooldown @property def MetricAlarm(self): """告警监控指标,仅适用于简单策略。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.MetricAlarm` """ return self._MetricAlarm @MetricAlarm.setter def MetricAlarm(self, MetricAlarm): self._MetricAlarm = MetricAlarm @property def PredefinedMetricType(self): """预定义监控项,仅适用于目标追踪策略。取值范围:<br><li>ASG_AVG_CPU_UTILIZATION:平均CPU使用率</li><li>ASG_AVG_LAN_TRAFFIC_OUT:平均内网出带宽</li><li>ASG_AVG_LAN_TRAFFIC_IN:平均内网入带宽</li><li>ASG_AVG_WAN_TRAFFIC_OUT:平均外网出带宽</li><li>ASG_AVG_WAN_TRAFFIC_IN:平均外网出带宽</li> :rtype: str """ return self._PredefinedMetricType @PredefinedMetricType.setter def PredefinedMetricType(self, PredefinedMetricType): self._PredefinedMetricType = PredefinedMetricType @property def TargetValue(self): """目标值,仅适用于目标追踪策略。<br><li>ASG_AVG_CPU_UTILIZATION:[1, 100),单位:%</li><li>ASG_AVG_LAN_TRAFFIC_OUT:>0,单位:Mbps</li><li>ASG_AVG_LAN_TRAFFIC_IN:>0,单位:Mbps</li><li>ASG_AVG_WAN_TRAFFIC_OUT:>0,单位:Mbps</li><li>ASG_AVG_WAN_TRAFFIC_IN:>0,单位:Mbps</li> :rtype: int """ return self._TargetValue @TargetValue.setter def TargetValue(self, TargetValue): self._TargetValue = TargetValue @property def EstimatedInstanceWarmup(self): """实例预热时间,单位为秒,仅适用于目标追踪策略。取值范围为0-3600。 :rtype: int """ return self._EstimatedInstanceWarmup @EstimatedInstanceWarmup.setter def EstimatedInstanceWarmup(self, EstimatedInstanceWarmup): self._EstimatedInstanceWarmup = EstimatedInstanceWarmup @property def DisableScaleIn(self): """是否禁用缩容,仅适用于目标追踪策略。取值范围:<br><li>true:目标追踪策略仅触发扩容</li><li>false:目标追踪策略触发扩容和缩容</li> :rtype: bool """ return self._DisableScaleIn @DisableScaleIn.setter def DisableScaleIn(self, DisableScaleIn): self._DisableScaleIn = DisableScaleIn @property def NotificationUserGroupIds(self): """此参数已不再生效,请使用[创建通知](https://cloud.tencent.com/document/api/377/33185)。 通知组ID,即为用户组ID集合。 :rtype: list of str """ return self._NotificationUserGroupIds @NotificationUserGroupIds.setter def NotificationUserGroupIds(self, NotificationUserGroupIds): self._NotificationUserGroupIds = NotificationUserGroupIds def _deserialize(self, params): self._AutoScalingPolicyId = params.get("AutoScalingPolicyId") self._ScalingPolicyName = params.get("ScalingPolicyName") self._AdjustmentType = params.get("AdjustmentType") self._AdjustmentValue = params.get("AdjustmentValue") self._Cooldown = params.get("Cooldown") if params.get("MetricAlarm") is not None: self._MetricAlarm = MetricAlarm() self._MetricAlarm._deserialize(params.get("MetricAlarm")) self._PredefinedMetricType = params.get("PredefinedMetricType") self._TargetValue = params.get("TargetValue") self._EstimatedInstanceWarmup = params.get("EstimatedInstanceWarmup") self._DisableScaleIn = params.get("DisableScaleIn") self._NotificationUserGroupIds = params.get("NotificationUserGroupIds") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifyScalingPolicyResponse(AbstractModel): """ModifyScalingPolicy返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class ModifyScheduledActionRequest(AbstractModel): """ModifyScheduledAction请求参数结构体 """ def __init__(self): r""" :param _ScheduledActionId: 待修改的定时任务ID :type ScheduledActionId: str :param _ScheduledActionName: 定时任务名称。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超60个字节。同一伸缩组下必须唯一。 :type ScheduledActionName: str :param _MaxSize: 当定时任务触发时,设置的伸缩组最大实例数。 :type MaxSize: int :param _MinSize: 当定时任务触发时,设置的伸缩组最小实例数。 :type MinSize: int :param _DesiredCapacity: 当定时任务触发时,设置的伸缩组期望实例数。 :type DesiredCapacity: int :param _StartTime: 定时任务的首次触发时间,取值为`北京时间`(UTC+8),按照`ISO8601`标准,格式:`YYYY-MM-DDThh:mm:ss+08:00`。 :type StartTime: str :param _EndTime: 定时任务的结束时间,取值为`北京时间`(UTC+8),按照`ISO8601`标准,格式:`YYYY-MM-DDThh:mm:ss+08:00`。<br>此参数与`Recurrence`需要同时指定,到达结束时间之后,定时任务将不再生效。 :type EndTime: str :param _Recurrence: 定时任务的重复方式。为标准 Cron 格式<br>此参数与`EndTime`需要同时指定。 :type Recurrence: str """ self._ScheduledActionId = None self._ScheduledActionName = None self._MaxSize = None self._MinSize = None self._DesiredCapacity = None self._StartTime = None self._EndTime = None self._Recurrence = None @property def ScheduledActionId(self): """待修改的定时任务ID :rtype: str """ return self._ScheduledActionId @ScheduledActionId.setter def ScheduledActionId(self, ScheduledActionId): self._ScheduledActionId = ScheduledActionId @property def ScheduledActionName(self): """定时任务名称。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超60个字节。同一伸缩组下必须唯一。 :rtype: str """ return self._ScheduledActionName @ScheduledActionName.setter def ScheduledActionName(self, ScheduledActionName): self._ScheduledActionName = ScheduledActionName @property def MaxSize(self): """当定时任务触发时,设置的伸缩组最大实例数。 :rtype: int """ return self._MaxSize @MaxSize.setter def MaxSize(self, MaxSize): self._MaxSize = MaxSize @property def MinSize(self): """当定时任务触发时,设置的伸缩组最小实例数。 :rtype: int """ return self._MinSize @MinSize.setter def MinSize(self, MinSize): self._MinSize = MinSize @property def DesiredCapacity(self): """当定时任务触发时,设置的伸缩组期望实例数。 :rtype: int """ return self._DesiredCapacity @DesiredCapacity.setter def DesiredCapacity(self, DesiredCapacity): self._DesiredCapacity = DesiredCapacity @property def StartTime(self): """定时任务的首次触发时间,取值为`北京时间`(UTC+8),按照`ISO8601`标准,格式:`YYYY-MM-DDThh:mm:ss+08:00`。 :rtype: str """ return self._StartTime @StartTime.setter def StartTime(self, StartTime): self._StartTime = StartTime @property def EndTime(self): """定时任务的结束时间,取值为`北京时间`(UTC+8),按照`ISO8601`标准,格式:`YYYY-MM-DDThh:mm:ss+08:00`。<br>此参数与`Recurrence`需要同时指定,到达结束时间之后,定时任务将不再生效。 :rtype: str """ return self._EndTime @EndTime.setter def EndTime(self, EndTime): self._EndTime = EndTime @property def Recurrence(self): """定时任务的重复方式。为标准 Cron 格式<br>此参数与`EndTime`需要同时指定。 :rtype: str """ return self._Recurrence @Recurrence.setter def Recurrence(self, Recurrence): self._Recurrence = Recurrence def _deserialize(self, params): self._ScheduledActionId = params.get("ScheduledActionId") self._ScheduledActionName = params.get("ScheduledActionName") self._MaxSize = params.get("MaxSize") self._MinSize = params.get("MinSize") self._DesiredCapacity = params.get("DesiredCapacity") self._StartTime = params.get("StartTime") self._EndTime = params.get("EndTime") self._Recurrence = params.get("Recurrence") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifyScheduledActionResponse(AbstractModel): """ModifyScheduledAction返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class NotificationTarget(AbstractModel): """通知目标 """ def __init__(self): r""" :param _TargetType: 目标类型,取值范围包括`CMQ_QUEUE`、`CMQ_TOPIC`、`TDMQ_CMQ_QUEUE`、`TDMQ_CMQ_TOPIC`。 <li> CMQ_QUEUE,指腾讯云消息队列-队列模型。</li> <li> CMQ_TOPIC,指腾讯云消息队列-主题模型。</li> <li> TDMQ_CMQ_QUEUE,指腾讯云 TDMQ 消息队列-队列模型。</li> <li> TDMQ_CMQ_TOPIC,指腾讯云 TDMQ 消息队列-主题模型。</li> :type TargetType: str :param _QueueName: 队列名称,如果`TargetType`取值为`CMQ_QUEUE` 或 `TDMQ_CMQ_QUEUE`,则本字段必填。 :type QueueName: str :param _TopicName: 主题名称,如果`TargetType`取值为`CMQ_TOPIC` 或 `TDMQ_CMQ_TOPIC`,则本字段必填。 :type TopicName: str """ self._TargetType = None self._QueueName = None self._TopicName = None @property def TargetType(self): """目标类型,取值范围包括`CMQ_QUEUE`、`CMQ_TOPIC`、`TDMQ_CMQ_QUEUE`、`TDMQ_CMQ_TOPIC`。 <li> CMQ_QUEUE,指腾讯云消息队列-队列模型。</li> <li> CMQ_TOPIC,指腾讯云消息队列-主题模型。</li> <li> TDMQ_CMQ_QUEUE,指腾讯云 TDMQ 消息队列-队列模型。</li> <li> TDMQ_CMQ_TOPIC,指腾讯云 TDMQ 消息队列-主题模型。</li> :rtype: str """ return self._TargetType @TargetType.setter def TargetType(self, TargetType): self._TargetType = TargetType @property def QueueName(self): """队列名称,如果`TargetType`取值为`CMQ_QUEUE` 或 `TDMQ_CMQ_QUEUE`,则本字段必填。 :rtype: str """ return self._QueueName @QueueName.setter def QueueName(self, QueueName): self._QueueName = QueueName @property def TopicName(self): """主题名称,如果`TargetType`取值为`CMQ_TOPIC` 或 `TDMQ_CMQ_TOPIC`,则本字段必填。 :rtype: str """ return self._TopicName @TopicName.setter def TopicName(self, TopicName): self._TopicName = TopicName def _deserialize(self, params): self._TargetType = params.get("TargetType") self._QueueName = params.get("QueueName") self._TopicName = params.get("TopicName") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class RefreshActivity(AbstractModel): """实例刷新活动。 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组 ID。 :type AutoScalingGroupId: str :param _RefreshActivityId: 刷新活动 ID。 :type RefreshActivityId: str :param _OriginRefreshActivityId: 原始刷新活动ID,仅在回滚刷新活动中存在。 注意:此字段可能返回 null,表示取不到有效值。 :type OriginRefreshActivityId: str :param _RefreshBatchSet: 刷新批次信息列表。 :type RefreshBatchSet: list of RefreshBatch :param _RefreshMode: 刷新模式。 :type RefreshMode: str :param _RefreshSettings: 实例更新设置参数。 :type RefreshSettings: :class:`tencentcloud.autoscaling.v20180419.models.RefreshSettings` :param _ActivityType: 刷新活动类型。取值如下: <li>NORMAL:正常刷新活动</li> <li>ROLLBACK:回滚刷新活动</li> :type ActivityType: str :param _Status: 刷新活动状态。取值如下: <li>INIT:初始化中</li> <li>RUNNING:运行中</li> <li>SUCCESSFUL:活动成功</li> <li>FAILED_PAUSE:因刷新批次失败暂停</li> <li>AUTO_PAUSE:因暂停策略自动暂停</li> <li>MANUAL_PAUSE:手动暂停</li> <li>CANCELLED:活动取消</li> <li>FAILED:活动失败</li> :type Status: str :param _CurrentRefreshBatchNum: 当前刷新批次序号。例如,2 表示当前活动正在刷新第二批次的实例。 注意:此字段可能返回 null,表示取不到有效值。 :type CurrentRefreshBatchNum: int :param _StartTime: 刷新活动开始时间。 注意:此字段可能返回 null,表示取不到有效值。 :type StartTime: str :param _EndTime: 刷新活动结束时间。 注意:此字段可能返回 null,表示取不到有效值。 :type EndTime: str :param _CreatedTime: 刷新活动创建时间。 注意:此字段可能返回 null,表示取不到有效值。 :type CreatedTime: str """ self._AutoScalingGroupId = None self._RefreshActivityId = None self._OriginRefreshActivityId = None self._RefreshBatchSet = None self._RefreshMode = None self._RefreshSettings = None self._ActivityType = None self._Status = None self._CurrentRefreshBatchNum = None self._StartTime = None self._EndTime = None self._CreatedTime = None @property def AutoScalingGroupId(self): """伸缩组 ID。 :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def RefreshActivityId(self): """刷新活动 ID。 :rtype: str """ return self._RefreshActivityId @RefreshActivityId.setter def RefreshActivityId(self, RefreshActivityId): self._RefreshActivityId = RefreshActivityId @property def OriginRefreshActivityId(self): """原始刷新活动ID,仅在回滚刷新活动中存在。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._OriginRefreshActivityId @OriginRefreshActivityId.setter def OriginRefreshActivityId(self, OriginRefreshActivityId): self._OriginRefreshActivityId = OriginRefreshActivityId @property def RefreshBatchSet(self): """刷新批次信息列表。 :rtype: list of RefreshBatch """ return self._RefreshBatchSet @RefreshBatchSet.setter def RefreshBatchSet(self, RefreshBatchSet): self._RefreshBatchSet = RefreshBatchSet @property def RefreshMode(self): """刷新模式。 :rtype: str """ return self._RefreshMode @RefreshMode.setter def RefreshMode(self, RefreshMode): self._RefreshMode = RefreshMode @property def RefreshSettings(self): """实例更新设置参数。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.RefreshSettings` """ return self._RefreshSettings @RefreshSettings.setter def RefreshSettings(self, RefreshSettings): self._RefreshSettings = RefreshSettings @property def ActivityType(self): """刷新活动类型。取值如下: <li>NORMAL:正常刷新活动</li> <li>ROLLBACK:回滚刷新活动</li> :rtype: str """ return self._ActivityType @ActivityType.setter def ActivityType(self, ActivityType): self._ActivityType = ActivityType @property def Status(self): """刷新活动状态。取值如下: <li>INIT:初始化中</li> <li>RUNNING:运行中</li> <li>SUCCESSFUL:活动成功</li> <li>FAILED_PAUSE:因刷新批次失败暂停</li> <li>AUTO_PAUSE:因暂停策略自动暂停</li> <li>MANUAL_PAUSE:手动暂停</li> <li>CANCELLED:活动取消</li> <li>FAILED:活动失败</li> :rtype: str """ return self._Status @Status.setter def Status(self, Status): self._Status = Status @property def CurrentRefreshBatchNum(self): """当前刷新批次序号。例如,2 表示当前活动正在刷新第二批次的实例。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: int """ return self._CurrentRefreshBatchNum @CurrentRefreshBatchNum.setter def CurrentRefreshBatchNum(self, CurrentRefreshBatchNum): self._CurrentRefreshBatchNum = CurrentRefreshBatchNum @property def StartTime(self): """刷新活动开始时间。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._StartTime @StartTime.setter def StartTime(self, StartTime): self._StartTime = StartTime @property def EndTime(self): """刷新活动结束时间。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._EndTime @EndTime.setter def EndTime(self, EndTime): self._EndTime = EndTime @property def CreatedTime(self): """刷新活动创建时间。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._CreatedTime @CreatedTime.setter def CreatedTime(self, CreatedTime): self._CreatedTime = CreatedTime def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._RefreshActivityId = params.get("RefreshActivityId") self._OriginRefreshActivityId = params.get("OriginRefreshActivityId") if params.get("RefreshBatchSet") is not None: self._RefreshBatchSet = [] for item in params.get("RefreshBatchSet"): obj = RefreshBatch() obj._deserialize(item) self._RefreshBatchSet.append(obj) self._RefreshMode = params.get("RefreshMode") if params.get("RefreshSettings") is not None: self._RefreshSettings = RefreshSettings() self._RefreshSettings._deserialize(params.get("RefreshSettings")) self._ActivityType = params.get("ActivityType") self._Status = params.get("Status") self._CurrentRefreshBatchNum = params.get("CurrentRefreshBatchNum") self._StartTime = params.get("StartTime") self._EndTime = params.get("EndTime") self._CreatedTime = params.get("CreatedTime") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class RefreshBatch(AbstractModel): """实例刷新批次信息,包含该批次的刷新状态、实例、起止时间等信息。 """ def __init__(self): r""" :param _RefreshBatchNum: 刷新批次序号。例如,2 表示当前批次实例会在第二批次进行实例刷新。 :type RefreshBatchNum: int :param _RefreshBatchStatus: 刷新批次状态。取值如下:<li>WAITING:待刷新</li><li>INIT:初始化中</li><li>RUNNING:刷新中</li><li>FAILED: 刷新失败</li><li>PARTIALLY_SUCCESSFUL:批次部分成功</li><li>CANCELLED:已取消</li><li>SUCCESSFUL:刷新成功</li> :type RefreshBatchStatus: str :param _RefreshBatchRelatedInstanceSet: 刷新批次关联实例列表。 :type RefreshBatchRelatedInstanceSet: list of RefreshBatchRelatedInstance :param _StartTime: 刷新批次开始时间。 注意:此字段可能返回 null,表示取不到有效值。 :type StartTime: str :param _EndTime: 刷新批次结束时间。 注意:此字段可能返回 null,表示取不到有效值。 :type EndTime: str """ self._RefreshBatchNum = None self._RefreshBatchStatus = None self._RefreshBatchRelatedInstanceSet = None self._StartTime = None self._EndTime = None @property def RefreshBatchNum(self): """刷新批次序号。例如,2 表示当前批次实例会在第二批次进行实例刷新。 :rtype: int """ return self._RefreshBatchNum @RefreshBatchNum.setter def RefreshBatchNum(self, RefreshBatchNum): self._RefreshBatchNum = RefreshBatchNum @property def RefreshBatchStatus(self): """刷新批次状态。取值如下:<li>WAITING:待刷新</li><li>INIT:初始化中</li><li>RUNNING:刷新中</li><li>FAILED: 刷新失败</li><li>PARTIALLY_SUCCESSFUL:批次部分成功</li><li>CANCELLED:已取消</li><li>SUCCESSFUL:刷新成功</li> :rtype: str """ return self._RefreshBatchStatus @RefreshBatchStatus.setter def RefreshBatchStatus(self, RefreshBatchStatus): self._RefreshBatchStatus = RefreshBatchStatus @property def RefreshBatchRelatedInstanceSet(self): """刷新批次关联实例列表。 :rtype: list of RefreshBatchRelatedInstance """ return self._RefreshBatchRelatedInstanceSet @RefreshBatchRelatedInstanceSet.setter def RefreshBatchRelatedInstanceSet(self, RefreshBatchRelatedInstanceSet): self._RefreshBatchRelatedInstanceSet = RefreshBatchRelatedInstanceSet @property def StartTime(self): """刷新批次开始时间。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._StartTime @StartTime.setter def StartTime(self, StartTime): self._StartTime = StartTime @property def EndTime(self): """刷新批次结束时间。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._EndTime @EndTime.setter def EndTime(self, EndTime): self._EndTime = EndTime def _deserialize(self, params): self._RefreshBatchNum = params.get("RefreshBatchNum") self._RefreshBatchStatus = params.get("RefreshBatchStatus") if params.get("RefreshBatchRelatedInstanceSet") is not None: self._RefreshBatchRelatedInstanceSet = [] for item in params.get("RefreshBatchRelatedInstanceSet"): obj = RefreshBatchRelatedInstance() obj._deserialize(item) self._RefreshBatchRelatedInstanceSet.append(obj) self._StartTime = params.get("StartTime") self._EndTime = params.get("EndTime") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class RefreshBatchRelatedInstance(AbstractModel): """刷新批次关联实例,包含单个实例的刷新活动状态、对应伸缩活动等信息。 """ def __init__(self): r""" :param _InstanceId: 实例 ID。 :type InstanceId: str :param _InstanceStatus: 刷新实例状态。如果在刷新时实例被移出或销毁,状态会更新为 NOT_FOUND。取值如下:<br><li>WAITING:待刷新</li><li>INIT:初始化中</li><li>RUNNING:刷新中</li><li>FAILED:刷新失败</li><li>CANCELLED:已取消</li><li>SUCCESSFUL:刷新成功</li><li>NOT_FOUND:实例不存在 :type InstanceStatus: str :param _LastActivityId: 实例刷新中最近一次伸缩活动 ID,可通过 DescribeAutoScalingActivities 接口查询。 需注意伸缩活动与实例刷新活动不同,一次实例刷新活动可能包括多次伸缩活动。 注意:此字段可能返回 null,表示取不到有效值。 :type LastActivityId: str :param _InstanceStatusMessage: 实例刷新状态信息。 注意:此字段可能返回 null,表示取不到有效值。 :type InstanceStatusMessage: str """ self._InstanceId = None self._InstanceStatus = None self._LastActivityId = None self._InstanceStatusMessage = None @property def InstanceId(self): """实例 ID。 :rtype: str """ return self._InstanceId @InstanceId.setter def InstanceId(self, InstanceId): self._InstanceId = InstanceId @property def InstanceStatus(self): """刷新实例状态。如果在刷新时实例被移出或销毁,状态会更新为 NOT_FOUND。取值如下:<br><li>WAITING:待刷新</li><li>INIT:初始化中</li><li>RUNNING:刷新中</li><li>FAILED:刷新失败</li><li>CANCELLED:已取消</li><li>SUCCESSFUL:刷新成功</li><li>NOT_FOUND:实例不存在 :rtype: str """ return self._InstanceStatus @InstanceStatus.setter def InstanceStatus(self, InstanceStatus): self._InstanceStatus = InstanceStatus @property def LastActivityId(self): """实例刷新中最近一次伸缩活动 ID,可通过 DescribeAutoScalingActivities 接口查询。 需注意伸缩活动与实例刷新活动不同,一次实例刷新活动可能包括多次伸缩活动。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._LastActivityId @LastActivityId.setter def LastActivityId(self, LastActivityId): self._LastActivityId = LastActivityId @property def InstanceStatusMessage(self): """实例刷新状态信息。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._InstanceStatusMessage @InstanceStatusMessage.setter def InstanceStatusMessage(self, InstanceStatusMessage): self._InstanceStatusMessage = InstanceStatusMessage def _deserialize(self, params): self._InstanceId = params.get("InstanceId") self._InstanceStatus = params.get("InstanceStatus") self._LastActivityId = params.get("LastActivityId") self._InstanceStatusMessage = params.get("InstanceStatusMessage") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class RefreshSettings(AbstractModel): """实例刷新设置。 """ def __init__(self): r""" :param _RollingUpdateSettings: 滚动更新设置参数。RefreshMode 为滚动更新该参数必须填写。 注意:此字段可能返回 null,表示取不到有效值。 :type RollingUpdateSettings: :class:`tencentcloud.autoscaling.v20180419.models.RollingUpdateSettings` :param _CheckInstanceTargetHealth: 实例后端服务健康状态检查,默认为 FALSE。仅针对绑定应用型负载均衡器的伸缩组生效,开启该检查后,如刷新后实例未通过检查,负载均衡器端口权重始终为 0,且标记为刷新失败。取值范围如下:<li>TRUE:开启检查</li><li>FALSE:不开启检查</li> :type CheckInstanceTargetHealth: bool """ self._RollingUpdateSettings = None self._CheckInstanceTargetHealth = None @property def RollingUpdateSettings(self): """滚动更新设置参数。RefreshMode 为滚动更新该参数必须填写。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.RollingUpdateSettings` """ return self._RollingUpdateSettings @RollingUpdateSettings.setter def RollingUpdateSettings(self, RollingUpdateSettings): self._RollingUpdateSettings = RollingUpdateSettings @property def CheckInstanceTargetHealth(self): """实例后端服务健康状态检查,默认为 FALSE。仅针对绑定应用型负载均衡器的伸缩组生效,开启该检查后,如刷新后实例未通过检查,负载均衡器端口权重始终为 0,且标记为刷新失败。取值范围如下:<li>TRUE:开启检查</li><li>FALSE:不开启检查</li> :rtype: bool """ return self._CheckInstanceTargetHealth @CheckInstanceTargetHealth.setter def CheckInstanceTargetHealth(self, CheckInstanceTargetHealth): self._CheckInstanceTargetHealth = CheckInstanceTargetHealth def _deserialize(self, params): if params.get("RollingUpdateSettings") is not None: self._RollingUpdateSettings = RollingUpdateSettings() self._RollingUpdateSettings._deserialize(params.get("RollingUpdateSettings")) self._CheckInstanceTargetHealth = params.get("CheckInstanceTargetHealth") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class RelatedInstance(AbstractModel): """与本次伸缩活动相关的实例信息。 """ def __init__(self): r""" :param _InstanceId: 实例ID。 :type InstanceId: str :param _InstanceStatus: 实例在伸缩活动中的状态。取值如下: INIT:初始化中 RUNNING:实例操作中 SUCCESSFUL:活动成功 FAILED:活动失败 :type InstanceStatus: str """ self._InstanceId = None self._InstanceStatus = None @property def InstanceId(self): """实例ID。 :rtype: str """ return self._InstanceId @InstanceId.setter def InstanceId(self, InstanceId): self._InstanceId = InstanceId @property def InstanceStatus(self): """实例在伸缩活动中的状态。取值如下: INIT:初始化中 RUNNING:实例操作中 SUCCESSFUL:活动成功 FAILED:活动失败 :rtype: str """ return self._InstanceStatus @InstanceStatus.setter def InstanceStatus(self, InstanceStatus): self._InstanceStatus = InstanceStatus def _deserialize(self, params): self._InstanceId = params.get("InstanceId") self._InstanceStatus = params.get("InstanceStatus") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class RemoveInstancesRequest(AbstractModel): """RemoveInstances请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str :param _InstanceIds: CVM实例ID列表 :type InstanceIds: list of str """ self._AutoScalingGroupId = None self._InstanceIds = None @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def InstanceIds(self): """CVM实例ID列表 :rtype: list of str """ return self._InstanceIds @InstanceIds.setter def InstanceIds(self, InstanceIds): self._InstanceIds = InstanceIds def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._InstanceIds = params.get("InstanceIds") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class RemoveInstancesResponse(AbstractModel): """RemoveInstances返回参数结构体 """ def __init__(self): r""" :param _ActivityId: 伸缩活动ID :type ActivityId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._ActivityId = None self._RequestId = None @property def ActivityId(self): """伸缩活动ID :rtype: str """ return self._ActivityId @ActivityId.setter def ActivityId(self, ActivityId): self._ActivityId = ActivityId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._ActivityId = params.get("ActivityId") self._RequestId = params.get("RequestId") class ResumeInstanceRefreshRequest(AbstractModel): """ResumeInstanceRefresh请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID。 :type AutoScalingGroupId: str :param _RefreshActivityId: 刷新活动ID。 :type RefreshActivityId: str :param _ResumeMode: 当前批次刷新失败实例的恢复方式,如不存在失败实例,该参数无效。默认值为RETRY,取值范围如下:<li>RETRY: 重试当前批次刷新失败实例</li><li>CONTINUE: 跳过当前批次刷新失败实例</li> :type ResumeMode: str """ self._AutoScalingGroupId = None self._RefreshActivityId = None self._ResumeMode = None @property def AutoScalingGroupId(self): """伸缩组ID。 :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def RefreshActivityId(self): """刷新活动ID。 :rtype: str """ return self._RefreshActivityId @RefreshActivityId.setter def RefreshActivityId(self, RefreshActivityId): self._RefreshActivityId = RefreshActivityId @property def ResumeMode(self): """当前批次刷新失败实例的恢复方式,如不存在失败实例,该参数无效。默认值为RETRY,取值范围如下:<li>RETRY: 重试当前批次刷新失败实例</li><li>CONTINUE: 跳过当前批次刷新失败实例</li> :rtype: str """ return self._ResumeMode @ResumeMode.setter def ResumeMode(self, ResumeMode): self._ResumeMode = ResumeMode def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._RefreshActivityId = params.get("RefreshActivityId") self._ResumeMode = params.get("ResumeMode") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ResumeInstanceRefreshResponse(AbstractModel): """ResumeInstanceRefresh返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class RollbackInstanceRefreshRequest(AbstractModel): """RollbackInstanceRefresh请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID。 :type AutoScalingGroupId: str :param _RefreshSettings: 刷新设置。 :type RefreshSettings: :class:`tencentcloud.autoscaling.v20180419.models.RefreshSettings` :param _OriginRefreshActivityId: 原始刷新活动 ID。 :type OriginRefreshActivityId: str :param _RefreshMode: 刷新模式,目前仅支持滚动更新,默认值为 ROLLING_UPDATE_RESET。 :type RefreshMode: str """ self._AutoScalingGroupId = None self._RefreshSettings = None self._OriginRefreshActivityId = None self._RefreshMode = None @property def AutoScalingGroupId(self): """伸缩组ID。 :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def RefreshSettings(self): """刷新设置。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.RefreshSettings` """ return self._RefreshSettings @RefreshSettings.setter def RefreshSettings(self, RefreshSettings): self._RefreshSettings = RefreshSettings @property def OriginRefreshActivityId(self): """原始刷新活动 ID。 :rtype: str """ return self._OriginRefreshActivityId @OriginRefreshActivityId.setter def OriginRefreshActivityId(self, OriginRefreshActivityId): self._OriginRefreshActivityId = OriginRefreshActivityId @property def RefreshMode(self): """刷新模式,目前仅支持滚动更新,默认值为 ROLLING_UPDATE_RESET。 :rtype: str """ return self._RefreshMode @RefreshMode.setter def RefreshMode(self, RefreshMode): self._RefreshMode = RefreshMode def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") if params.get("RefreshSettings") is not None: self._RefreshSettings = RefreshSettings() self._RefreshSettings._deserialize(params.get("RefreshSettings")) self._OriginRefreshActivityId = params.get("OriginRefreshActivityId") self._RefreshMode = params.get("RefreshMode") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class RollbackInstanceRefreshResponse(AbstractModel): """RollbackInstanceRefresh返回参数结构体 """ def __init__(self): r""" :param _RefreshActivityId: 刷新活动 ID。 :type RefreshActivityId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RefreshActivityId = None self._RequestId = None @property def RefreshActivityId(self): """刷新活动 ID。 :rtype: str """ return self._RefreshActivityId @RefreshActivityId.setter def RefreshActivityId(self, RefreshActivityId): self._RefreshActivityId = RefreshActivityId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RefreshActivityId = params.get("RefreshActivityId") self._RequestId = params.get("RequestId") class RollingUpdateSettings(AbstractModel): """滚动更新设置。 """ def __init__(self): r""" :param _BatchNumber: 批次数量。批次数量为大于 0 的正整数,但不能大于待刷新实例数量。 :type BatchNumber: int :param _BatchPause: 批次间暂停策略。默认值为 Automatic,取值范围如下: <li>FIRST_BATCH_PAUSE:第一批次更新完成后暂停</li> <li>BATCH_INTERVAL_PAUSE:批次间暂停</li> <li>AUTOMATIC:不暂停</li> :type BatchPause: str :param _MaxSurge: 最大额外数量。设置该参数后,在滚动更新开始前根据启动配置创建一批按量计费的额外实例,滚动更新完成后销毁额外实例。 该参数用于保证滚动更新过程中可用实例的数量,最大额外数量不能超过滚动更新单个批次的刷新实例数。回滚流程暂不支持该参数。 :type MaxSurge: int :param _FailProcess: 失败处理策略。默认值为 AUTO_PAUSE,取值范围如下: <li>AUTO_PAUSE:刷新失败后暂停</li> <li>AUTO_ROLLBACK:刷新失败后回滚。回滚时每批次回滚一台实例,CheckInstanceTargetHealth 参数值与原刷新活动一致。MaxSurge参数引入的扩缩容流程失败无需回滚,会用取消动作代替回滚</li> <li>AUTO_CANCEL:刷新失败后取消</li> :type FailProcess: str """ self._BatchNumber = None self._BatchPause = None self._MaxSurge = None self._FailProcess = None @property def BatchNumber(self): """批次数量。批次数量为大于 0 的正整数,但不能大于待刷新实例数量。 :rtype: int """ return self._BatchNumber @BatchNumber.setter def BatchNumber(self, BatchNumber): self._BatchNumber = BatchNumber @property def BatchPause(self): """批次间暂停策略。默认值为 Automatic,取值范围如下: <li>FIRST_BATCH_PAUSE:第一批次更新完成后暂停</li> <li>BATCH_INTERVAL_PAUSE:批次间暂停</li> <li>AUTOMATIC:不暂停</li> :rtype: str """ return self._BatchPause @BatchPause.setter def BatchPause(self, BatchPause): self._BatchPause = BatchPause @property def MaxSurge(self): """最大额外数量。设置该参数后,在滚动更新开始前根据启动配置创建一批按量计费的额外实例,滚动更新完成后销毁额外实例。 该参数用于保证滚动更新过程中可用实例的数量,最大额外数量不能超过滚动更新单个批次的刷新实例数。回滚流程暂不支持该参数。 :rtype: int """ return self._MaxSurge @MaxSurge.setter def MaxSurge(self, MaxSurge): self._MaxSurge = MaxSurge @property def FailProcess(self): """失败处理策略。默认值为 AUTO_PAUSE,取值范围如下: <li>AUTO_PAUSE:刷新失败后暂停</li> <li>AUTO_ROLLBACK:刷新失败后回滚。回滚时每批次回滚一台实例,CheckInstanceTargetHealth 参数值与原刷新活动一致。MaxSurge参数引入的扩缩容流程失败无需回滚,会用取消动作代替回滚</li> <li>AUTO_CANCEL:刷新失败后取消</li> :rtype: str """ return self._FailProcess @FailProcess.setter def FailProcess(self, FailProcess): self._FailProcess = FailProcess def _deserialize(self, params): self._BatchNumber = params.get("BatchNumber") self._BatchPause = params.get("BatchPause") self._MaxSurge = params.get("MaxSurge") self._FailProcess = params.get("FailProcess") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class RunAutomationServiceEnabled(AbstractModel): """描述了 “自动化助手” 服务相关的信息 """ def __init__(self): r""" :param _Enabled: 是否开启[自动化助手](https://cloud.tencent.com/document/product/1340)服务。取值范围:<br><li>TRUE:表示开启自动化助手服务<br><li>FALSE:表示不开启自动化助手服务 注意:此字段可能返回 null,表示取不到有效值。 :type Enabled: bool """ self._Enabled = None @property def Enabled(self): """是否开启[自动化助手](https://cloud.tencent.com/document/product/1340)服务。取值范围:<br><li>TRUE:表示开启自动化助手服务<br><li>FALSE:表示不开启自动化助手服务 注意:此字段可能返回 null,表示取不到有效值。 :rtype: bool """ return self._Enabled @Enabled.setter def Enabled(self, Enabled): self._Enabled = Enabled def _deserialize(self, params): self._Enabled = params.get("Enabled") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class RunMonitorServiceEnabled(AbstractModel): """描述了 “可观测平台(原名云监控)” 服务相关的信息。 """ def __init__(self): r""" :param _Enabled: 是否开启[可观测平台(原名云监控)](https://cloud.tencent.com/document/product/248)服务。取值范围: <li>TRUE:表示开启云监控服务</li> <li>FALSE:表示不开启云监控服务</li> 默认取值:TRUE。 注意:此字段可能返回 null,表示取不到有效值。 :type Enabled: bool """ self._Enabled = None @property def Enabled(self): """是否开启[可观测平台(原名云监控)](https://cloud.tencent.com/document/product/248)服务。取值范围: <li>TRUE:表示开启云监控服务</li> <li>FALSE:表示不开启云监控服务</li> 默认取值:TRUE。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: bool """ return self._Enabled @Enabled.setter def Enabled(self, Enabled): self._Enabled = Enabled def _deserialize(self, params): self._Enabled = params.get("Enabled") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class RunSecurityServiceEnabled(AbstractModel): """描述了 “云安全” 服务相关的信息 """ def __init__(self): r""" :param _Enabled: 是否开启[云安全](https://cloud.tencent.com/document/product/296)服务。取值范围: <li>TRUE:表示开启云安全服务</li> <li>FALSE:表示不开启云安全服务</li> 默认取值:TRUE。 注意:此字段可能返回 null,表示取不到有效值。 :type Enabled: bool """ self._Enabled = None @property def Enabled(self): """是否开启[云安全](https://cloud.tencent.com/document/product/296)服务。取值范围: <li>TRUE:表示开启云安全服务</li> <li>FALSE:表示不开启云安全服务</li> 默认取值:TRUE。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: bool """ return self._Enabled @Enabled.setter def Enabled(self, Enabled): self._Enabled = Enabled def _deserialize(self, params): self._Enabled = params.get("Enabled") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ScaleInInstancesRequest(AbstractModel): """ScaleInInstances请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID。 :type AutoScalingGroupId: str :param _ScaleInNumber: 希望缩容的实例数量。 :type ScaleInNumber: int """ self._AutoScalingGroupId = None self._ScaleInNumber = None @property def AutoScalingGroupId(self): """伸缩组ID。 :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def ScaleInNumber(self): """希望缩容的实例数量。 :rtype: int """ return self._ScaleInNumber @ScaleInNumber.setter def ScaleInNumber(self, ScaleInNumber): self._ScaleInNumber = ScaleInNumber def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._ScaleInNumber = params.get("ScaleInNumber") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ScaleInInstancesResponse(AbstractModel): """ScaleInInstances返回参数结构体 """ def __init__(self): r""" :param _ActivityId: 伸缩活动ID。 :type ActivityId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._ActivityId = None self._RequestId = None @property def ActivityId(self): """伸缩活动ID。 :rtype: str """ return self._ActivityId @ActivityId.setter def ActivityId(self, ActivityId): self._ActivityId = ActivityId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._ActivityId = params.get("ActivityId") self._RequestId = params.get("RequestId") class ScaleOutInstancesRequest(AbstractModel): """ScaleOutInstances请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID。 :type AutoScalingGroupId: str :param _ScaleOutNumber: 希望扩容的实例数量。 :type ScaleOutNumber: int """ self._AutoScalingGroupId = None self._ScaleOutNumber = None @property def AutoScalingGroupId(self): """伸缩组ID。 :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def ScaleOutNumber(self): """希望扩容的实例数量。 :rtype: int """ return self._ScaleOutNumber @ScaleOutNumber.setter def ScaleOutNumber(self, ScaleOutNumber): self._ScaleOutNumber = ScaleOutNumber def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._ScaleOutNumber = params.get("ScaleOutNumber") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ScaleOutInstancesResponse(AbstractModel): """ScaleOutInstances返回参数结构体 """ def __init__(self): r""" :param _ActivityId: 伸缩活动ID。 :type ActivityId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._ActivityId = None self._RequestId = None @property def ActivityId(self): """伸缩活动ID。 :rtype: str """ return self._ActivityId @ActivityId.setter def ActivityId(self, ActivityId): self._ActivityId = ActivityId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._ActivityId = params.get("ActivityId") self._RequestId = params.get("RequestId") class ScalingPolicy(AbstractModel): """告警触发策略。 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID。 :type AutoScalingGroupId: str :param _AutoScalingPolicyId: 告警触发策略ID。 :type AutoScalingPolicyId: str :param _ScalingPolicyType: 告警触发策略类型。取值: - SIMPLE:简单策略 - TARGET_TRACKING:目标追踪策略 :type ScalingPolicyType: str :param _ScalingPolicyName: 告警触发策略名称。 :type ScalingPolicyName: str :param _AdjustmentType: 告警触发后,期望实例数修改方式,仅适用于简单策略。取值范围:<br><li>CHANGE_IN_CAPACITY:增加或减少若干期望实例数</li><li>EXACT_CAPACITY:调整至指定期望实例数</li> <li>PERCENT_CHANGE_IN_CAPACITY:按百分比调整期望实例数</li> :type AdjustmentType: str :param _AdjustmentValue: 告警触发后,期望实例数的调整值,仅适用于简单策略。 :type AdjustmentValue: int :param _Cooldown: 冷却时间,仅适用于简单策略。 :type Cooldown: int :param _MetricAlarm: 简单告警触发策略告警监控指标,仅适用于简单策略。 :type MetricAlarm: :class:`tencentcloud.autoscaling.v20180419.models.MetricAlarm` :param _PredefinedMetricType: 预定义监控项,仅适用于目标追踪策略。取值范围:<br><li>ASG_AVG_CPU_UTILIZATION:平均CPU使用率</li><li>ASG_AVG_LAN_TRAFFIC_OUT:平均内网出带宽</li><li>ASG_AVG_LAN_TRAFFIC_IN:平均内网入带宽</li><li>ASG_AVG_WAN_TRAFFIC_OUT:平均外网出带宽</li><li>ASG_AVG_WAN_TRAFFIC_IN:平均外网出带宽</li> 注意:此字段可能返回 null,表示取不到有效值。 :type PredefinedMetricType: str :param _TargetValue: 目标值,仅适用于目标追踪策略。<br><li>ASG_AVG_CPU_UTILIZATION:[1, 100),单位:%</li><li>ASG_AVG_LAN_TRAFFIC_OUT:>0,单位:Mbps</li><li>ASG_AVG_LAN_TRAFFIC_IN:>0,单位:Mbps</li><li>ASG_AVG_WAN_TRAFFIC_OUT:>0,单位:Mbps</li><li>ASG_AVG_WAN_TRAFFIC_IN:>0,单位:Mbps</li> 注意:此字段可能返回 null,表示取不到有效值。 :type TargetValue: int :param _EstimatedInstanceWarmup: 实例预热时间,单位为秒,仅适用于目标追踪策略。取值范围为0-3600。 注意:此字段可能返回 null,表示取不到有效值。 :type EstimatedInstanceWarmup: int :param _DisableScaleIn: 是否禁用缩容,仅适用于目标追踪策略。取值范围:<br><li>true:目标追踪策略仅触发扩容</li><li>false:目标追踪策略触发扩容和缩容</li> 注意:此字段可能返回 null,表示取不到有效值。 :type DisableScaleIn: bool :param _MetricAlarms: 告警监控指标列表,仅适用于目标追踪策略。 注意:此字段可能返回 null,表示取不到有效值。 :type MetricAlarms: list of MetricAlarm :param _NotificationUserGroupIds: 通知组ID,即为用户组ID集合。 :type NotificationUserGroupIds: list of str """ self._AutoScalingGroupId = None self._AutoScalingPolicyId = None self._ScalingPolicyType = None self._ScalingPolicyName = None self._AdjustmentType = None self._AdjustmentValue = None self._Cooldown = None self._MetricAlarm = None self._PredefinedMetricType = None self._TargetValue = None self._EstimatedInstanceWarmup = None self._DisableScaleIn = None self._MetricAlarms = None self._NotificationUserGroupIds = None @property def AutoScalingGroupId(self): """伸缩组ID。 :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def AutoScalingPolicyId(self): """告警触发策略ID。 :rtype: str """ return self._AutoScalingPolicyId @AutoScalingPolicyId.setter def AutoScalingPolicyId(self, AutoScalingPolicyId): self._AutoScalingPolicyId = AutoScalingPolicyId @property def ScalingPolicyType(self): """告警触发策略类型。取值: - SIMPLE:简单策略 - TARGET_TRACKING:目标追踪策略 :rtype: str """ return self._ScalingPolicyType @ScalingPolicyType.setter def ScalingPolicyType(self, ScalingPolicyType): self._ScalingPolicyType = ScalingPolicyType @property def ScalingPolicyName(self): """告警触发策略名称。 :rtype: str """ return self._ScalingPolicyName @ScalingPolicyName.setter def ScalingPolicyName(self, ScalingPolicyName): self._ScalingPolicyName = ScalingPolicyName @property def AdjustmentType(self): """告警触发后,期望实例数修改方式,仅适用于简单策略。取值范围:<br><li>CHANGE_IN_CAPACITY:增加或减少若干期望实例数</li><li>EXACT_CAPACITY:调整至指定期望实例数</li> <li>PERCENT_CHANGE_IN_CAPACITY:按百分比调整期望实例数</li> :rtype: str """ return self._AdjustmentType @AdjustmentType.setter def AdjustmentType(self, AdjustmentType): self._AdjustmentType = AdjustmentType @property def AdjustmentValue(self): """告警触发后,期望实例数的调整值,仅适用于简单策略。 :rtype: int """ return self._AdjustmentValue @AdjustmentValue.setter def AdjustmentValue(self, AdjustmentValue): self._AdjustmentValue = AdjustmentValue @property def Cooldown(self): """冷却时间,仅适用于简单策略。 :rtype: int """ return self._Cooldown @Cooldown.setter def Cooldown(self, Cooldown): self._Cooldown = Cooldown @property def MetricAlarm(self): """简单告警触发策略告警监控指标,仅适用于简单策略。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.MetricAlarm` """ return self._MetricAlarm @MetricAlarm.setter def MetricAlarm(self, MetricAlarm): self._MetricAlarm = MetricAlarm @property def PredefinedMetricType(self): """预定义监控项,仅适用于目标追踪策略。取值范围:<br><li>ASG_AVG_CPU_UTILIZATION:平均CPU使用率</li><li>ASG_AVG_LAN_TRAFFIC_OUT:平均内网出带宽</li><li>ASG_AVG_LAN_TRAFFIC_IN:平均内网入带宽</li><li>ASG_AVG_WAN_TRAFFIC_OUT:平均外网出带宽</li><li>ASG_AVG_WAN_TRAFFIC_IN:平均外网出带宽</li> 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._PredefinedMetricType @PredefinedMetricType.setter def PredefinedMetricType(self, PredefinedMetricType): self._PredefinedMetricType = PredefinedMetricType @property def TargetValue(self): """目标值,仅适用于目标追踪策略。<br><li>ASG_AVG_CPU_UTILIZATION:[1, 100),单位:%</li><li>ASG_AVG_LAN_TRAFFIC_OUT:>0,单位:Mbps</li><li>ASG_AVG_LAN_TRAFFIC_IN:>0,单位:Mbps</li><li>ASG_AVG_WAN_TRAFFIC_OUT:>0,单位:Mbps</li><li>ASG_AVG_WAN_TRAFFIC_IN:>0,单位:Mbps</li> 注意:此字段可能返回 null,表示取不到有效值。 :rtype: int """ return self._TargetValue @TargetValue.setter def TargetValue(self, TargetValue): self._TargetValue = TargetValue @property def EstimatedInstanceWarmup(self): """实例预热时间,单位为秒,仅适用于目标追踪策略。取值范围为0-3600。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: int """ return self._EstimatedInstanceWarmup @EstimatedInstanceWarmup.setter def EstimatedInstanceWarmup(self, EstimatedInstanceWarmup): self._EstimatedInstanceWarmup = EstimatedInstanceWarmup @property def DisableScaleIn(self): """是否禁用缩容,仅适用于目标追踪策略。取值范围:<br><li>true:目标追踪策略仅触发扩容</li><li>false:目标追踪策略触发扩容和缩容</li> 注意:此字段可能返回 null,表示取不到有效值。 :rtype: bool """ return self._DisableScaleIn @DisableScaleIn.setter def DisableScaleIn(self, DisableScaleIn): self._DisableScaleIn = DisableScaleIn @property def MetricAlarms(self): """告警监控指标列表,仅适用于目标追踪策略。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: list of MetricAlarm """ return self._MetricAlarms @MetricAlarms.setter def MetricAlarms(self, MetricAlarms): self._MetricAlarms = MetricAlarms @property def NotificationUserGroupIds(self): """通知组ID,即为用户组ID集合。 :rtype: list of str """ return self._NotificationUserGroupIds @NotificationUserGroupIds.setter def NotificationUserGroupIds(self, NotificationUserGroupIds): self._NotificationUserGroupIds = NotificationUserGroupIds def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._AutoScalingPolicyId = params.get("AutoScalingPolicyId") self._ScalingPolicyType = params.get("ScalingPolicyType") self._ScalingPolicyName = params.get("ScalingPolicyName") self._AdjustmentType = params.get("AdjustmentType") self._AdjustmentValue = params.get("AdjustmentValue") self._Cooldown = params.get("Cooldown") if params.get("MetricAlarm") is not None: self._MetricAlarm = MetricAlarm() self._MetricAlarm._deserialize(params.get("MetricAlarm")) self._PredefinedMetricType = params.get("PredefinedMetricType") self._TargetValue = params.get("TargetValue") self._EstimatedInstanceWarmup = params.get("EstimatedInstanceWarmup") self._DisableScaleIn = params.get("DisableScaleIn") if params.get("MetricAlarms") is not None: self._MetricAlarms = [] for item in params.get("MetricAlarms"): obj = MetricAlarm() obj._deserialize(item) self._MetricAlarms.append(obj) self._NotificationUserGroupIds = params.get("NotificationUserGroupIds") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ScheduledAction(AbstractModel): """描述定时任务的信息 """ def __init__(self): r""" :param _ScheduledActionId: 定时任务ID。 :type ScheduledActionId: str :param _ScheduledActionName: 定时任务名称。 :type ScheduledActionName: str :param _AutoScalingGroupId: 定时任务所在伸缩组ID。 :type AutoScalingGroupId: str :param _StartTime: 定时任务的开始时间。取值为`北京时间`(UTC+8),按照`ISO8601`标准,格式:`YYYY-MM-DDThh:mm:ss+08:00`。 :type StartTime: str :param _Recurrence: 定时任务的重复方式。 :type Recurrence: str :param _EndTime: 定时任务的结束时间。取值为`北京时间`(UTC+8),按照`ISO8601`标准,格式:`YYYY-MM-DDThh:mm:ss+08:00`。 :type EndTime: str :param _MaxSize: 定时任务设置的最大实例数。 :type MaxSize: int :param _DesiredCapacity: 定时任务设置的期望实例数。 :type DesiredCapacity: int :param _MinSize: 定时任务设置的最小实例数。 :type MinSize: int :param _CreatedTime: 定时任务的创建时间。取值为`UTC`时间,按照`ISO8601`标准,格式:`YYYY-MM-DDThh:mm:ssZ`。 :type CreatedTime: str :param _ScheduledType: 定时任务的执行类型。取值范围: <li>CRONTAB:代表定时任务为重复执行。</li> <li>ONCE:代表定时任务为单次执行。</li> :type ScheduledType: str """ self._ScheduledActionId = None self._ScheduledActionName = None self._AutoScalingGroupId = None self._StartTime = None self._Recurrence = None self._EndTime = None self._MaxSize = None self._DesiredCapacity = None self._MinSize = None self._CreatedTime = None self._ScheduledType = None @property def ScheduledActionId(self): """定时任务ID。 :rtype: str """ return self._ScheduledActionId @ScheduledActionId.setter def ScheduledActionId(self, ScheduledActionId): self._ScheduledActionId = ScheduledActionId @property def ScheduledActionName(self): """定时任务名称。 :rtype: str """ return self._ScheduledActionName @ScheduledActionName.setter def ScheduledActionName(self, ScheduledActionName): self._ScheduledActionName = ScheduledActionName @property def AutoScalingGroupId(self): """定时任务所在伸缩组ID。 :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def StartTime(self): """定时任务的开始时间。取值为`北京时间`(UTC+8),按照`ISO8601`标准,格式:`YYYY-MM-DDThh:mm:ss+08:00`。 :rtype: str """ return self._StartTime @StartTime.setter def StartTime(self, StartTime): self._StartTime = StartTime @property def Recurrence(self): """定时任务的重复方式。 :rtype: str """ return self._Recurrence @Recurrence.setter def Recurrence(self, Recurrence): self._Recurrence = Recurrence @property def EndTime(self): """定时任务的结束时间。取值为`北京时间`(UTC+8),按照`ISO8601`标准,格式:`YYYY-MM-DDThh:mm:ss+08:00`。 :rtype: str """ return self._EndTime @EndTime.setter def EndTime(self, EndTime): self._EndTime = EndTime @property def MaxSize(self): """定时任务设置的最大实例数。 :rtype: int """ return self._MaxSize @MaxSize.setter def MaxSize(self, MaxSize): self._MaxSize = MaxSize @property def DesiredCapacity(self): """定时任务设置的期望实例数。 :rtype: int """ return self._DesiredCapacity @DesiredCapacity.setter def DesiredCapacity(self, DesiredCapacity): self._DesiredCapacity = DesiredCapacity @property def MinSize(self): """定时任务设置的最小实例数。 :rtype: int """ return self._MinSize @MinSize.setter def MinSize(self, MinSize): self._MinSize = MinSize @property def CreatedTime(self): """定时任务的创建时间。取值为`UTC`时间,按照`ISO8601`标准,格式:`YYYY-MM-DDThh:mm:ssZ`。 :rtype: str """ return self._CreatedTime @CreatedTime.setter def CreatedTime(self, CreatedTime): self._CreatedTime = CreatedTime @property def ScheduledType(self): """定时任务的执行类型。取值范围: <li>CRONTAB:代表定时任务为重复执行。</li> <li>ONCE:代表定时任务为单次执行。</li> :rtype: str """ return self._ScheduledType @ScheduledType.setter def ScheduledType(self, ScheduledType): self._ScheduledType = ScheduledType def _deserialize(self, params): self._ScheduledActionId = params.get("ScheduledActionId") self._ScheduledActionName = params.get("ScheduledActionName") self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._StartTime = params.get("StartTime") self._Recurrence = params.get("Recurrence") self._EndTime = params.get("EndTime") self._MaxSize = params.get("MaxSize") self._DesiredCapacity = params.get("DesiredCapacity") self._MinSize = params.get("MinSize") self._CreatedTime = params.get("CreatedTime") self._ScheduledType = params.get("ScheduledType") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ServiceSettings(AbstractModel): """服务设置 """ def __init__(self): r""" :param _ReplaceMonitorUnhealthy: 开启监控不健康替换服务。若开启则对于云监控标记为不健康的实例,弹性伸缩服务会进行替换。若不指定该参数,则默认为 False。 :type ReplaceMonitorUnhealthy: bool :param _ScalingMode: 取值范围: CLASSIC_SCALING:经典方式,使用创建、销毁实例来实现扩缩容; WAKE_UP_STOPPED_SCALING:扩容优先开机。扩容时优先对已关机的实例执行开机操作,若开机后实例数仍低于期望实例数,则创建实例,缩容仍采用销毁实例的方式。用户可以使用StopAutoScalingInstances接口来关闭伸缩组内的实例。监控告警触发的扩容仍将创建实例 默认取值:CLASSIC_SCALING :type ScalingMode: str :param _ReplaceLoadBalancerUnhealthy: 开启负载均衡不健康替换服务。若开启则对于负载均衡健康检查判断不健康的实例,弹性伸缩服务会进行替换。若不指定该参数,则默认为 False。 :type ReplaceLoadBalancerUnhealthy: bool :param _ReplaceMode: 不健康替换服务的替换模式。取值范围: RECREATE:重建实例替代原有不健康实例; RESET:对原有不健康实例进行重装系统操作,可保持数据盘、内网IP、实例id等信息不发生变化,实例登录设置、主机名、增强服务和 UserData 与当前启动配置保持一致。 默认取值:RECREATE 注意:此字段可能返回 null,表示取不到有效值。 :type ReplaceMode: str :param _AutoUpdateInstanceTags: 自动更新实例标签。默认取值为 False,配置后如伸缩组标签发生更新,会同步更新(同步更新仅支持新增、修改标签,暂不支持删除标签)伸缩组内运行中状态实例的标签,同步更新非立即生效,存在一定延迟。 :type AutoUpdateInstanceTags: bool :param _DesiredCapacitySyncWithMaxMinSize: 期望实例数同步最大最小值。默认值为 False。该参数仅对修改伸缩组接口未传入期望数的场景生效。 <li>True: 修改最大值或最小值时,如与当前期望数存在冲突,则同步调整期望数。例如修改时传入最小值 2,当前期望数为 1,则同步调整期望数为 2。</li> <li>False: 修改最大值或最小值时,如与当前期望数存在冲突,报错提示不允许修改。</li> :type DesiredCapacitySyncWithMaxMinSize: bool """ self._ReplaceMonitorUnhealthy = None self._ScalingMode = None self._ReplaceLoadBalancerUnhealthy = None self._ReplaceMode = None self._AutoUpdateInstanceTags = None self._DesiredCapacitySyncWithMaxMinSize = None @property def ReplaceMonitorUnhealthy(self): """开启监控不健康替换服务。若开启则对于云监控标记为不健康的实例,弹性伸缩服务会进行替换。若不指定该参数,则默认为 False。 :rtype: bool """ return self._ReplaceMonitorUnhealthy @ReplaceMonitorUnhealthy.setter def ReplaceMonitorUnhealthy(self, ReplaceMonitorUnhealthy): self._ReplaceMonitorUnhealthy = ReplaceMonitorUnhealthy @property def ScalingMode(self): """取值范围: CLASSIC_SCALING:经典方式,使用创建、销毁实例来实现扩缩容; WAKE_UP_STOPPED_SCALING:扩容优先开机。扩容时优先对已关机的实例执行开机操作,若开机后实例数仍低于期望实例数,则创建实例,缩容仍采用销毁实例的方式。用户可以使用StopAutoScalingInstances接口来关闭伸缩组内的实例。监控告警触发的扩容仍将创建实例 默认取值:CLASSIC_SCALING :rtype: str """ return self._ScalingMode @ScalingMode.setter def ScalingMode(self, ScalingMode): self._ScalingMode = ScalingMode @property def ReplaceLoadBalancerUnhealthy(self): """开启负载均衡不健康替换服务。若开启则对于负载均衡健康检查判断不健康的实例,弹性伸缩服务会进行替换。若不指定该参数,则默认为 False。 :rtype: bool """ return self._ReplaceLoadBalancerUnhealthy @ReplaceLoadBalancerUnhealthy.setter def ReplaceLoadBalancerUnhealthy(self, ReplaceLoadBalancerUnhealthy): self._ReplaceLoadBalancerUnhealthy = ReplaceLoadBalancerUnhealthy @property def ReplaceMode(self): """不健康替换服务的替换模式。取值范围: RECREATE:重建实例替代原有不健康实例; RESET:对原有不健康实例进行重装系统操作,可保持数据盘、内网IP、实例id等信息不发生变化,实例登录设置、主机名、增强服务和 UserData 与当前启动配置保持一致。 默认取值:RECREATE 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._ReplaceMode @ReplaceMode.setter def ReplaceMode(self, ReplaceMode): self._ReplaceMode = ReplaceMode @property def AutoUpdateInstanceTags(self): """自动更新实例标签。默认取值为 False,配置后如伸缩组标签发生更新,会同步更新(同步更新仅支持新增、修改标签,暂不支持删除标签)伸缩组内运行中状态实例的标签,同步更新非立即生效,存在一定延迟。 :rtype: bool """ return self._AutoUpdateInstanceTags @AutoUpdateInstanceTags.setter def AutoUpdateInstanceTags(self, AutoUpdateInstanceTags): self._AutoUpdateInstanceTags = AutoUpdateInstanceTags @property def DesiredCapacitySyncWithMaxMinSize(self): """期望实例数同步最大最小值。默认值为 False。该参数仅对修改伸缩组接口未传入期望数的场景生效。 <li>True: 修改最大值或最小值时,如与当前期望数存在冲突,则同步调整期望数。例如修改时传入最小值 2,当前期望数为 1,则同步调整期望数为 2。</li> <li>False: 修改最大值或最小值时,如与当前期望数存在冲突,报错提示不允许修改。</li> :rtype: bool """ return self._DesiredCapacitySyncWithMaxMinSize @DesiredCapacitySyncWithMaxMinSize.setter def DesiredCapacitySyncWithMaxMinSize(self, DesiredCapacitySyncWithMaxMinSize): self._DesiredCapacitySyncWithMaxMinSize = DesiredCapacitySyncWithMaxMinSize def _deserialize(self, params): self._ReplaceMonitorUnhealthy = params.get("ReplaceMonitorUnhealthy") self._ScalingMode = params.get("ScalingMode") self._ReplaceLoadBalancerUnhealthy = params.get("ReplaceLoadBalancerUnhealthy") self._ReplaceMode = params.get("ReplaceMode") self._AutoUpdateInstanceTags = params.get("AutoUpdateInstanceTags") self._DesiredCapacitySyncWithMaxMinSize = params.get("DesiredCapacitySyncWithMaxMinSize") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class SetInstancesProtectionRequest(AbstractModel): """SetInstancesProtection请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID。 :type AutoScalingGroupId: str :param _InstanceIds: 实例ID。 :type InstanceIds: list of str :param _ProtectedFromScaleIn: 实例是否需要设置保护。 :type ProtectedFromScaleIn: bool """ self._AutoScalingGroupId = None self._InstanceIds = None self._ProtectedFromScaleIn = None @property def AutoScalingGroupId(self): """伸缩组ID。 :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def InstanceIds(self): """实例ID。 :rtype: list of str """ return self._InstanceIds @InstanceIds.setter def InstanceIds(self, InstanceIds): self._InstanceIds = InstanceIds @property def ProtectedFromScaleIn(self): """实例是否需要设置保护。 :rtype: bool """ return self._ProtectedFromScaleIn @ProtectedFromScaleIn.setter def ProtectedFromScaleIn(self, ProtectedFromScaleIn): self._ProtectedFromScaleIn = ProtectedFromScaleIn def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._InstanceIds = params.get("InstanceIds") self._ProtectedFromScaleIn = params.get("ProtectedFromScaleIn") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class SetInstancesProtectionResponse(AbstractModel): """SetInstancesProtection返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class SpotMarketOptions(AbstractModel): """竞价相关选项 """ def __init__(self): r""" :param _MaxPrice: 竞价出价,例如“1.05” :type MaxPrice: str :param _SpotInstanceType: 竞价请求类型,当前仅支持类型:one-time,默认值为one-time 注意:此字段可能返回 null,表示取不到有效值。 :type SpotInstanceType: str """ self._MaxPrice = None self._SpotInstanceType = None @property def MaxPrice(self): """竞价出价,例如“1.05” :rtype: str """ return self._MaxPrice @MaxPrice.setter def MaxPrice(self, MaxPrice): self._MaxPrice = MaxPrice @property def SpotInstanceType(self): """竞价请求类型,当前仅支持类型:one-time,默认值为one-time 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._SpotInstanceType @SpotInstanceType.setter def SpotInstanceType(self, SpotInstanceType): self._SpotInstanceType = SpotInstanceType def _deserialize(self, params): self._MaxPrice = params.get("MaxPrice") self._SpotInstanceType = params.get("SpotInstanceType") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class SpotMixedAllocationPolicy(AbstractModel): """竞价混合模式下,各计费类型实例的分配策略。包括按量计费实例和竞价计费实例。 """ def __init__(self): r""" :param _BaseCapacity: 混合模式下,基础容量的大小,基础容量部分固定为按量计费实例。默认值 0,最大不可超过伸缩组的最大实例数。 注意:此字段可能返回 null,表示取不到有效值。 :type BaseCapacity: int :param _OnDemandPercentageAboveBaseCapacity: 超出基础容量部分,按量计费实例所占的比例。取值范围 [0, 100],0 代表超出基础容量的部分仅生产竞价实例,100 代表仅生产按量实例,默认值为 70。按百分比计算按量实例数时,向上取整。 比如,总期望实例数取 3,基础容量取 1,超基础部分按量百分比取 1,则最终按量 2 台(1 台来自基础容量,1 台按百分比向上取整得到),竞价 1台。 注意:此字段可能返回 null,表示取不到有效值。 :type OnDemandPercentageAboveBaseCapacity: int :param _SpotAllocationStrategy: 混合模式下,竞价实例的分配策略。取值包括 COST_OPTIMIZED 和 CAPACITY_OPTIMIZED,默认取 COST_OPTIMIZED。 <br><li> COST_OPTIMIZED,成本优化策略。对于启动配置内的所有机型,按照各机型在各可用区的每核单价由小到大依次尝试。优先尝试购买每核单价最便宜的,如果购买失败则尝试购买次便宜的,以此类推。 <br><li> CAPACITY_OPTIMIZED,容量优化策略。对于启动配置内的所有机型,按照各机型在各可用区的库存情况由大到小依次尝试。优先尝试购买剩余库存最大的机型,这样可尽量降低竞价实例被动回收的发生概率。 注意:此字段可能返回 null,表示取不到有效值。 :type SpotAllocationStrategy: str :param _CompensateWithBaseInstance: 按量实例替补功能。取值范围: <br><li> TRUE,开启该功能,当所有竞价机型因库存不足等原因全部购买失败后,尝试购买按量实例。 <br><li> FALSE,不开启该功能,伸缩组在需要扩容竞价实例时仅尝试所配置的竞价机型。 默认取值: TRUE。 注意:此字段可能返回 null,表示取不到有效值。 :type CompensateWithBaseInstance: bool """ self._BaseCapacity = None self._OnDemandPercentageAboveBaseCapacity = None self._SpotAllocationStrategy = None self._CompensateWithBaseInstance = None @property def BaseCapacity(self): """混合模式下,基础容量的大小,基础容量部分固定为按量计费实例。默认值 0,最大不可超过伸缩组的最大实例数。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: int """ return self._BaseCapacity @BaseCapacity.setter def BaseCapacity(self, BaseCapacity): self._BaseCapacity = BaseCapacity @property def OnDemandPercentageAboveBaseCapacity(self): """超出基础容量部分,按量计费实例所占的比例。取值范围 [0, 100],0 代表超出基础容量的部分仅生产竞价实例,100 代表仅生产按量实例,默认值为 70。按百分比计算按量实例数时,向上取整。 比如,总期望实例数取 3,基础容量取 1,超基础部分按量百分比取 1,则最终按量 2 台(1 台来自基础容量,1 台按百分比向上取整得到),竞价 1台。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: int """ return self._OnDemandPercentageAboveBaseCapacity @OnDemandPercentageAboveBaseCapacity.setter def OnDemandPercentageAboveBaseCapacity(self, OnDemandPercentageAboveBaseCapacity): self._OnDemandPercentageAboveBaseCapacity = OnDemandPercentageAboveBaseCapacity @property def SpotAllocationStrategy(self): """混合模式下,竞价实例的分配策略。取值包括 COST_OPTIMIZED 和 CAPACITY_OPTIMIZED,默认取 COST_OPTIMIZED。 <br><li> COST_OPTIMIZED,成本优化策略。对于启动配置内的所有机型,按照各机型在各可用区的每核单价由小到大依次尝试。优先尝试购买每核单价最便宜的,如果购买失败则尝试购买次便宜的,以此类推。 <br><li> CAPACITY_OPTIMIZED,容量优化策略。对于启动配置内的所有机型,按照各机型在各可用区的库存情况由大到小依次尝试。优先尝试购买剩余库存最大的机型,这样可尽量降低竞价实例被动回收的发生概率。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._SpotAllocationStrategy @SpotAllocationStrategy.setter def SpotAllocationStrategy(self, SpotAllocationStrategy): self._SpotAllocationStrategy = SpotAllocationStrategy @property def CompensateWithBaseInstance(self): """按量实例替补功能。取值范围: <br><li> TRUE,开启该功能,当所有竞价机型因库存不足等原因全部购买失败后,尝试购买按量实例。 <br><li> FALSE,不开启该功能,伸缩组在需要扩容竞价实例时仅尝试所配置的竞价机型。 默认取值: TRUE。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: bool """ return self._CompensateWithBaseInstance @CompensateWithBaseInstance.setter def CompensateWithBaseInstance(self, CompensateWithBaseInstance): self._CompensateWithBaseInstance = CompensateWithBaseInstance def _deserialize(self, params): self._BaseCapacity = params.get("BaseCapacity") self._OnDemandPercentageAboveBaseCapacity = params.get("OnDemandPercentageAboveBaseCapacity") self._SpotAllocationStrategy = params.get("SpotAllocationStrategy") self._CompensateWithBaseInstance = params.get("CompensateWithBaseInstance") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class StartAutoScalingInstancesRequest(AbstractModel): """StartAutoScalingInstances请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str :param _InstanceIds: 待开启的CVM实例ID列表 :type InstanceIds: list of str """ self._AutoScalingGroupId = None self._InstanceIds = None @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def InstanceIds(self): """待开启的CVM实例ID列表 :rtype: list of str """ return self._InstanceIds @InstanceIds.setter def InstanceIds(self, InstanceIds): self._InstanceIds = InstanceIds def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._InstanceIds = params.get("InstanceIds") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class StartAutoScalingInstancesResponse(AbstractModel): """StartAutoScalingInstances返回参数结构体 """ def __init__(self): r""" :param _ActivityId: 伸缩活动ID :type ActivityId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._ActivityId = None self._RequestId = None @property def ActivityId(self): """伸缩活动ID :rtype: str """ return self._ActivityId @ActivityId.setter def ActivityId(self, ActivityId): self._ActivityId = ActivityId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._ActivityId = params.get("ActivityId") self._RequestId = params.get("RequestId") class StartInstanceRefreshRequest(AbstractModel): """StartInstanceRefresh请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID。 :type AutoScalingGroupId: str :param _RefreshSettings: 刷新设置。 :type RefreshSettings: :class:`tencentcloud.autoscaling.v20180419.models.RefreshSettings` :param _RefreshMode: 刷新模式。取值范围: <li>ROLLING_UPDATE_RESET:重装系统进行滚动更新</li> <li>ROLLING_UPDATE_REPLACE:新建实例替换进行滚动更新,该模式暂不支持回滚接口</li> :type RefreshMode: str """ self._AutoScalingGroupId = None self._RefreshSettings = None self._RefreshMode = None @property def AutoScalingGroupId(self): """伸缩组ID。 :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def RefreshSettings(self): """刷新设置。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.RefreshSettings` """ return self._RefreshSettings @RefreshSettings.setter def RefreshSettings(self, RefreshSettings): self._RefreshSettings = RefreshSettings @property def RefreshMode(self): """刷新模式。取值范围: <li>ROLLING_UPDATE_RESET:重装系统进行滚动更新</li> <li>ROLLING_UPDATE_REPLACE:新建实例替换进行滚动更新,该模式暂不支持回滚接口</li> :rtype: str """ return self._RefreshMode @RefreshMode.setter def RefreshMode(self, RefreshMode): self._RefreshMode = RefreshMode def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") if params.get("RefreshSettings") is not None: self._RefreshSettings = RefreshSettings() self._RefreshSettings._deserialize(params.get("RefreshSettings")) self._RefreshMode = params.get("RefreshMode") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class StartInstanceRefreshResponse(AbstractModel): """StartInstanceRefresh返回参数结构体 """ def __init__(self): r""" :param _RefreshActivityId: 刷新活动 ID。 :type RefreshActivityId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RefreshActivityId = None self._RequestId = None @property def RefreshActivityId(self): """刷新活动 ID。 :rtype: str """ return self._RefreshActivityId @RefreshActivityId.setter def RefreshActivityId(self, RefreshActivityId): self._RefreshActivityId = RefreshActivityId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RefreshActivityId = params.get("RefreshActivityId") self._RequestId = params.get("RequestId") class StopAutoScalingInstancesRequest(AbstractModel): """StopAutoScalingInstances请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID :type AutoScalingGroupId: str :param _InstanceIds: 待关闭的CVM实例ID列表 :type InstanceIds: list of str :param _StoppedMode: 关闭的实例是否收费,取值为: KEEP_CHARGING:关机继续收费 STOP_CHARGING:关机停止收费 默认为 KEEP_CHARGING :type StoppedMode: str """ self._AutoScalingGroupId = None self._InstanceIds = None self._StoppedMode = None @property def AutoScalingGroupId(self): """伸缩组ID :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def InstanceIds(self): """待关闭的CVM实例ID列表 :rtype: list of str """ return self._InstanceIds @InstanceIds.setter def InstanceIds(self, InstanceIds): self._InstanceIds = InstanceIds @property def StoppedMode(self): """关闭的实例是否收费,取值为: KEEP_CHARGING:关机继续收费 STOP_CHARGING:关机停止收费 默认为 KEEP_CHARGING :rtype: str """ return self._StoppedMode @StoppedMode.setter def StoppedMode(self, StoppedMode): self._StoppedMode = StoppedMode def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._InstanceIds = params.get("InstanceIds") self._StoppedMode = params.get("StoppedMode") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class StopAutoScalingInstancesResponse(AbstractModel): """StopAutoScalingInstances返回参数结构体 """ def __init__(self): r""" :param _ActivityId: 伸缩活动ID :type ActivityId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._ActivityId = None self._RequestId = None @property def ActivityId(self): """伸缩活动ID :rtype: str """ return self._ActivityId @ActivityId.setter def ActivityId(self, ActivityId): self._ActivityId = ActivityId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._ActivityId = params.get("ActivityId") self._RequestId = params.get("RequestId") class StopInstanceRefreshRequest(AbstractModel): """StopInstanceRefresh请求参数结构体 """ def __init__(self): r""" :param _AutoScalingGroupId: 伸缩组ID。 :type AutoScalingGroupId: str :param _RefreshActivityId: 刷新活动ID。 :type RefreshActivityId: str """ self._AutoScalingGroupId = None self._RefreshActivityId = None @property def AutoScalingGroupId(self): """伸缩组ID。 :rtype: str """ return self._AutoScalingGroupId @AutoScalingGroupId.setter def AutoScalingGroupId(self, AutoScalingGroupId): self._AutoScalingGroupId = AutoScalingGroupId @property def RefreshActivityId(self): """刷新活动ID。 :rtype: str """ return self._RefreshActivityId @RefreshActivityId.setter def RefreshActivityId(self, RefreshActivityId): self._RefreshActivityId = RefreshActivityId def _deserialize(self, params): self._AutoScalingGroupId = params.get("AutoScalingGroupId") self._RefreshActivityId = params.get("RefreshActivityId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class StopInstanceRefreshResponse(AbstractModel): """StopInstanceRefresh返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class SystemDisk(AbstractModel): """启动配置的系统盘配置信息。若不指定该参数,则按照系统默认值进行分配。 """ def __init__(self): r""" :param _DiskType: 系统盘类型。系统盘类型限制详见[云硬盘类型](https://cloud.tencent.com/document/product/362/2353)。取值范围:<br><li>LOCAL_BASIC:本地硬盘<br><li>LOCAL_SSD:本地SSD硬盘<br><li>CLOUD_BASIC:普通云硬盘<br><li>CLOUD_PREMIUM:高性能云硬盘<br><li>CLOUD_SSD:SSD云硬盘<br><br>默认取值:CLOUD_PREMIUM。 注意:此字段可能返回 null,表示取不到有效值。 :type DiskType: str :param _DiskSize: 系统盘大小,单位:GB。默认值为 50 注意:此字段可能返回 null,表示取不到有效值。 :type DiskSize: int """ self._DiskType = None self._DiskSize = None @property def DiskType(self): """系统盘类型。系统盘类型限制详见[云硬盘类型](https://cloud.tencent.com/document/product/362/2353)。取值范围:<br><li>LOCAL_BASIC:本地硬盘<br><li>LOCAL_SSD:本地SSD硬盘<br><li>CLOUD_BASIC:普通云硬盘<br><li>CLOUD_PREMIUM:高性能云硬盘<br><li>CLOUD_SSD:SSD云硬盘<br><br>默认取值:CLOUD_PREMIUM。 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._DiskType @DiskType.setter def DiskType(self, DiskType): self._DiskType = DiskType @property def DiskSize(self): """系统盘大小,单位:GB。默认值为 50 注意:此字段可能返回 null,表示取不到有效值。 :rtype: int """ return self._DiskSize @DiskSize.setter def DiskSize(self, DiskSize): self._DiskSize = DiskSize def _deserialize(self, params): self._DiskType = params.get("DiskType") self._DiskSize = params.get("DiskSize") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class Tag(AbstractModel): """资源类型及标签键值对 """ def __init__(self): r""" :param _Key: 标签键 :type Key: str :param _Value: 标签值 :type Value: str :param _ResourceType: 标签绑定的资源类型,当前支持类型:"auto-scaling-group", "launch-configuration" 注意:此字段可能返回 null,表示取不到有效值。 :type ResourceType: str """ self._Key = None self._Value = None self._ResourceType = None @property def Key(self): """标签键 :rtype: str """ return self._Key @Key.setter def Key(self, Key): self._Key = Key @property def Value(self): """标签值 :rtype: str """ return self._Value @Value.setter def Value(self, Value): self._Value = Value @property def ResourceType(self): """标签绑定的资源类型,当前支持类型:"auto-scaling-group", "launch-configuration" 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._ResourceType @ResourceType.setter def ResourceType(self, ResourceType): self._ResourceType = ResourceType def _deserialize(self, params): self._Key = params.get("Key") self._Value = params.get("Value") self._ResourceType = params.get("ResourceType") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class TargetAttribute(AbstractModel): """负载均衡器目标属性 """ def __init__(self): r""" :param _Port: 端口 :type Port: int :param _Weight: 权重 :type Weight: int """ self._Port = None self._Weight = None @property def Port(self): """端口 :rtype: int """ return self._Port @Port.setter def Port(self, Port): self._Port = Port @property def Weight(self): """权重 :rtype: int """ return self._Weight @Weight.setter def Weight(self, Weight): self._Weight = Weight def _deserialize(self, params): self._Port = params.get("Port") self._Weight = params.get("Weight") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class UpgradeLaunchConfigurationRequest(AbstractModel): """UpgradeLaunchConfiguration请求参数结构体 """ def __init__(self): r""" :param _LaunchConfigurationId: 启动配置ID。 :type LaunchConfigurationId: str :param _ImageId: 指定有效的[镜像](https://cloud.tencent.com/document/product/213/4940)ID,格式形如`img-8toqc6s3`。镜像类型分为四种:<br/><li>公共镜像</li><li>自定义镜像</li><li>共享镜像</li><li>服务市场镜像</li><br/>可通过以下方式获取可用的镜像ID:<br/><li>`公共镜像`、`自定义镜像`、`共享镜像`的镜像ID可通过登录[控制台](https://console.cloud.tencent.com/cvm/image?rid=1&imageType=PUBLIC_IMAGE)查询;`服务镜像市场`的镜像ID可通过[云市场](https://market.cloud.tencent.com/list)查询。</li><li>通过调用接口 [DescribeImages](https://cloud.tencent.com/document/api/213/15715) ,取返回信息中的`ImageId`字段。</li> :type ImageId: str :param _InstanceTypes: 实例机型列表,不同实例机型指定了不同的资源规格,最多支持5种实例机型。 :type InstanceTypes: list of str :param _LaunchConfigurationName: 启动配置显示名称。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超60个字节。 :type LaunchConfigurationName: str :param _DataDisks: 实例数据盘配置信息。若不指定该参数,则默认不购买数据盘,最多支持指定11块数据盘。 :type DataDisks: list of DataDisk :param _EnhancedService: 增强服务。通过该参数可以指定是否开启云安全、云监控等服务。若不指定该参数,则默认开启云监控、云安全服务。 :type EnhancedService: :class:`tencentcloud.autoscaling.v20180419.models.EnhancedService` :param _InstanceChargeType: 实例计费类型,CVM默认值按照POSTPAID_BY_HOUR处理。 <br><li>POSTPAID_BY_HOUR:按小时后付费 <br><li>SPOTPAID:竞价付费 <br><li>PREPAID:预付费,即包年包月 :type InstanceChargeType: str :param _InstanceMarketOptions: 实例的市场相关选项,如竞价实例相关参数,若指定实例的付费模式为竞价付费则该参数必传。 :type InstanceMarketOptions: :class:`tencentcloud.autoscaling.v20180419.models.InstanceMarketOptionsRequest` :param _InstanceTypesCheckPolicy: 实例类型校验策略,取值包括 ALL 和 ANY,默认取值为ANY。 <br><li> ALL,所有实例类型(InstanceType)都可用则通过校验,否则校验报错。 <br><li> ANY,存在任何一个实例类型(InstanceType)可用则通过校验,否则校验报错。 实例类型不可用的常见原因包括该实例类型售罄、对应云盘售罄等。 如果 InstanceTypes 中一款机型不存在或者已下线,则无论 InstanceTypesCheckPolicy 采用何种取值,都会校验报错。 :type InstanceTypesCheckPolicy: str :param _InternetAccessible: 公网带宽相关信息设置。若不指定该参数,则默认公网带宽为0Mbps。 :type InternetAccessible: :class:`tencentcloud.autoscaling.v20180419.models.InternetAccessible` :param _LoginSettings: 该参数已失效,请勿使用。升级启动配置接口无法修改或覆盖 LoginSettings 参数,升级后 LoginSettings 不会发生变化。 :type LoginSettings: :class:`tencentcloud.autoscaling.v20180419.models.LoginSettings` :param _ProjectId: 实例所属项目ID。不填为默认项目。 :type ProjectId: int :param _SecurityGroupIds: 实例所属安全组。该参数可以通过调用 [DescribeSecurityGroups](https://cloud.tencent.com/document/api/215/15808) 的返回值中的`SecurityGroupId`字段来获取。若不指定该参数,则默认不绑定安全组。 :type SecurityGroupIds: list of str :param _SystemDisk: 实例系统盘配置信息。若不指定该参数,则按照系统默认值进行分配。 :type SystemDisk: :class:`tencentcloud.autoscaling.v20180419.models.SystemDisk` :param _UserData: 经过 Base64 编码后的自定义数据,最大长度不超过16KB。 :type UserData: str :param _InstanceTags: 标签列表。通过指定该参数,可以为扩容的实例绑定标签。最多支持指定10个标签。 :type InstanceTags: list of InstanceTag :param _CamRoleName: CAM角色名称。可通过DescribeRoleList接口返回值中的roleName获取。 :type CamRoleName: str :param _HostNameSettings: 云服务器主机名(HostName)的相关设置。 :type HostNameSettings: :class:`tencentcloud.autoscaling.v20180419.models.HostNameSettings` :param _InstanceNameSettings: 云服务器实例名(InstanceName)的相关设置。 :type InstanceNameSettings: :class:`tencentcloud.autoscaling.v20180419.models.InstanceNameSettings` :param _InstanceChargePrepaid: 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月实例的购买时长、是否设置自动续费等属性。若指定实例的付费模式为预付费则该参数必传。 :type InstanceChargePrepaid: :class:`tencentcloud.autoscaling.v20180419.models.InstanceChargePrepaid` :param _DiskTypePolicy: 云盘类型选择策略,取值范围: <br><li>ORIGINAL:使用设置的云盘类型 <br><li>AUTOMATIC:自动选择当前可用的云盘类型 :type DiskTypePolicy: str :param _IPv6InternetAccessible: IPv6公网带宽相关信息设置。若新建实例包含IPv6地址,该参数可为新建实例的IPv6地址分配公网带宽。关联启动配置的伸缩组Ipv6AddressCount参数为0时,该参数不会生效。 :type IPv6InternetAccessible: :class:`tencentcloud.autoscaling.v20180419.models.IPv6InternetAccessible` """ self._LaunchConfigurationId = None self._ImageId = None self._InstanceTypes = None self._LaunchConfigurationName = None self._DataDisks = None self._EnhancedService = None self._InstanceChargeType = None self._InstanceMarketOptions = None self._InstanceTypesCheckPolicy = None self._InternetAccessible = None self._LoginSettings = None self._ProjectId = None self._SecurityGroupIds = None self._SystemDisk = None self._UserData = None self._InstanceTags = None self._CamRoleName = None self._HostNameSettings = None self._InstanceNameSettings = None self._InstanceChargePrepaid = None self._DiskTypePolicy = None self._IPv6InternetAccessible = None @property def LaunchConfigurationId(self): """启动配置ID。 :rtype: str """ return self._LaunchConfigurationId @LaunchConfigurationId.setter def LaunchConfigurationId(self, LaunchConfigurationId): self._LaunchConfigurationId = LaunchConfigurationId @property def ImageId(self): """指定有效的[镜像](https://cloud.tencent.com/document/product/213/4940)ID,格式形如`img-8toqc6s3`。镜像类型分为四种:<br/><li>公共镜像</li><li>自定义镜像</li><li>共享镜像</li><li>服务市场镜像</li><br/>可通过以下方式获取可用的镜像ID:<br/><li>`公共镜像`、`自定义镜像`、`共享镜像`的镜像ID可通过登录[控制台](https://console.cloud.tencent.com/cvm/image?rid=1&imageType=PUBLIC_IMAGE)查询;`服务镜像市场`的镜像ID可通过[云市场](https://market.cloud.tencent.com/list)查询。</li><li>通过调用接口 [DescribeImages](https://cloud.tencent.com/document/api/213/15715) ,取返回信息中的`ImageId`字段。</li> :rtype: str """ return self._ImageId @ImageId.setter def ImageId(self, ImageId): self._ImageId = ImageId @property def InstanceTypes(self): """实例机型列表,不同实例机型指定了不同的资源规格,最多支持5种实例机型。 :rtype: list of str """ return self._InstanceTypes @InstanceTypes.setter def InstanceTypes(self, InstanceTypes): self._InstanceTypes = InstanceTypes @property def LaunchConfigurationName(self): """启动配置显示名称。名称仅支持中文、英文、数字、下划线、分隔符"-"、小数点,最大长度不能超60个字节。 :rtype: str """ return self._LaunchConfigurationName @LaunchConfigurationName.setter def LaunchConfigurationName(self, LaunchConfigurationName): self._LaunchConfigurationName = LaunchConfigurationName @property def DataDisks(self): """实例数据盘配置信息。若不指定该参数,则默认不购买数据盘,最多支持指定11块数据盘。 :rtype: list of DataDisk """ return self._DataDisks @DataDisks.setter def DataDisks(self, DataDisks): self._DataDisks = DataDisks @property def EnhancedService(self): """增强服务。通过该参数可以指定是否开启云安全、云监控等服务。若不指定该参数,则默认开启云监控、云安全服务。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.EnhancedService` """ return self._EnhancedService @EnhancedService.setter def EnhancedService(self, EnhancedService): self._EnhancedService = EnhancedService @property def InstanceChargeType(self): """实例计费类型,CVM默认值按照POSTPAID_BY_HOUR处理。 <br><li>POSTPAID_BY_HOUR:按小时后付费 <br><li>SPOTPAID:竞价付费 <br><li>PREPAID:预付费,即包年包月 :rtype: str """ return self._InstanceChargeType @InstanceChargeType.setter def InstanceChargeType(self, InstanceChargeType): self._InstanceChargeType = InstanceChargeType @property def InstanceMarketOptions(self): """实例的市场相关选项,如竞价实例相关参数,若指定实例的付费模式为竞价付费则该参数必传。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.InstanceMarketOptionsRequest` """ return self._InstanceMarketOptions @InstanceMarketOptions.setter def InstanceMarketOptions(self, InstanceMarketOptions): self._InstanceMarketOptions = InstanceMarketOptions @property def InstanceTypesCheckPolicy(self): """实例类型校验策略,取值包括 ALL 和 ANY,默认取值为ANY。 <br><li> ALL,所有实例类型(InstanceType)都可用则通过校验,否则校验报错。 <br><li> ANY,存在任何一个实例类型(InstanceType)可用则通过校验,否则校验报错。 实例类型不可用的常见原因包括该实例类型售罄、对应云盘售罄等。 如果 InstanceTypes 中一款机型不存在或者已下线,则无论 InstanceTypesCheckPolicy 采用何种取值,都会校验报错。 :rtype: str """ return self._InstanceTypesCheckPolicy @InstanceTypesCheckPolicy.setter def InstanceTypesCheckPolicy(self, InstanceTypesCheckPolicy): self._InstanceTypesCheckPolicy = InstanceTypesCheckPolicy @property def InternetAccessible(self): """公网带宽相关信息设置。若不指定该参数,则默认公网带宽为0Mbps。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.InternetAccessible` """ return self._InternetAccessible @InternetAccessible.setter def InternetAccessible(self, InternetAccessible): self._InternetAccessible = InternetAccessible @property def LoginSettings(self): """该参数已失效,请勿使用。升级启动配置接口无法修改或覆盖 LoginSettings 参数,升级后 LoginSettings 不会发生变化。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.LoginSettings` """ return self._LoginSettings @LoginSettings.setter def LoginSettings(self, LoginSettings): self._LoginSettings = LoginSettings @property def ProjectId(self): """实例所属项目ID。不填为默认项目。 :rtype: int """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def SecurityGroupIds(self): """实例所属安全组。该参数可以通过调用 [DescribeSecurityGroups](https://cloud.tencent.com/document/api/215/15808) 的返回值中的`SecurityGroupId`字段来获取。若不指定该参数,则默认不绑定安全组。 :rtype: list of str """ return self._SecurityGroupIds @SecurityGroupIds.setter def SecurityGroupIds(self, SecurityGroupIds): self._SecurityGroupIds = SecurityGroupIds @property def SystemDisk(self): """实例系统盘配置信息。若不指定该参数,则按照系统默认值进行分配。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.SystemDisk` """ return self._SystemDisk @SystemDisk.setter def SystemDisk(self, SystemDisk): self._SystemDisk = SystemDisk @property def UserData(self): """经过 Base64 编码后的自定义数据,最大长度不超过16KB。 :rtype: str """ return self._UserData @UserData.setter def UserData(self, UserData): self._UserData = UserData @property def InstanceTags(self): """标签列表。通过指定该参数,可以为扩容的实例绑定标签。最多支持指定10个标签。 :rtype: list of InstanceTag """ return self._InstanceTags @InstanceTags.setter def InstanceTags(self, InstanceTags): self._InstanceTags = InstanceTags @property def CamRoleName(self): """CAM角色名称。可通过DescribeRoleList接口返回值中的roleName获取。 :rtype: str """ return self._CamRoleName @CamRoleName.setter def CamRoleName(self, CamRoleName): self._CamRoleName = CamRoleName @property def HostNameSettings(self): """云服务器主机名(HostName)的相关设置。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.HostNameSettings` """ return self._HostNameSettings @HostNameSettings.setter def HostNameSettings(self, HostNameSettings): self._HostNameSettings = HostNameSettings @property def InstanceNameSettings(self): """云服务器实例名(InstanceName)的相关设置。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.InstanceNameSettings` """ return self._InstanceNameSettings @InstanceNameSettings.setter def InstanceNameSettings(self, InstanceNameSettings): self._InstanceNameSettings = InstanceNameSettings @property def InstanceChargePrepaid(self): """预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月实例的购买时长、是否设置自动续费等属性。若指定实例的付费模式为预付费则该参数必传。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.InstanceChargePrepaid` """ return self._InstanceChargePrepaid @InstanceChargePrepaid.setter def InstanceChargePrepaid(self, InstanceChargePrepaid): self._InstanceChargePrepaid = InstanceChargePrepaid @property def DiskTypePolicy(self): """云盘类型选择策略,取值范围: <br><li>ORIGINAL:使用设置的云盘类型 <br><li>AUTOMATIC:自动选择当前可用的云盘类型 :rtype: str """ return self._DiskTypePolicy @DiskTypePolicy.setter def DiskTypePolicy(self, DiskTypePolicy): self._DiskTypePolicy = DiskTypePolicy @property def IPv6InternetAccessible(self): """IPv6公网带宽相关信息设置。若新建实例包含IPv6地址,该参数可为新建实例的IPv6地址分配公网带宽。关联启动配置的伸缩组Ipv6AddressCount参数为0时,该参数不会生效。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.IPv6InternetAccessible` """ return self._IPv6InternetAccessible @IPv6InternetAccessible.setter def IPv6InternetAccessible(self, IPv6InternetAccessible): self._IPv6InternetAccessible = IPv6InternetAccessible def _deserialize(self, params): self._LaunchConfigurationId = params.get("LaunchConfigurationId") self._ImageId = params.get("ImageId") self._InstanceTypes = params.get("InstanceTypes") self._LaunchConfigurationName = params.get("LaunchConfigurationName") if params.get("DataDisks") is not None: self._DataDisks = [] for item in params.get("DataDisks"): obj = DataDisk() obj._deserialize(item) self._DataDisks.append(obj) if params.get("EnhancedService") is not None: self._EnhancedService = EnhancedService() self._EnhancedService._deserialize(params.get("EnhancedService")) self._InstanceChargeType = params.get("InstanceChargeType") if params.get("InstanceMarketOptions") is not None: self._InstanceMarketOptions = InstanceMarketOptionsRequest() self._InstanceMarketOptions._deserialize(params.get("InstanceMarketOptions")) self._InstanceTypesCheckPolicy = params.get("InstanceTypesCheckPolicy") if params.get("InternetAccessible") is not None: self._InternetAccessible = InternetAccessible() self._InternetAccessible._deserialize(params.get("InternetAccessible")) if params.get("LoginSettings") is not None: self._LoginSettings = LoginSettings() self._LoginSettings._deserialize(params.get("LoginSettings")) self._ProjectId = params.get("ProjectId") self._SecurityGroupIds = params.get("SecurityGroupIds") if params.get("SystemDisk") is not None: self._SystemDisk = SystemDisk() self._SystemDisk._deserialize(params.get("SystemDisk")) self._UserData = params.get("UserData") if params.get("InstanceTags") is not None: self._InstanceTags = [] for item in params.get("InstanceTags"): obj = InstanceTag() obj._deserialize(item) self._InstanceTags.append(obj) self._CamRoleName = params.get("CamRoleName") if params.get("HostNameSettings") is not None: self._HostNameSettings = HostNameSettings() self._HostNameSettings._deserialize(params.get("HostNameSettings")) if params.get("InstanceNameSettings") is not None: self._InstanceNameSettings = InstanceNameSettings() self._InstanceNameSettings._deserialize(params.get("InstanceNameSettings")) if params.get("InstanceChargePrepaid") is not None: self._InstanceChargePrepaid = InstanceChargePrepaid() self._InstanceChargePrepaid._deserialize(params.get("InstanceChargePrepaid")) self._DiskTypePolicy = params.get("DiskTypePolicy") if params.get("IPv6InternetAccessible") is not None: self._IPv6InternetAccessible = IPv6InternetAccessible() self._IPv6InternetAccessible._deserialize(params.get("IPv6InternetAccessible")) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class UpgradeLaunchConfigurationResponse(AbstractModel): """UpgradeLaunchConfiguration返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class UpgradeLifecycleHookRequest(AbstractModel): """UpgradeLifecycleHook请求参数结构体 """ def __init__(self): r""" :param _LifecycleHookId: 生命周期挂钩ID :type LifecycleHookId: str :param _LifecycleHookName: 生命周期挂钩名称 :type LifecycleHookName: str :param _LifecycleTransition: 进行生命周期挂钩的场景,取值范围包括“INSTANCE_LAUNCHING”和“INSTANCE_TERMINATING” :type LifecycleTransition: str :param _DefaultResult: 定义伸缩组在生命周期挂钩超时的情况下应采取的操作,取值范围是“CONTINUE”或“ABANDON”,默认值为“CONTINUE” :type DefaultResult: str :param _HeartbeatTimeout: 生命周期挂钩超时之前可以经过的最长时间(以秒为单位),范围从30到7200秒,默认值为300秒 :type HeartbeatTimeout: int :param _NotificationMetadata: 弹性伸缩向通知目标发送的附加信息,配置通知时使用,默认值为空字符串"" :type NotificationMetadata: str :param _NotificationTarget: 通知目标。NotificationTarget和LifecycleCommand参数互斥,二者不可同时指定。 :type NotificationTarget: :class:`tencentcloud.autoscaling.v20180419.models.NotificationTarget` :param _LifecycleTransitionType: 进行生命周期挂钩的场景类型,取值范围包括NORMAL 和 EXTENSION。说明:设置为EXTENSION值,在AttachInstances、DetachInstances、RemoveInstaces接口时会触发生命周期挂钩操作,值为NORMAL则不会在这些接口中触发生命周期挂钩。 :type LifecycleTransitionType: str :param _LifecycleCommand: 远程命令执行对象。NotificationTarget和LifecycleCommand参数互斥,二者不可同时指定。 :type LifecycleCommand: :class:`tencentcloud.autoscaling.v20180419.models.LifecycleCommand` """ self._LifecycleHookId = None self._LifecycleHookName = None self._LifecycleTransition = None self._DefaultResult = None self._HeartbeatTimeout = None self._NotificationMetadata = None self._NotificationTarget = None self._LifecycleTransitionType = None self._LifecycleCommand = None @property def LifecycleHookId(self): """生命周期挂钩ID :rtype: str """ return self._LifecycleHookId @LifecycleHookId.setter def LifecycleHookId(self, LifecycleHookId): self._LifecycleHookId = LifecycleHookId @property def LifecycleHookName(self): """生命周期挂钩名称 :rtype: str """ return self._LifecycleHookName @LifecycleHookName.setter def LifecycleHookName(self, LifecycleHookName): self._LifecycleHookName = LifecycleHookName @property def LifecycleTransition(self): """进行生命周期挂钩的场景,取值范围包括“INSTANCE_LAUNCHING”和“INSTANCE_TERMINATING” :rtype: str """ return self._LifecycleTransition @LifecycleTransition.setter def LifecycleTransition(self, LifecycleTransition): self._LifecycleTransition = LifecycleTransition @property def DefaultResult(self): """定义伸缩组在生命周期挂钩超时的情况下应采取的操作,取值范围是“CONTINUE”或“ABANDON”,默认值为“CONTINUE” :rtype: str """ return self._DefaultResult @DefaultResult.setter def DefaultResult(self, DefaultResult): self._DefaultResult = DefaultResult @property def HeartbeatTimeout(self): """生命周期挂钩超时之前可以经过的最长时间(以秒为单位),范围从30到7200秒,默认值为300秒 :rtype: int """ return self._HeartbeatTimeout @HeartbeatTimeout.setter def HeartbeatTimeout(self, HeartbeatTimeout): self._HeartbeatTimeout = HeartbeatTimeout @property def NotificationMetadata(self): """弹性伸缩向通知目标发送的附加信息,配置通知时使用,默认值为空字符串"" :rtype: str """ return self._NotificationMetadata @NotificationMetadata.setter def NotificationMetadata(self, NotificationMetadata): self._NotificationMetadata = NotificationMetadata @property def NotificationTarget(self): """通知目标。NotificationTarget和LifecycleCommand参数互斥,二者不可同时指定。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.NotificationTarget` """ return self._NotificationTarget @NotificationTarget.setter def NotificationTarget(self, NotificationTarget): self._NotificationTarget = NotificationTarget @property def LifecycleTransitionType(self): """进行生命周期挂钩的场景类型,取值范围包括NORMAL 和 EXTENSION。说明:设置为EXTENSION值,在AttachInstances、DetachInstances、RemoveInstaces接口时会触发生命周期挂钩操作,值为NORMAL则不会在这些接口中触发生命周期挂钩。 :rtype: str """ return self._LifecycleTransitionType @LifecycleTransitionType.setter def LifecycleTransitionType(self, LifecycleTransitionType): self._LifecycleTransitionType = LifecycleTransitionType @property def LifecycleCommand(self): """远程命令执行对象。NotificationTarget和LifecycleCommand参数互斥,二者不可同时指定。 :rtype: :class:`tencentcloud.autoscaling.v20180419.models.LifecycleCommand` """ return self._LifecycleCommand @LifecycleCommand.setter def LifecycleCommand(self, LifecycleCommand): self._LifecycleCommand = LifecycleCommand def _deserialize(self, params): self._LifecycleHookId = params.get("LifecycleHookId") self._LifecycleHookName = params.get("LifecycleHookName") self._LifecycleTransition = params.get("LifecycleTransition") self._DefaultResult = params.get("DefaultResult") self._HeartbeatTimeout = params.get("HeartbeatTimeout") self._NotificationMetadata = params.get("NotificationMetadata") if params.get("NotificationTarget") is not None: self._NotificationTarget = NotificationTarget() self._NotificationTarget._deserialize(params.get("NotificationTarget")) self._LifecycleTransitionType = params.get("LifecycleTransitionType") if params.get("LifecycleCommand") is not None: self._LifecycleCommand = LifecycleCommand() self._LifecycleCommand._deserialize(params.get("LifecycleCommand")) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class UpgradeLifecycleHookResponse(AbstractModel): """UpgradeLifecycleHook返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId")
Memory