Elasticsearch:如何从 Elasticsearch 集群中删除数据节点

Elasticsearch 集群通常包含多个节点,并且可能存在需要从集群中删除节点的情况。 应谨慎执行此过程,以确保数据的完整性和可用性。 在本文中,我们将引导你完成从 Elasticsearch 集群安全删除节点的步骤。

确保集群是绿色的

在尝试从 Elasticsearch 集群中删除节点之前,确保集群处于健康状态(以 "绿色" 状态表示)至关重要。 绿色集群意味着所有主分片和副本分片均已分配并且 Elasticsearch 运行顺利。 要检查集群状态,你可以使用以下 Elasticsearch API 调用:

bash 复制代码
GET _cluster/health

在继续删除过程之前,请确保响应中的 "status" 字段为 "绿色"。如果集群状态为 "黄色" 或 "红色",则表明分片分布存在问题,你应该首先解决这些问题。

将分片移动到其他节点

要安全地从 Elasticsearch 集群中删除节点,你必须将其分片重新分配到其他节点。 这是确保集群数据可用性和可靠性的关键一步。 使用以下 Elasticsearch API 调用排除要删除的节点:

bash 复制代码
1.  PUT _cluster/settings
2.  {
3.    "transient": {
4.      "cluster.routing.allocation.exclude._ip": "10.0.0.1"
5.    }
6.  }

将 "10.0.0.1" 替换为您要删除的节点的 IP 地址。

此命令将显示有关分片分配的信息,包括磁盘使用情况和节点详细信息。 当你看到所有分片已分配给其他节点并且你要删除的节点不再托管任何分片时,你可以安全地继续删除该节点。

不过,按 IP 地址排除并不是唯一的过滤方式。 事实上,有许多属性可以用来排除。

这是一个列表:

  • _name:可以通过节点名匹配节点
  • _host_ip:可以通过主机IP地址匹配节点(IP与主机名相关联)
  • _publish_ip:可以通过发布 IP 地址匹配节点
  • _ip:你可以匹配 _host_ip 或 _publish_ip
  • _host:可以通过主机名匹配节点
  • _id:可以通过节点 id 匹配节点
  • _tier:可以通过节点的数据层角色匹配节点

监控分配过程

必须密切关注分配过程,以确保所有分片已成功重新定位到其他节点。 你可以使用 Elasticsearch cat API 来执行此操作,如下所示:

bash 复制代码
GET _cat/allocation?v

此命令将显示有关分片分配的信息,包括磁盘使用情况和节点详细信息。 当您看到所有分片已分配给其他节点并且您要删除的节点不再托管任何分片时,你可以安全地继续删除该节点。

对其他节点重复步骤

如果要从 Elasticsearch 集群中删除多个节点,请对要从集群中删除的每个节点重复步骤 2 和 3。 这种增量方法可确保你在整个删除过程中保持 Elasticsearch 集群的稳定性和可用性。

结论

从 Elasticsearch 集群中删除节点是一项微妙的操作,需要仔细规划和执行。 通过遵循本指南中概述的步骤,你可以安全地重新分配分片、监控分配过程并维护数据的完整性。 在进行任何更改之前,请务必记住查阅 Elasticsearch 文档并考虑集群的特定需求。 正确管理集群操作(例如节点删除)对于确保 Elasticsearch 部署的持续可靠性和性能至关重要。

继续阅读:Elasticsearch:如何使用集群级别的分片分配过滤(不包括节点)安全地停用节点

相关推荐
Elastic 中国社区官方博客1 天前
Elastic 重大事件功能如何将 100 条日志样本转化为检测规则
大数据·运维·数据库·人工智能·elasticsearch·搜索引擎
Elasticsearch1 天前
使用 OpenTelemetry 在 Elastic 中实现 Claude 平台的人工智能 agent 可观测性
elasticsearch
keyipatience2 天前
Git学习(2)撤销与分支操作全指南
大数据·elasticsearch·搜索引擎
加洛斯2 天前
万字推演Elasticsearch修炼方法,从炼气到元婴
后端·elasticsearch·面试
说实话起个名字真难啊2 天前
Git常用小问题笔记
笔记·git·elasticsearch
Elasticsearch2 天前
三个区域、三个 Kibana、一个视图:跨集群搜索登陆 Elastic 合成监测
elasticsearch
keyipatience2 天前
Git学习(3)合并冲突全解析:从原理到实战解决
大数据·elasticsearch·搜索引擎
刘老高2 天前
微服务架构实战:ShardingSphere Proxy + Canal 分库分表与 ES 同步全链路
elasticsearch·微服务·架构
Elasticsearch2 天前
Elastic 重大事件功能如何将 100 条日志样本转化为检测规则
elasticsearch
Elastic 中国社区官方博客3 天前
5 分钟内将 56 页扫描文档转化为带引用的答案:面向搜索无法读取的文档的检索增强生成流水线
大数据·运维·人工智能·elasticsearch·搜索引擎·信息可视化·全文检索