調(diào)用UpdateInstance,變更集群配置。

調(diào)用該接口時,請注意:

  • 當(dāng)實(shí)例狀態(tài)為生效中(activating)、失效(invalid)和凍結(jié)(inactive)時,無法變更配置。
  • 如果集群負(fù)載過高且索引沒有副本,同時在升配或者降配過程中存在大量的寫入或查詢等情況,業(yè)務(wù)可能會出現(xiàn)偶發(fā)的訪問超時現(xiàn)象。建議在集群變更前,在客戶端訪問機(jī)制中配置重試機(jī)制,以減小對業(yè)務(wù)的影響。
  • 每次只能變更一種類型的節(jié)點(diǎn)(數(shù)據(jù)節(jié)點(diǎn)、專有主節(jié)點(diǎn)、冷數(shù)據(jù)節(jié)點(diǎn)、協(xié)調(diào)節(jié)點(diǎn)、Kibana節(jié)點(diǎn)、彈性節(jié)點(diǎn))的配置。
  • 出于您的集群健康和穩(wěn)定性的考慮,自2021年5月起,阿里云Elasticsearch已不支持購買1核2 GB規(guī)格、專有主節(jié)點(diǎn)的2核2 GB規(guī)格和7.4版本實(shí)例,如果您已確認(rèn)已購規(guī)格不再支持售賣,那么您需要先完成以下操作:

更多注意事項,請參見升配集群降配集群

調(diào)試

您可以在OpenAPI Explorer中直接運(yùn)行該接口,免去您計算簽名的困擾。運(yùn)行成功后,OpenAPI Explorer可以自動生成SDK代碼示例。

請求頭

該接口使用公共請求頭,無特殊請求頭。請參見公共請求參數(shù)文檔。

請求語法

PUT /openapi/instances/{InstanceId} HTTP/1.1

請求參數(shù)

名稱 類型 位置 是否必選 示例值 描述
InstanceId String Path es-cn-n6w1ptcb30009****

實(shí)例ID。

clientToken String Query 5A2CFF0E-5718-45B5-9D4D-70B3FF****

用于保證請求的冪等性。由客戶端生成該參數(shù)值,要保證在不同請求間唯一,最大不超過64個ASCII字符。

orderActionType String Query upgrade

配置變更類型,可選值:

  • upgrade(默認(rèn)):升配
  • downgrade:降配
Object Body

請求體參數(shù)。

nodeAmount Integer Body 3

節(jié)點(diǎn)數(shù)量。

nodeSpec NodeSpec Body

數(shù)據(jù)節(jié)點(diǎn)配置。

masterConfiguration MasterNodeConfiguration Body

專有主節(jié)點(diǎn)配置。

clientNodeConfiguration ClientNodeConfiguration Body

協(xié)調(diào)節(jié)點(diǎn)配置。

warmNodeConfiguration WarmNodeConfiguration Body

冷數(shù)據(jù)節(jié)點(diǎn)配置。

kibanaConfiguration KibanaNodeConfiguration Body

kibana節(jié)點(diǎn)配置。

elasticDataNodeConfiguration ElasticDataNodeConfiguration Body

彈性節(jié)點(diǎn)配置。

instanceCategory String Body advanced

版本類型。可選值:

  • x-pack:商業(yè)版實(shí)例
  • advanced:增強(qiáng)版實(shí)例
  • IS:開啟Indexing Service的增強(qiáng)版實(shí)例
  • community:基礎(chǔ)版實(shí)例
    說明 創(chuàng)建增強(qiáng)版開啟OpenStore的實(shí)例需要同時開啟Indexing Service。
force Boolean Query false

是否強(qiáng)制重啟:

  • true:是
  • false(默認(rèn)):否

Elasticsearch支持的節(jié)點(diǎn)規(guī)格列表,請參見阿里云Elasticsearch定價信息產(chǎn)品規(guī)格

請求體參數(shù)示例如下:

升配
說明 升配時,不支持降低存儲空間數(shù)值、存儲類型配置、節(jié)點(diǎn)數(shù)量、規(guī)格的CPU核數(shù)或內(nèi)存值。
  • 升配存儲空間

    目前僅支持?jǐn)?shù)據(jù)節(jié)點(diǎn)、冷數(shù)據(jù)節(jié)點(diǎn)和彈性數(shù)據(jù)節(jié)點(diǎn)升配存儲空間。

    將冷數(shù)據(jù)節(jié)點(diǎn)的存儲空間升配至1000 GiB。
    
    {
      "warmNodeConfiguration": {
       "disk": 1000
      }
    }
    
  • 升配存儲類型

    目前僅支持?jǐn)?shù)據(jù)節(jié)點(diǎn)、彈性數(shù)據(jù)節(jié)點(diǎn)和專有主節(jié)點(diǎn)升配存儲類型。

    • 將專有主節(jié)點(diǎn)的存儲類型升配為ESSD云盤類型。
      
      {
        "masterConfiguration": {
          "diskType": "cloud_essd"
        }
      }
      
    • 當(dāng)專有主節(jié)點(diǎn)的存儲類型為ESSD云盤類型時,將節(jié)點(diǎn)存儲性能級別升配為PL3。

      指定performanceLevel后,diskType會默認(rèn)填充為cloud_essd

      指定cloud_essd后,performanceLevel默認(rèn)為PL1
      
      	{
      	  "masterConfiguration": {
      		"performanceLevel": "PL3"
      	  }
      	}
      	
  • 升配節(jié)點(diǎn)數(shù)量

    目前僅支持?jǐn)?shù)據(jù)節(jié)點(diǎn)、冷數(shù)據(jù)節(jié)點(diǎn)、彈性數(shù)據(jù)節(jié)點(diǎn)和協(xié)調(diào)節(jié)點(diǎn)升配節(jié)點(diǎn)數(shù)量。

    數(shù)據(jù)節(jié)點(diǎn)升配節(jié)點(diǎn)數(shù)量的方式與其他節(jié)點(diǎn)不同,具體參見下文示例。

    • 將數(shù)據(jù)節(jié)點(diǎn)的節(jié)點(diǎn)數(shù)量升至12個。
      
      {
        "nodeAmount": 12
      }
      
    • 將其他類型節(jié)點(diǎn)(以冷數(shù)據(jù)節(jié)點(diǎn)為例)的節(jié)點(diǎn)數(shù)量升至12個。
      
      {
        "warmNodeConfiguration": {
          "amount": 12
        }
      }
      
  • 升配節(jié)點(diǎn)規(guī)格

    將數(shù)據(jù)節(jié)點(diǎn)的規(guī)格升至4核32 GB。
    
    {
      "nodeSpec": {
        "spec": "elasticsearch.r5.xlarge"
      }
    }
    
  • 同時升配同一節(jié)點(diǎn)的幾種配置

    同時升配同一節(jié)點(diǎn)的幾種配置,需要您同時寫入升配資源RequestBody。

    • 將協(xié)調(diào)節(jié)點(diǎn)的節(jié)點(diǎn)數(shù)量升至8,規(guī)格升至4核8 GB。
      
      {
        "clientNodeConfiguration": {
          "amount": 8,
          "spec": "elasticsearch.sn1ne.xlarge"
        }
      }
      
    • 將數(shù)據(jù)節(jié)點(diǎn)的節(jié)點(diǎn)數(shù)量升至12,存儲類型升至ESSD云盤。
      
      {
        "nodeAmount": 12,
        "nodeSpec": {
          "diskType": "cloud_essd"
        }
      }
      
  • 啟用節(jié)點(diǎn)

    您可以參見createInstance接口設(shè)置完整的節(jié)點(diǎn)資源配置。

    • 啟用協(xié)調(diào)節(jié)點(diǎn),同時設(shè)置協(xié)調(diào)節(jié)點(diǎn)配置。
      
      {
        "clientNodeConfiguration": {
          "amount": 5,
          "disk": 20,
          "spec": "elasticsearch.sn1ne.xlarge"
        }
      }
      
    • 啟用彈性數(shù)據(jù)節(jié)點(diǎn),同時設(shè)置彈性數(shù)據(jù)節(jié)點(diǎn)配置(此配置只適用于中國站)。
      
      {
        "elasticNodeConfiguration": {
          "disk": 200,
          "amount": 5,
          "diskType": "cloud_essd",
          "spec": "elasticsearch.sn1ne.xlarge"
        }
      }
      
    • 啟用冷數(shù)據(jù)節(jié)點(diǎn),同時設(shè)置冷數(shù)據(jù)節(jié)點(diǎn)配置。
      
      {
        "warmNodeConfiguration": {
          "disk": 1000,
          "amount": 3,
          "spec": "elasticsearch.sn1ne.xlarge"
        }
      }
      
  • 升配開啟OpenStore(此配置只適用于中國站)

    已啟用冷數(shù)據(jù)節(jié)點(diǎn)的實(shí)例以及數(shù)據(jù)節(jié)點(diǎn)存儲類型為ESSD云盤的實(shí)例,目前不支持升配開啟OpenStore。

    如果實(shí)例類型為普通商業(yè)版,升配開啟OpenStore后,實(shí)例類型同時由普通商業(yè)版升配至開啟Indexing Service的日志增強(qiáng)版。

    • 冷數(shù)據(jù)節(jié)點(diǎn)打開OpenStore。
      
      {
        "warmNodeConfiguration": {
          "amount": 5,
          "spec": "openstore.i2g.4xlarge"
        }
      }
      
    • 數(shù)據(jù)節(jié)點(diǎn)規(guī)格轉(zhuǎn)換為OpenStore。
      
      {
        "nodeAmount": 6,
        "nodeSpec": {
          "spec": "openstore.i2g.4xlarge",
          "diskType": "cloud_ssd",
          "disk": 100
        }
      }
      
  • 指定變更方式
    • 變更方式默認(rèn)為智能變更,將其指定為藍(lán)綠變更(blue_green)或原地變更(normal)。
      
      {
        "nodeSpec": {
          "spec": "elasticsearch.r5.xlarge"
        },
        "updateType": "blue_green"  ## 原地變更為normal。
      }
      
    • 開啟強(qiáng)制變更。
      
      {
        "nodeSpec": {
          "spec": "elasticsearch.r5.xlarge"
        },
        "force": true
      }
      
  • 使用dryRun接口進(jìn)行升配預(yù)校驗

    在RequestBody中添加dryRun字段。
    
    {
      "nodeSpec": {
        "spec": "elasticsearch.r5.xlarge"
      },
      "dryRun": true
    }
    
降配
說明

降配時,不支持升級存儲空間數(shù)值、存儲類型、節(jié)點(diǎn)數(shù)量、規(guī)格的CPU核數(shù)或內(nèi)存值。

UpdateInstance接口無法降低節(jié)點(diǎn)數(shù)量,如有需求請使用ShrinkNode接口。

不支持降配節(jié)點(diǎn)存儲空間大小,啟用的節(jié)點(diǎn)不支持關(guān)閉。

不支持選擇強(qiáng)制變更,不支持指定變更類型,默認(rèn)使用智能變更。

降配時,orderActionType參數(shù)需要設(shè)置為Downgrade

您可以同時降配多個資源配置,也可以進(jìn)行dryRun預(yù)校驗。

  • 降配存儲類型

    降配時,不支持變更冷數(shù)據(jù)節(jié)點(diǎn)(不變更實(shí)例類型)、協(xié)調(diào)節(jié)點(diǎn)、Kibana節(jié)點(diǎn)的存儲類型。

    將專有主節(jié)點(diǎn)的存儲類型變更為SSD云盤。
    
    {
      "masterConfiguration": {
        "diskType": "cloud_ssd"
      }
    }
    
  • 降配規(guī)格

    將數(shù)據(jù)節(jié)點(diǎn)的規(guī)格降配至4核32 GB。
    
    {
      "nodeSpec": {
        "spec": "elasticsearch.r5.xlarge"
      }
    }
    

返回數(shù)據(jù)

名稱 類型 示例值 描述
RequestId String 5FFD9ED4-C2EC-4E89-B22B-1ACB6FE1****

請求ID。

Result Object

返回結(jié)果。

nodeAmount Integer 2

數(shù)據(jù)節(jié)點(diǎn)的數(shù)量。

createdAt String 2018-07-13T03:58:07.253Z

實(shí)例創(chuàng)建時間。

status String active

實(shí)例的狀態(tài)。支持:

  • active:正常
  • activating:生效中
  • inactive:凍結(jié)
  • invalid:失效
paymentType String postpaid

實(shí)例的付費(fèi)方式。支持:

  • prepaid:包年包月
  • postpaid:按量付費(fèi)
domain String es-cn-abc.elasticsearch.aliyuncs.com

實(shí)例的私網(wǎng)訪問域名。

description String test

實(shí)例名稱。

esVersion String 5.5.3_with_X-Pack

實(shí)例版本。

instanceId String es-cn-abc

實(shí)例ID。

nodeSpec Object

數(shù)據(jù)節(jié)點(diǎn)配置信息。

spec String elasticsearch.sn2ne.xlarge

節(jié)點(diǎn)規(guī)格。

disk Integer 40

節(jié)點(diǎn)存儲空間大小,單位:GB。

diskType String cloud_ssd

節(jié)點(diǎn)存儲類型。支持:

  • cloud_ssd:SSD云盤
  • cloud_efficiency:高效云盤
kibanaConfiguration Object

Kibana節(jié)點(diǎn)配置。

spec String elasticsearch.n4.small

節(jié)點(diǎn)規(guī)格。

amount Integer 1

節(jié)點(diǎn)數(shù)量。

disk Integer 20

節(jié)點(diǎn)存儲空間大小。

diskType String cloud_ssd

節(jié)點(diǎn)存儲類型(可忽略該參數(shù))。

masterConfiguration Object

Master節(jié)點(diǎn)配置。

spec String elasticsearch.sn2ne.large

節(jié)點(diǎn)規(guī)格。

amount Integer 3

節(jié)點(diǎn)數(shù)量。

disk Integer 20

節(jié)點(diǎn)的存儲空間大小,單位:GB。

diskType String cloud_ssd

節(jié)點(diǎn)的存儲類型。只支持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****"
}

返回示例補(bǔ)充說明

> 返回示例中,本文只保證包含返回數(shù)據(jù)列表中的參數(shù),而未提到的參數(shù)僅供參考,程序中不能強(qiáng)制依賴獲取這些參數(shù)。

錯誤碼

訪問錯誤中心查看更多錯誤碼。