升级 ES 集群

最近更新时间:2019-07-19 16:29:52

腾讯云 ES 提供了版本升级的功能,支持 ES 从低版本向高版本的升级,以及高级特性的升级,您可以根据业务的需要对集群进行升级操作,实现业务的无缝过度。

说明:

版本升级暂时通过白名单开放,如果您需要此功能,可以通过 工单咨询

支持的升级操作

ES 支持以下两种类型的升级。

  1. Elasticsearch 版本升级

    源 Elasticsearch 版本 目标 Elasticsearch 版本
    5.6.4 6.4.3
  2. 高级特性升级

    源高级特性版本 目标高级特性版本
    开源版 基础版、白金版
    基础版 白金版
    高级特性版本说明:
    基础版和白金版集成了官方高级商业特性插件(原 X-Pack),包含安全(Security)、SQL、机器学习(Machine Learning)、监控(Monitor)等高级功能,其中基础版只包含 SQL 的一部分和监控,白金版则包含所有高级特性,详细介绍可查看 [高级特性(X-Pack)](https://cloud.tencent.com/document/product/845/34926)。

说明:

  1. 以上两种类型的升级,一次只能操作一种,不能同时操作。特别地,当5.6.4版本升级到6.4.3版本时,可以同时选择升级到基础版。基础版会有 ES 官方高级特性插件 X-Pack 提供的监控和 SQL 等能力,我们建议您在从5.6.4版本升级到6.4.3版本时,也选择升级到基础版。
  2. 5.6.4版本暂时只支持开源版,不支持升级到基础版和白金版。

升级注意事项

Elasticsearch 5.6.4版本与6.4.3版本兼容及使用说明

  1. index 多 type
    Elasticsearch 从 6.x 开始,不再支持一个索引多个 type。从5.6.4版本升级到6.4.3版本后,新建多 type 的索引将会报错,原有在5.6.4版本创建的多 type 索引,不受影响,可以正常写入。
  2. curl 访问集群
    用 curl 访问集群时,需要增加请求header -H 'Content-Type: application/json'
     curl -XPUT http://10.0.0.2:9200/china/city/beijing -H 'Content-Type: application/json' -d'
     {
         "name":"北京市",
         "province":"北京市",
         "lat":39.9031324643,
         "lon":116.4010433787,
         "x":6763,
         "level.range":4,
         "level.level":1,
         "level.name":"一线城市",
         "y":6381,
         "cityNo":1
     }
  3. 配置项兼容
    Elasticsearch 不同版本之间会存在一些不兼容的配置,如果您有设置,升级后可能会影响集群的使用。ES 升级功能提供了配置项的检查流程,也提供了调整说明,见下文 升级检查
  4. 更多说明请参考 ES 6.4.3 Release Notes

升级处理流程说明

Elasticsearch 版本升级,需要先进行升级检查、数据备份两个步骤。前两项成功后,才会开始执行升级操作。

  1. 升级检查

    说明:

    只有 Elasticsearch 版本升级会有。

    检查升级前后两个版本是否有不兼容的配置,如果检查不通过,流程就会终止。如果升级过程中,遇到升级检查不通过的情况,您可以查看具体的检查项和相应的解决方案。具体请参考 升级检查
    您也可以在升级操作前,只选择升级检查操作,查看集群是否满足升级条件。

  2. 快照备份

    说明:

    只有 Elasticsearch 版本升级会有。

    升级操作前,ES 会先对您的集群进行快照备份,以防升级操作失败时,可以用快照还原集群。所以,如果快照这一步失败,升级流程也会终止。快照备份耗时同集群数据量有关,如果集群未开启自动快照备份,且数据量较大,第一次快照时间会比较长。

  3. 升级过程和集群重启
    6.4.3版本的集群,支持高级特性的升级,从开源版到基础版或白金版,升级期间服务需要重启,重启方式如下:

    • 从开源版升级到基础版,集群需滚动重启,需满足健康状态是绿色,并且不存在只配置了单个副本的索引,以及不能有 close 的索引,才能执行升级操作。升级期间,服务可以正常访问,但会影响部分性能,建议在集群访问量不大时进行。
    • 从基础版到白金版,集群要开启安全权限认证功能,需要全量重启,才能完成操作。全量重启期间,集群会停服,服务不可访问,升级完成后,才能正常操作。

集群升级操作步骤

  1. 登录 ES 控制台,进入集群详情页,单击右上角【升级】。
  2. 在升级对话框中可以选择升级 Elasticsearch 版本或选择升级高级特性。

升级 Elasticsearch 版本

  1. 在升级对话框的【升级类型】中选择【升级 Elasticsearch 版本】。

  2. 在【Elasticsearch 版本】下拉框中选择要升级到的版本。

    说明:

    ES 5.6.4版本升级到6.4.3版本,可以同时把【高级特性】从开源版升级到基础版。我们也建议您选择【基础版】高级特性,其包含监控、SQL 等高级版功能。如您取消选择【基础版】,将会升级到6.4.3开源版。

  3. 我们在升级之前会先对集群状态进行检查,判断集群是否可以升级,包括检查集群的配置、集群的状态等。您可以勾选【仅做升级检查】,在单击【确定】后,仅做升级检查,不执行升级命令,您可以在详情页【集群变更记录】中查看检查结果。

    说明:

    ES 5.6.4版本到6.4.3版本,有些集群级别的配置项和索引级别的配置项不兼容,需要通过【升级检查】判断集群是否可升级。整个升级检查会检查一些配置项,错误的配置项,需要您进行调整,告警的配置项可以选择性调整,具体可查看。

  4. 阅读升级须知,同意并勾选后单击【确定】开始版本升级(如勾选【仅做升级检查】则开始版本升级检查)。

升级高级特性

  1. 在升级对话框中选择【升级类型】>【升级[高级特性]版本】。

  2. 在【高级特性】中选择要升级到的高级特性版本。

  3. 单击【确定】开始升级。

    注意:

    高级特性升级须知:
    目前仅支持6.4.3版本的开源版向基础版或白金版升级,以及基础版向白金版升级,5.6.4版本暂不支持。
    升级到不同的版本,过程有所不同,请注意:

    • 基础版:升级到基础版时,集群需要滚动重启,期间服务访问会受短暂影响,请在服务访问量不大时进行操作。开始升级后,流程无法取消。
    • 白金版:升级到白金版时,集群需要进行全量重启,集群会出现短时间无法访问的情况,请谨慎操作。开始升级后,流程无法取消。

  1. 开始升级后,可以在集群详情页的【集群变更记录】中查看升级进度。