更新时间:2026-01-12 GMT+08:00

集群内核升级

功能介绍

该接口用于升级集群版本,实现版本优化、功能增强的业务需求。

支持如下升级类型:

  • 同版本升级:升级集群的内核补丁。集群升级至当前版本的最新镜像,用于修复问题或优化性能。例如,集群版本为“7.10.2(7.10.2_24.3.3_0102)”,同版本升级后,集群版本会升级到7.10.2版本最新的镜像“7.10.2(7.10.2_24.3.4_0109)”(版本号仅做示例,非现网实际版本号)。

  • 跨版本升级:升级集群的版本。集群升级至目标版本的最新镜像,用于功能加强或版本收编。例如,集群版本为“7.6.2(7.6.2_24.3.3_1224)”,跨版本升级后,集群版本会升级到7.10.2版本最新的镜像“7.10.2(7.10.2_24.3.4_0109)”(版本号仅做示例,非现网实际版本号)。

  • 跨引擎升级:将Elasticsearch集群升级至OpenSearch集群。Elasticsearch集群升级至OpenSearch集群目标版本的最新镜像,用于引擎变更。例如,Elasticsearch集群版本为“7.10.2(7.10.2_24.3.3_0102)”,跨引擎升级后,Elasticsearch集群会升级到OpenSearch 1.3.6版本最新的镜像“1.3.6(1.3.6_24.3.4_0109)”(版本号仅做示例,非现网实际版本号)。该功能暂不支持。

接口约束

  • 只有Elasticsearch和OpenSearch集群支持。

  • 最多同时支持20个集群升级。

  • 升级过程涉及数据迁移,单个节点的数据迁移的超时阈值为48小时,超时将导致升级失败。当集群数据量大时,建议手动调整数据迁移速率,避免在业务高峰期操作。

调用方法

请参见如何调用API

URI

POST /v1.0/{project_id}/clusters/{cluster_id}/inst-type/{inst_type}/image/upgrade

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释

项目ID。获取方法请参见获取项目ID和名称

约束限制

不涉及

取值范围

账户的项目ID。

默认取值

不涉及

cluster_id

String

参数解释

指定升级的集群ID。获取方法请参见获取集群ID

约束限制

不涉及

取值范围

集群ID。

默认取值

不涉及

inst_type

String

参数解释

指定升级的节点类型。

约束限制

不涉及

取值范围

当前仅支持all,表示所有节点。

默认取值

不涉及

请求参数

表2 请求Body参数

参数

是否必选

参数类型

描述

target_image_id

String

参数解释

目标镜像版本ID。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

upgrade_type

String

参数解释

升级类型。

约束限制

不涉及

取值范围

  • same:同版本升级。

  • cross:跨版本升级。

  • cross-engine:跨引擎升级。

默认取值

不涉及

indices_backup_check

Boolean

参数解释

是否进行全量索引快照备份检测。升级过程中涉及数据迁移,快照备份可以避免因升级失败导致的数据丢失。

约束限制

平台无法校验索引的具体内容以及备份时效性。建议人工检查备份是否超过一个月,如果超过请创建最新快照。

取值范围

  • true:进行校验。

  • false:不进行校验。

默认取值

true

agency

String

参数解释

委托名称,升级节点时需重新绑定网卡,当前账号需具备VPC资源的使用权限。通过配置IAM委托,使当前账号授权CSS服务访问其拥有的VPC资源。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

cluster_load_check

Boolean

参数解释

是否进行集群负载检测。升级过程中的数据迁移及节点重启操作会占用集群资源,提前检测可避免因负载过高导致的升级失败。

检测项包括:

  • 最大search队列排队数小于1000(nodes.thread_pool.search.queue < 1000)

  • 最大write队列排队数小于200(nodes.thread_pool.write.queue < 200)

  • 最大CPU使用率小于90%(nodes.process.cpu.percent < 90)

  • 最大load相对核数占比小于80%( nodes.os.cpu.load_average / CPU核数 < 80%)

  • 如检测异常,请等待负载降低或主动优化后再升级。

约束限制

不涉及

取值范围

  • true:进行校验,平台会评估集群的当前负载风险。

  • false:不进行校验。

默认取值

true

batch_size

Integer

参数解释

设置数据迁移并发度。提升数据迁移并发度可以加快升级进程,但是数据迁移会消耗IO性能,并发迁移数据节点越多,集群负载越高,会导致集群性能受影响。

约束限制

不涉及

取值范围

建议按需设置合适的并发度,推荐保持默认值1(节点),最大值小于数据节点数量的一半。

默认取值

不涉及

响应参数

状态码:200

请求已成功。

请求示例

更新集群版本。

POST https://{Endpoint}/v1.0/{project_id}/clusters/4f3deec3-efa8-4598-bf91-560aad1377a3/inst-type/all/image/upgrade

{
  "target_image_id" : "{target_image_id}",
  "upgrade_type" : "same",
  "indices_backup_check" : true,
  "agency" : "css-test-agency",
  "cluster_load_check" : true
}

响应示例

状态码

状态码

描述

200

请求已成功。

400

非法请求。

建议直接修改该请求,不要重试该请求。

409

服务器在完成请求时发生冲突。

返回该状态码,表明客户端尝试创建的资源已经存在,或者由于冲突请求的更新操作不能被完成。

412

未满足前提条件,服务器未满足请求者在请求中设置的其中一个前提条件。

错误码

请参见错误码