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:如何使用集群级别的分片分配过滤(不包括节点)安全地停用节点

相关推荐
Elasticsearch4 小时前
使用 Lucene 搜索你的 beans —— Facets
elasticsearch
溪语流沙4 小时前
【Web全栈进阶】Alembic数据库迁移:改表结构不再删库
前端·数据库·python·elasticsearch·postgresql
ly76898 小时前
Elasticsearch 写入链路的 refresh、flush 与 translog 边界:为什么 bulk 吞吐会突然塌陷
大数据·elasticsearch·搜索引擎·translog·写入链路·bulk调优
Elasticsearch9 小时前
AWS 自动化根因分析:从 CloudWatch 告警到完成故障诊断,仅需 36 秒
elasticsearch
欢醉11 小时前
基于日志的监控告警:我们是怎么用一套轻量方案把线上问题"盯"住的
elasticsearch·springcloud·日志
Elastic 中国社区官方博客1 天前
使用 Lucene 搜索你的 Bean — 索引
java·大数据·数据库·elasticsearch·搜索引擎·全文检索·lucene
Elasticsearch1 天前
FSCrawler 3.0 来了!你知道的,就是用来处理文件的!
elasticsearch
Elasticsearch1 天前
使用 Lucene 搜索你的 Bean — 映射
elasticsearch
码艺-Alimjan1 天前
Tauri 项目 和 Vben-Admin 项目 源码打包哲学
大数据·elasticsearch·搜索引擎
Elasticsearch2 天前
使用 Lucene 搜索你的 Bean — 索引
elasticsearch