调用UpdateInstance,变更集群配置。
调用该接口时,请注意:
- 当实例状态为生效中(activating)、失效(invalid)和冻结(inactive)时,无法变更配置。
 - 如果集群负载过高且索引没有副本,同时在升配或者降配过程中存在大量的写入或查询等情况,业务可能会出现偶发的访问超时现象。建议在集群变更前,在客户端访问机制中配置重试机制,以减小对业务的影响。
 - 每次只能变更一种类型的节点(数据节点、专有主节点、冷数据节点、协调节点、Kibana节点、弹性节点)的配置。
 - 出于您的集群健康和稳定性的考虑,自2021年5月起,阿里云Elasticsearch已不支持购买1核2 GB规格、专有主节点的2核2 GB规格和7.4版本实例,如果您已确认已购规格不再支持售卖,那么您需要先完成以下操作:
                        
                        
- 对于1核2 GB和2核2 GB规格,建议提前升配至购买页开放的稳定的售卖规格。购买页开放的售卖规格请参见购买页面参数(商业版)或者购买页面参数(增强版)。
 - 对于7.4版本,建议您重新选购7.10版本实例,然后再进行数据迁移。数据迁移请参见迁移方案选取指南。
 
 
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求头
该接口使用公共请求头,无特殊请求头。请参见公共请求参数文档。
请求语法
PUT /openapi/instances/{InstanceId} HTTP/1.1
                  请求参数
| 名称 | 类型 | 位置 | 是否必选 | 示例值 | 描述 | 
|---|---|---|---|---|---|
| InstanceId | String | Path | 是 | es-cn-n6w1ptcb30009**** | 
                               实例ID。  | 
                           
                        
| clientToken | String | Query | 否 | 5A2CFF0E-5718-45B5-9D4D-70B3FF**** | 
                               用于保证请求的幂等性。由客户端生成该参数值,要保证在不同请求间唯一,最大不超过64个ASCII字符。  | 
                           
                        
| orderActionType | String | Query | 否 | upgrade | 
                               配置变更类型,可选值: 
  | 
                           
                        
| Object | Body | 否 | 
                               请求体参数。  | 
                           
                        ||
| nodeAmount | Integer | Body | 否 | 3 | 
                               节点数量。  | 
                           
                        
| nodeSpec | NodeSpec | Body | 否 | 
                               数据节点配置。  | 
                           
                        |
| masterConfiguration | MasterNodeConfiguration | Body | 否 | 
                               专有主节点配置。  | 
                           
                        |
| clientNodeConfiguration | ClientNodeConfiguration | Body | 否 | 
                               协调节点配置。  | 
                           
                        |
| warmNodeConfiguration | WarmNodeConfiguration | Body | 否 | 
                               冷数据节点配置。  | 
                           
                        |
| kibanaConfiguration | KibanaNodeConfiguration | Body | 否 | 
                               kibana节点配置。  | 
                           
                        |
| elasticDataNodeConfiguration | ElasticDataNodeConfiguration | Body | 否 | 
                               弹性节点配置。  | 
                           
                        |
| instanceCategory | String | Body | 否 | advanced | 
                               版本类型。可选值: 
  | 
                           
                        
| force | Boolean | Query | 否 | false | 
                               是否强制重启: 
  | 
                           
                        
Elasticsearch支持的节点规格列表,请参见阿里云Elasticsearch定价信息、产品规格。
请求体参数示例如下:
升配- 
                        
                        
升配存储空间
目前仅支持数据节点、冷数据节点和弹性数据节点升配存储空间。
将冷数据节点的存储空间升配至1000 GiB。{ "warmNodeConfiguration": { "disk": 1000 } } - 
                        
                        
升配存储类型
目前仅支持数据节点、弹性数据节点和专有主节点升配存储类型。
- 将专有主节点的存储类型升配为ESSD云盘类型。
{ "masterConfiguration": { "diskType": "cloud_essd" } } - 
                              
                              
当专有主节点的存储类型为ESSD云盘类型时,将节点存储性能级别升配为PL3。
指定performanceLevel后,diskType会默认填充为cloud_essd。
指定cloud_essd后,performanceLevel默认为PL1。{ "masterConfiguration": { "performanceLevel": "PL3" } } 
 - 将专有主节点的存储类型升配为ESSD云盘类型。
 - 
                        
                        
升配节点数量
目前仅支持数据节点、冷数据节点、弹性数据节点和协调节点升配节点数量。
数据节点升配节点数量的方式与其他节点不同,具体参见下文示例。
- 将数据节点的节点数量升至12个。
{ "nodeAmount": 12 } - 将其他类型节点(以冷数据节点为例)的节点数量升至12个。
{ "warmNodeConfiguration": { "amount": 12 } } 
 - 将数据节点的节点数量升至12个。
 - 
                        
                        
升配节点规格
将数据节点的规格升至4核32 GB。{ "nodeSpec": { "spec": "elasticsearch.r5.xlarge" } } - 
                        
                        
同时升配同一节点的几种配置
同时升配同一节点的几种配置,需要您同时写入升配资源RequestBody。
- 将协调节点的节点数量升至8,规格升至4核8 GB。
{ "clientNodeConfiguration": { "amount": 8, "spec": "elasticsearch.sn1ne.xlarge" } } - 将数据节点的节点数量升至12,存储类型升至ESSD云盘。
{ "nodeAmount": 12, "nodeSpec": { "diskType": "cloud_essd" } } 
 - 将协调节点的节点数量升至8,规格升至4核8 GB。
 - 
                        
                        
启用节点
您可以参见createInstance接口设置完整的节点资源配置。
- 启用协调节点,同时设置协调节点配置。
{ "clientNodeConfiguration": { "amount": 5, "disk": 20, "spec": "elasticsearch.sn1ne.xlarge" } } - 启用弹性数据节点,同时设置弹性数据节点配置(此配置只适用于中国站)。
{ "elasticNodeConfiguration": { "disk": 200, "amount": 5, "diskType": "cloud_essd", "spec": "elasticsearch.sn1ne.xlarge" } } - 启用冷数据节点,同时设置冷数据节点配置。
{ "warmNodeConfiguration": { "disk": 1000, "amount": 3, "spec": "elasticsearch.sn1ne.xlarge" } } 
 - 启用协调节点,同时设置协调节点配置。
 - 
                        
                        
升配开启OpenStore(此配置只适用于中国站)
已启用冷数据节点的实例以及数据节点存储类型为ESSD云盘的实例,目前不支持升配开启OpenStore。
如果实例类型为普通商业版,升配开启OpenStore后,实例类型同时由普通商业版升配至开启Indexing Service的日志增强版。
- 冷数据节点打开OpenStore。
{ "warmNodeConfiguration": { "amount": 5, "spec": "openstore.i2g.4xlarge" } } - 数据节点规格转换为OpenStore。
{ "nodeAmount": 6, "nodeSpec": { "spec": "openstore.i2g.4xlarge", "diskType": "cloud_ssd", "disk": 100 } } 
 - 冷数据节点打开OpenStore。
 - 指定变更方式
                        
                        
- 变更方式默认为智能变更,将其指定为蓝绿变更(blue_green)或原地变更(normal)。
{ "nodeSpec": { "spec": "elasticsearch.r5.xlarge" }, "updateType": "blue_green" ## 原地变更为normal。 } - 开启强制变更。
{ "nodeSpec": { "spec": "elasticsearch.r5.xlarge" }, "force": true } 
 - 变更方式默认为智能变更,将其指定为蓝绿变更(blue_green)或原地变更(normal)。
 - 
                        
                        
使用dryRun接口进行升配预校验
在RequestBody中添加dryRun字段。{ "nodeSpec": { "spec": "elasticsearch.r5.xlarge" }, "dryRun": true } 
降配时,不支持升级存储空间数值、存储类型、节点数量、规格的CPU核数或内存值。
UpdateInstance接口无法降低节点数量,如有需求请使用ShrinkNode接口。
不支持降配节点存储空间大小,启用的节点不支持关闭。
不支持选择强制变更,不支持指定变更类型,默认使用智能变更。
降配时,orderActionType参数需要设置为Downgrade。
您可以同时降配多个资源配置,也可以进行dryRun预校验。
- 
                        
                        
降配存储类型
降配时,不支持变更冷数据节点(不变更实例类型)、协调节点、Kibana节点的存储类型。
将专有主节点的存储类型变更为SSD云盘。{ "masterConfiguration": { "diskType": "cloud_ssd" } } - 
                        
                        
降配规格
将数据节点的规格降配至4核32 GB。{ "nodeSpec": { "spec": "elasticsearch.r5.xlarge" } } 
返回数据
| 名称 | 类型 | 示例值 | 描述 | 
|---|---|---|---|
| RequestId | String | 5FFD9ED4-C2EC-4E89-B22B-1ACB6FE1**** | 
                               请求ID。  | 
                           
                        
| Result | Object | 
                               返回结果。  | 
                           
                        |
| nodeAmount | Integer | 2 | 
                               数据节点的数量。  | 
                           
                        
| createdAt | String | 2018-07-13T03:58:07.253Z | 
                               实例创建时间。  | 
                           
                        
| status | String | active | 
                               实例的状态。支持: 
  | 
                           
                        
| paymentType | String | postpaid | 
                               实例的付费方式。支持: 
  | 
                           
                        
| domain | String | es-cn-abc.elasticsearch.aliyuncs.com | 
                               实例的私网访问域名。  | 
                           
                        
| description | String | test | 
                               实例名称。  | 
                           
                        
| esVersion | String | 5.5.3_with_X-Pack | 
                               实例版本。  | 
                           
                        
| instanceId | String | es-cn-abc | 
                               实例ID。  | 
                           
                        
| nodeSpec | Object | 
                               数据节点配置信息。  | 
                           
                        |
| spec | String | elasticsearch.sn2ne.xlarge | 
                               节点规格。  | 
                           
                        
| disk | Integer | 40 | 
                               节点存储空间大小,单位:GB。  | 
                           
                        
| diskType | String | cloud_ssd | 
                               节点存储类型。支持: 
  | 
                           
                        
| kibanaConfiguration | Object | 
                               Kibana节点配置。  | 
                           
                        |
| spec | String | elasticsearch.n4.small | 
                               节点规格。  | 
                           
                        
| amount | Integer | 1 | 
                               节点数量。  | 
                           
                        
| disk | Integer | 20 | 
                               节点存储空间大小。  | 
                           
                        
| diskType | String | cloud_ssd | 
                               节点存储类型(可忽略该参数)。  | 
                           
                        
| masterConfiguration | Object | 
                               Master节点配置。  | 
                           
                        |
| spec | String | elasticsearch.sn2ne.large | 
                               节点规格。  | 
                           
                        
| amount | Integer | 3 | 
                               节点数量。  | 
                           
                        
| disk | Integer | 20 | 
                               节点的存储空间大小,单位:GB。  | 
                           
                        
| diskType | String | cloud_ssd | 
                               节点的存储类型。只支持cloud_ssd(SSD云盘)。  | 
                           
                        
示例
请求示例
PUT /openapi/instances/es-cn-n6w1ptcb30009****?clientToken=5A2CFF0E-5718-45B5-9D4D-70B3FF****&orderActionType=upgrade HTTP/1.1
Host:elasticsearch.aliyuncs.com
Content-Type:application/json
{
  "nodeSpec": {
    "spec": "elasticsearch.r5.xlarge"
  }
}
                  正常返回示例
JSON格式
                  
HTTP/1.1 200 OK
Content-Type:application/json
{
  "Result" : {
    "instanceId" : "es-cn-n6w1ptcb30009****",
    "version" : "5.5.3_with_X-Pack",
    "nodeAmount" : 3,
    "paymentType" : "postpaid",
    "status" : "active",
    "nodeSpec" : {
      "spec" : "elasticsearch.n4.small",
      "disk" : 40,
      "diskType" : "cloud_ssd",
      "diskEncryption" : false
    },
    "createdAt" : "2020-06-28T08:25:52.895Z",
    "zoneCount" : 1,
    "instanceCategory" : "x-pack",
    "kibanaConfiguration" : {
      "spec" : "elasticsearch.n4.small",
      "amount" : 1,
      "disk" : 0
    }
  },
  "RequestId" : "B5246080-9C30-4B6A-8F8A-8C705405****"
}
                  返回示例补充说明
> 返回示例中,本文只保证包含返回数据列表中的参数,而未提到的参数仅供参考,程序中不能强制依赖获取这些参数。
                  错误码
访问错误中心查看更多错误码。