
# 示例1：创建伸缩配置
#### 场景描述
本章节指导用户通过API创建弹性伸缩配置。API的调用方法请参见[如何调用API](https://support.huaweicloud.com/api-as/as_04_0100.html)。
伸缩配置用于定义伸缩组内待添加的云服务器的规格数据，也就是定义了资源扩展时的云服务器的规格。包括云服务器的规格、镜像、磁盘等。您可以通过已有云服务器来创建伸缩配置，也可以创建新的伸缩配置。
#### 约束限制
- 伸缩配置与伸缩组是解耦的，同一伸缩配置可以被多个伸缩组使用。
- 默认最多可以创建100个伸缩配置。
 
#### 涉及接口
创建伸缩配置时，需要进行token查询，云服务器规格查询，镜像列表查询，伸缩配置创建等操作，涉及的接口如下：
- [获取IAM用户Token](https://support.huaweicloud.com/api-iam/iam_30_0001.html)：确定调用API鉴权时使用的token。
- [查询云服务器规格详情列表](https://support.huaweicloud.com/api-ecs/ecs_03_0702.html)：确定待创建伸缩配置的规格。
- [查询镜像列表](https://support.huaweicloud.com/api-ims/ims_03_0602.html)：确定待创建伸缩配置使用的镜像。
- [查询SSH密钥列表](https://support.huaweicloud.com/api-ecs/ecs_03_1201.html)：设置密钥对登录方式。
- [创建弹性伸缩配置 - CreateScalingConfig](https://support.huaweicloud.com/api-as/as_06_0201.html)：使用规格和镜像等参数创建伸缩配置。
- [查询弹性伸缩配置详情 - ShowScalingConfig](https://support.huaweicloud.com/api-as/as_06_0203.html)：确认伸缩配置创建成功。
 
#### 调试
您可以在[API Explorer](https://apiexplorer.developer.huaweicloud.com/apiexplorer/doc?product=AS&api=CreateScalingConfig)中调试该接口。
#### 操作步骤
1. 确定调用API鉴权时使用的token。 
   1. 查询token，详情请参见[获取用户Token](https://support.huaweicloud.com/api-iam/iam_30_0001.html)。
   
   2. 获取响应Header参数中X-Subject-Token对应的值。
   
   
   
   
2. 确定待创建伸缩配置的规格。 
   1. 查询云服务器规格详情列表信息，详情请参见[查询云服务器规格详情列表](https://support.huaweicloud.com/api-ecs/ecs_03_0702.html)。
   
   2. 根据实际需要选择规格，并记录规格的ID。
   
   
   
   
3. 确定待创建伸缩配置使用的镜像。 
   1. 查询镜像，详情请参见[查询IMS镜像列表](https://support.huaweicloud.com/api-ims/ims_03_0602.html)。
   
   2. 根据需要选择镜像，并记录镜像ID。
   
   
   
   
4. 设置密钥对登录方式。 
   1. 查询SSH密钥列表，详情请参见[查询SSH密钥列表](https://support.huaweicloud.com/api-ecs/ecs_03_1201.html)。
   
   2. 根据实际需要选择密钥，并记录密钥名称。
   
   
   
   
5. 使用规格和镜像等参数创建伸缩配置。 
   - 接口相关信息 URI格式：POST /autoscaling-api/v1/{project_id}/scaling_configuration
     接口请求参数说明详情，请参见[创建弹性伸缩配置 - CreateScalingConfig](https://support.huaweicloud.com/api-as/as_06_0201.html)。
     
   
   - 请求示例 POST: https://{endpoint}/autoscaling-api/v1/0605767c2e80d5762fd0c0146a10aaf2/scaling_configuration
     {endpoint}信息请从[地区和终端节点](https://developer.huaweicloud.com/endpoint?AS)获取。
     Body：
     ```
     { 
         "scaling_configuration_name": "as-config-tlzq", 
         "instance_config": { 
             "flavorRef": "s3.xlarge.4", 
             "imageRef": "627a1223-2ca3-46a7-8d5f-7aef22c74ee6", 
             "disk": [ 
                 { 
                     "size": 40, 
                     "volume_type": "SATA", 
                     "disk_type": "SYS" 
                 } 
             ], 
             "key_name": "100vm_key",
             "multi_flavor_priority_policy": "PICK_FIRST"
         } 
     }
     ```
     
   
   - 响应示例
     ```
     {
         "scaling_configuration_id": "f8327883-6a07-4497-9a61-68c03e8e72a2"
     }
     ```
     
     
   
   
   
   
6. 确认伸缩配置创建成功。 
   - 接口相关信息 URI格式：GET /autoscaling-api/v1/{project_id}/scaling_configuration/{scaling_configuration_id}
     详情请参见[查询弹性伸缩配置详情 - ShowScalingConfig](https://support.huaweicloud.com/api-as/as_06_0203.html)。
     
   
   - 请求示例 GET: https://{endpoint}/autoscaling-api/v1/0605767c2e80d5762fd0c0146a10aaf2/scaling_configuration/f8327883-6a07-4497-9a61-68c03e8e72a2
     其中：
     f8327883-6a07-4497-9a61-68c03e8e72a2为创建的伸缩配置UUID。
     {endpoint}信息请从[地区和终端节点](https://developer.huaweicloud.com/endpoint?AS)获取。
     
   
   - 响应示例
     ```
     {
         "scaling_configuration": {
             "tenant": "0605767c2e80d5762fd0c0146a10aaf2",
             "scaling_configuration_id": "f8327883-6a07-4497-9a61-68c03e8e72a2",
             "scaling_configuration_name": " config_name_1",
             "instance_config": {
                 "disk": [
                     {
                         "size": 40,
                         "volume_type": "SATA",
                         "disk_type": "SYS"
                     },
                     {
                         "size": 100,
                         "volume_type": "SATA",
                         "disk_type": "DATA"
                     }
                 ],
                 "adminPass": "***",
                 "personality": null,
                 "instance_name": null,
                 "instance_id": null,
                 "flavorRef": "103",
                 "imageRef": "627a1223-2ca3-46a7-8d5f-7aef22c74ee6",
                 "key_name": "keypair01",
                 "public_ip": null,
                 "user_data": null,
                 "metadata": {},
                 "security_groups": null,
                 "multi_flavor_priority_policy": "PICK_FIRST"
             },
             "create_time": "2015-07-23T01:04:07Z"
         }
     }
     ```
     
   
   
   
   
 
