📜  Elasticsearch-版本之间的迁移

📅  最后修改于: 2020-10-30 14:16:01             🧑  作者: Mango


在任何系统或软件中,当我们升级到较新版本时,我们需要遵循一些步骤来维护应用程序设置,配置,数据和其他内容。需要执行以下步骤才能使应用程序在新系统中稳定或维护数据的完整性(防止数据损坏)。

您需要按照以下步骤升级Elasticsearch-

  • https://www.elastic.co/阅读升级文档

  • 在非生产环境(例如UAT,E2E,SIT或DEV环境)中测试升级版本。

  • 请注意,如果没有数据备份,则无法回滚到先前的Elasticsearch版本。因此,建议在升级到更高版本之前进行数据备份。

  • 我们可以使用完全集群重启或滚动升级进行升级。滚动升级适用于新版本。请注意,在使用滚动升级方法进行迁移时,没有服务中断。

升级步骤

  • 在升级生产集群之前,请在开发环境中测试升级。

  • 备份您的数据。除非具有数据快照,否则无法回滚到早期版本。

  • 在开始升级过程之前,请考虑关闭机器学习作业。虽然机器学习作业可以在滚动升级期间继续运行,但会在升级过程中增加群集的开销。

  • 按以下顺序升级Elastic Stack的组件-

    • 弹性搜索
    • 基巴纳
    • Logstash
    • 节拍
    • APM服务器

从6.6或更早版本升级

要直接从6.0-6.6版本升级到Elasticsearch 7.1.0,您必须手动重新索引需要结转的所有5.x索引,并执行完全集群重启。

完整集群重启

完全集群重新启动的过程包括关闭集群中的每个节点,将每个节点升级到7x,然后重新启动集群。

以下是完整集群重新启动需要执行的高级步骤-

  • 禁用分片分配
  • 停止索引编制并执行同步刷新
  • 关闭所有节点
  • 升级所有节点
  • 升级任何插件
  • 启动每个升级的节点
  • 等待所有节点加入集群并报告黄色状态
  • 重新启用分配

重新启用分配后,群集将开始将副本分片分配给数据节点。在这一点上,恢复索引和搜索是安全的,但是如果您可以等待直到成功分配了所有主分片和副本分片并且所有节点的状态为绿色,则群集将恢复得更快。