弹性伸缩 AS-示例5:批量操作实例:操作步骤

时间:2025-02-12 15:05:22

操作步骤

  1. 确定调用API鉴权时使用的token。

    1. 查询token,详情请参见获取用户Token
    2. 获取响应Header参数中X-Subject-Token对应的值。

  1. 确定要进行批量操作的伸缩组。

    1. 查询伸缩组列表。
      • 接口相关信息

        URI格式:GET /autoscaling-api/v1/{project_id}/scaling_group

        详情请参见查询弹性伸缩组列表

      • 请求示例

        GET: https://{endpoint}/autoscaling-api/v1/0605767c2e80d5762fd0c0146a10aaf2/scaling_group

        {endpoint}信息请从地区和终端节点获取。

      • 响应示例
        {  "limit": 20,  "scaling_groups": [      {          "networks": [              {                  "id": "a8327883-6b07-4497-9c61-68d03ee193a",                  "ipv6_enable": true,                  "ipv6_bandwidth":                   {                      "id": "076ee2ff-f23e-4338-b8ac-1bc7278532d5"                  }              }          ],          "available_zones": [              "XXXa",              "XXXb"          ],          "detail": null,          "scaling_group_name": "as-group-test",          "scaling_group_id": "77a7a397-7d2f-4e79-9da9-6a35e2709150",          "scaling_group_status": "INSERVICE",          "scaling_configuration_id": "1d281494-6085-4579-b817-c1f813be835f",          "scaling_configuration_name": "healthCheck",          "current_instance_number": 0,          "desire_instance_number": 1,          "min_instance_number": 0,          "max_instance_number": 500,          "cool_down_time": 300,          "lb_listener_id": "f06c0112570743b51c0e8fbe1f235bab",          "security_groups": [              {                  "id": "8a4b1d5b-0054-419f-84b1-5c8a59ebc829"              }          ],          "create_time": "2015-07-23T02:46:29Z",          "vpc_id": "863ccae2-ee85-4d27-bc5b-3ba2a198a9e2",          "health_periodic_audit_method": "ELB_AUDIT",          "health_periodic_audit_time": 5,          "health_periodic_audit_grace_period": 600,          "instance_terminate_policy": "OLD_CONFIG_OLD_INSTANCE",          "is_scaling": false,          "delete_publicip": false,          "enterprise_project_id": "c92b1a5d-6f20-43f2-b1b7-7ce35e58e413",          "multi_az_priority_policy": "PICK_FIRST"      }],"total_number": 1,"start_number": 0}
    1. 选择要操作实例的伸缩组,并记录伸缩组ID。

  1. 获取指定伸缩组实例列表。

    1. 查询弹性伸缩组中的实例列表。
      • 接口相关信息

        URI格式:GET /autoscaling-api/v1/{project_id}/scaling_group_instance/{scaling_group_id}/list

        详情请参见查询弹性伸缩组中的实例列表

      • 请求示例

        本示例展示了查询ID为e5d27f5c-dd76-4a61-b4bc-a67c5686719a的伸缩组下已启用且处于健康状态的实例。

        GET: https://{endpoint}/autoscaling-api/v1/0605767c2e80d5762fd0c0146a10aaf2/scaling_group_instance/e5d27f5c-dd76-4a61-b4bc-a67c5686719a/list?life_cycle_state=INSERVICE&health_status=NORMAL

        {endpoint}信息请从地区和终端节点获取。

      • 响应示例
        {    "limit": 10,    "total_number": 1,    "start_number": 0,    "scaling_group_instances": [        {            "instance_id": "b25c1589-c96c-465b-9fef-d06540d1945c",            "scaling_group_id": "e5d27f5c-dd76-4a61-b4bc-a67c5686719a",            "scaling_group_name": "discuz",            "life_cycle_state": "INSERVICE",            "health_status": "NORMAL",            "scaling_configuration_name": "discuz",            "scaling_configuration_id": "ca3dcd84-d197-4c4f-af2a-cf8ba39696ac",            "create_time": "2015-07-23T06:47:33Z",            "instance_name": "discuz_3D210808",            "protect_from_scaling_down": false        }    ]}
    1. 选择需要操作的实例,并记录实例ID。

  1. 批量移出实例。

    • 接口相关信息

      URI格式:POST /autoscaling-api/v1/{project_id}/scaling_group_instance/{scaling_group_id}/action

      详情请参见批量操作实例

    • 请求示例

      本示例展示将实例ID为instance_id_1和instance_id_2的两个实例批量从ID为e5d27f5c-dd76-4a61-b4bc-a67c5686719a的伸缩组移出并删除的操作。

      POST: https://{endpoint}/autoscaling-api/v1/0605767c2e80d5762fd0c0146a10aaf2/scaling_group_instance/e5d27f5c-dd76-4a61-b4bc-a67c5686719a/action

      {endpoint}信息请从地区和终端节点获取。

      Body:

      {"action": "REMOVE","instances_id": ["instance_id_1","instance_id_2"],"instance_delete": "yes"}
    • 响应示例

      HTTP状态码正常返回204。

support.huaweicloud.com/api-as/as_08_0005.html