tencent cloud

文档反馈

升级 ES 集群

最后更新时间:2020-08-21 17:47:07

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

    支持的升级操作

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

    1. Elasticsearch 版本升级

      源 Elasticsearch 版本 目标 Elasticsearch 版本
      低版本(如5.6版本) 高版本(如6.8版本)
    2. 高级特性升级

      源高级特性版本 目标高级特性版本
      开源版 基础版、白金版
      基础版 白金版

      高级特性版本说明:
      基础版和白金版集成了官方高级商业特性插件(原 X-Pack),包含安全(Security)、SQL、机器学习(Machine Learning)、监控(Monitor)等高级功能,其中基础版只包含 SQL 的一部分和监控,白金版则包含所有高级特性,详细介绍可查看 高级特性(X-Pack)

      • 以上两种类型的升级一次只能操作一种,不能同时进行。低版本/开源版升级到高版本时,可同时选择升级到基础版。
      • 5.x 版本只有开源版,没有基础版和白金版。

    关于升级的重启

    1. 对于升级重启情况,在执行升级操作时,集群可能:

      • 不重启
      • 滚动重启(节点依次重启,期间服务可以正常访问,但性能可能受到部分影响,建议在集群负载不高时进行)
      • 全量重启(所有节点完全关闭后重启,期间服务不可访问,需谨慎选择)

      根据您的选择,升级界面对这些情况均会给出提示说明。

    2. 对于集群全量重启的情况,因为会涉及业务不可访问,这里做一个特别说明:
      集群全量重启与 ES 集群用户登录认证 从关闭到开启有关(可极大提升集群访问安全性),当您的集群从未开启此功能状态变化为开启此功能状态时,根据 Elastic 官方的设计要求,集群需要全量重启,期间集群不可用,因此建议您选择不影响业务的时机来慎重开启此功能。

      从关闭到开启 ES 集群用户登录认证,您还需要提前改造业务代码,通过 API 访问集群,在调用 API/SDK 时传入用户名和密码参数,否则升级后集群无法正常访问。

    3. 对 ES 集群用户登录认证能力的版本支持情况说明如下:

      • 开源版没有此能力
      • 6.8及以上基础版支持此能力(可选择是否开启)
      • 白金版默认开启此能力

      举例:

      • 从6.4开源版(无此能力)升级到6.8基础版(选择不开启此能力),不需要全量重启集群。
      • 从6.4开源版(无此能力)升级到6.8基础版(选择开启此能力),需要全量重启集群。
      • 从6.8基础版(未开启此能力)升级到6.8白金版(默认开启此能力),需要全量重启集群。
      • 从6.8基础版(已开启此能力)升级到6.8白金版(默认开启此能力),不需要全量重启集群。

    升级注意事项

    Elasticsearch 5.x版本与6.x版本兼容及使用说明

    1. index 多 type
      Elasticsearch 从 6.x 开始,不再支持一个索引多个 type。从5.x版本升级到6.x版本后,新建多 type 的索引将会报错,原有在5.x版本创建的多 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. 更多说明请参考 Breaking changes in 6.0

    升级处理流程说明

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

    1. 升级检查

      只有 Elasticsearch 版本升级会有。

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

      只有 Elasticsearch 版本升级会有。

      升级操作前,ES 会先对您的集群进行快照备份,以防升级操作失败时,可以用快照还原集群。所以,如果快照这一步失败,升级流程也会终止。快照备份耗时同集群数据量有关,如果集群未开启自动快照备份,且数据量较大,第一次快照时间会比较长。
    3. 升级过程和集群重启
    4. x及以上版本的集群,支持高级特性的升级(从开源版到基础版或白金版),升级期间服务需要重启,方式如下:
      • 若升级过程不涉及 ES 集群用户登录认证从关闭到开启,集群需滚动重启,需满足健康状态是绿色,并且不存在只配置了单个副本的索引,以及不能有 close 的索引,才能执行升级操作。升级期间,服务可以正常访问,但性能可能受到部分影响,建议在集群负载不高时进行。
      • 若升级过程涉及 ES 集群用户登录认证从关闭到开启,集群需要全量重启,期间集群会停服,服务不可访问,升级完成后才能正常访问,请谨慎选择。

    集群升级操作步骤

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

    升级 Elasticsearch 版本

    1. 在升级对话框的【升级类型】中选择【升级 Elasticsearch 版本】。
    2. 在【Elasticsearch 版本】下拉框中选择要升级到的版本。
      • 若不选择同时升级高级特性,则默认升级到高版本时保持原高级特性。
      • 特殊的:ES主版本升级,例如ES 5.x版本升级到6.x版本,可以同时把【高级特性】从开源版升级到基础版。我们也建议您选择【基础版】高级特性,其包含监控、SQL 等高级版功能。升级到6.8及以上基础版,还可以选择勾选 ES 集群用户登录认证,此时需要全量重启,期间集群会停服,服务不可访问,请谨慎选择。
    3. 我们在升级之前会先对集群状态进行检查,判断集群是否可以升级,包括检查集群的配置、集群的状态等。您可以勾选【仅做升级检查】,在单击【确定】后,仅做升级检查,不执行升级命令,您可以在详情页【集群变更记录】中查看检查结果。

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

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

    升级高级特性

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

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

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

      • 高级特性升级须知:
        目前支持6.x及以上版本的高级特性升级,5.x版本不支持(5.x版本只有开源版,无基础和白金版)。
      • 升级到不同的版本,过程有所不同,具体如下:
        • 若升级过程不涉及 ES 集群用户登录认证从关闭到开启,集群需要滚动重启,期间服务访问会受短暂影响,请在服务访问量不大时进行操作。
        • 若升级过程涉及 ES 集群用户登录认证从关闭到开启,集群需要全量重启,期间集群会停服,服务不可访问,请谨慎选择。

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

    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持