# 创建一个按需收费的Elasticsearch集群
本节通过调用云搜索服务的API创建CSS服务集群，CSS的接口调用流程如[图1]所示。
图1接口调用流程   
![](https://support.huaweicloud.com/api-css/zh-cn_image_0000002426197049.png)
![](https://support.huaweicloud.com/api-css/public_sys-resources/note_3.0-zh-cn.png)
通过IAM服务获取到的Token有效期为24小时，需要使用同一个Token鉴权时，可以先将Token缓存，避免频繁调用。
#### 涉及API
当您使用Token认证方式完成认证鉴权时，需要获取用户Token并在调用接口时增加"X-Auth-Token"到业务接口请求消息头中。
- IAM获取Token的API
- CSS创建集群的API
 
#### 具体步骤
1. 获取Token，发送"POST https://**IAM** ***的Endpoint*** /v3/auth/tokens"。
   Token认证，具体操作请参考[认证鉴权](https://support.huaweicloud.com/api-css/css_03_0079.html)。
   在响应Header中获取"X-Subject-Token"的值即为用户Token。
   
2. 设置请求消息头，在Request Header中增加"Content-type "和"X-Auth-Token"。
   - **Content-Type**：消息体的类型（格式），默认取值为"application/json"。
   
   - **X-Auth-Token** ：填写[1]获取的用户Token。
    
3. 发送创建集群的请求，在Request Body中传入参数如下： 
   ```
   POST /v1.0/6204a5bd270343b5885144cf9c8c158d/clusters
   {
     "cluster" : {
       "instance" : {
         "flavorRef" : "ess.spec-4u16g",
         "volume" : {
           "volume_type" : "COMMON",
           "size" : 120
         },
         "nics" : {
           "vpcId" : "{VPC ID}",
           "netId" : "{NET ID}",
           "securityGroupId" : "{Security group ID}"
         },
         "availability_zone" : "{AZ CODE}"
       },
       "datastore" : {
         "version" : "{cluster-version}",
         "type" : "elasticsearch"
       },
       "name" : "cluster-name",
       "instanceNum" : 3,
       "backupStrategy" : {
         "period" : "16:00 GMT+08:00",
         "prefix" : "snapshot",
         "keepday" : 7,
         "frequency" : "DAY",
         "bucket" : "css-obs-backup",
         "basePath" : "css_repository/obs-path",
         "agency" : "css_obs_agency"
       },
       "httpsEnable" : true,
       "authorityEnable" : true,
       "adminPwd" : "{password}",
       "enterprise_project_id" : "0",
       "tags" : [ {
         "key" : "k1",
         "value" : "v1"
       }, {
         "key" : "k2",
         "value" : "v2"
       } ]
     }
   }
   ```
   
   响应消息样例。
   ```
   {
     "cluster": {
       "id": "ef683016-871e-48bc-bf93-74a29d60d214",
       "name": "ES-Test"
     }
   }
   ```
   请求响应成功后，返回200 OK，表示集群创建成功。
   若请求失败，则会返回错误码及对应的错误信息说明，详细错误码信息请参考[错误码](https://support.huaweicloud.com/api-css/css_03_0076.html)。
   
 
