开发者社区 问答 正文

实例:设置实例保护




描述


保护或者停止保护伸缩组内的一台或者多台 ECS 实例(SetInstancesProtection)。
ECS 实例开启保护状态后:


  • 实例保持此状态,直至您停止保护状态。

  • 由于伸缩组内实例数量的变化和监控任务触发的自动缩容的伸缩活动不会移除处于保护状态的 ECS 实例。您需要自行移除 ECS 实例 (RemoveInstances)后才能释放实例。

  • ECS 实例被停止或者重启,不会更新 ECS 实例的健康检查状态。


请求参数

名称类型是否必需描述
ActionString系统规定参数。取值:SetInstancesProtection
ScalingGroupIdString伸缩组 ID。
InstanceId.NStringECS 实例 ID,N 的取值范围为 [1, 20]。
ProtectedFromScaleInBoolean伸缩组自动缩容时是否保护 ECS 实例而使其不被终止或移出伸缩组。取值范围:True | False。


返回参数

名称类型描述
RequestIdString请求 ID


示例



请求示例

  1. http://ess.aliyuncs.com/?Action=SetInstancesProtection
  2. &ScalingGroupId=AG6CQdPU8OKdwLjgZcJ2eaQ
  3. &InstanceId.1=i-28wt48iaa
  4. &InstanceId.1=i-28wt48ibb
  5. &ProtectedFromScaleIn=true
  6. &<公共请求参数>


返回示例


XML 格式
  1. <SetInstancesProtectionResponse>
  2.     <RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>
  3. </SetInstancesProtectionResponse>

JSON 格式
  1. {
  2.     "RequestId": "04F0F334-1335-436C-A1D7-6C044FE73368"
  3. }


错误码


以下为 SetInstancesProtection 接口的特有错误码。更多详情,请参阅通用 客户端错误服务器端错误
错误代码错误信息HTTP 状态码说明
IncorrectScalingGroupStatusThe current status of the specified scaling group does not support this action.400您需要启用伸缩组(EnableScalingGroup)。
Forbidden.UnauthorizedA required authorization for the specified action is not supplied.403您还未被授权使用 SetInstancesProtection 接口。
InvalidInstanceId.NotFoundInstance “XXX” does not exist.404指定的 ECS 实例不存在。
InvalidScalingGroupId.NotFoundThe specified scaling group does not exist.404指定的伸缩组不存在。

展开
收起
青蛙跳 2018-08-17 14:01:45 1392 分享 版权
阿里云 AI 助理回答

要保护或停止保护阿里云弹性伸缩组(Auto Scaling Group)内的一个或多个ECS实例,您需要调用SetInstancesProtection API。以下是操作指南和相关参数说明:

任务描述

  • 目标:通过API调用来保护特定的ECS实例,防止它们在自动缩容活动中被终止或移出伸缩组。

请求参数说明

  1. Action:

    • 类型: String
    • 是否必需: 是
    • : 必须设置为 SetInstancesProtection
  2. ScalingGroupId:

    • 类型: String
    • 是否必需: 是
    • 描述: 伸缩组的唯一标识符。
  3. InstanceId.N:

    • 类型: String
    • 是否必需: 是
    • 描述: 要保护或取消保护的ECS实例ID列表,N的取值范围为1到20。
  4. ProtectedFromScaleIn:

    • 类型: Boolean
    • 是否必需: 是
    • 描述:
      • 如果设为 true,则表示保护ECS实例,自动缩容时不会移除这些实例。
      • 如果设为 false,则取消保护,实例将遵循正常自动缩容规则。

返回参数

  • RequestId:
    • 类型: String
    • 描述: 请求的唯一标识符,用于追踪操作。

示例请求

http://ess.aliyuncs.com/?Action=SetInstancesProtection
&ScalingGroupId=asg-bp18p2yfxow2dloq****
&ProtectedFromScaleIn=true
&InstanceId.1=i-28wt4****

注意事项

  • 确保提供的ScalingGroupId有效且对应于您的伸缩组。
  • 实例ID(InstanceId.N)必须是属于指定伸缩组的有效ECS实例。
  • 设置保护后,实例将保持保护状态,直到手动取消。自动缩容操作不会影响受保护实例。
  • 若要释放受保护的实例,需先通过RemoveInstances接口将其从伸缩组中移除。

常见问题

  • Q: 如何获取我的伸缩组ID和ECS实例ID?

    • A: 您可以在阿里云控制台的“弹性伸缩组”页面找到伸缩组ID,在“实例管理”中查看ECS实例ID。
  • Q: 受保护的ECS实例会受到健康检查的影响吗?

    • A: 不会,即使ECS实例被停止或重启,其健康检查状态也不会更新。

通过上述步骤和注意事项,您可以有效地管理和控制阿里云ECS实例在伸缩组中的保护状态,确保关键服务的稳定性。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答