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

这篇具有很好参考价值的文章主要介绍了Elasticsearch:如何使用集群级别的分片分配过滤(不包括节点)安全地停用节点。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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

当你想停用 Elasticsearch 中的节点时,通常的过程不是直接销毁节点。 如果你这样做,那么你就有数据丢失的风险,这不是你想要对应该是可靠的数据库做的事情。

这样做的问题是,节点很可能会通过 Elasticsearch 处理的恰当命名的分片分配分配给它们的分片。

Elasticsearch 中的 master 负责分片分配以及何时在节点之间移动分片以重新平衡集群。

那么随着这一切的进行,如何才能停用 Elasticsearch 节点呢? 是不是太冒险了?

幸运的是,有一种方法,叫做集群级分片分配过滤。

通过集群级别的分片分配过滤器,你可以控制 Elasticsearch 从任何索引为整个集群分配分片的位置。

你可以通过 Cluster API 设置这些过滤器; 具体来说,你可以对 _cluster/settings 端点执行 PUT 请求。

假设你要停用 IP 地址为 10.0.0.1 的节点。

为此,你将使用以下命令在集群上执行 PUT 请求:

PUT _cluster/settings
{
 “persistent” : {
 “cluster.routing.allocation.exclude._ip” : “10.0.0.1”
 }
}

然后,Elasticsearch 将知道移动与此匹配的节点分片。 你应该看到分片将变为 0。

当它们确实变为 0 时,就可以安全地停用该节点。

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

这是一个列表:

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

你可以做的另一件很酷的事情是在您的过滤器中使用通配符来进行集群级别的分片分配。

例如,假设你想排除所有匹配前缀 myfirstdatabase 的 Elasticsearch 节点。

你可以这样做:

PUT _cluster/settings
{
  "persistent": {
    "cluster.routing.allocation.exclude._name": "myfirstdatabase*"
  }
}

因此,名为 myfirstdatabase-1 的节点将被排除在分片分配之外,myfirstdatabase-2 也是如此。文章来源地址https://www.toymoban.com/news/detail-470616.html

到了这里,关于Elasticsearch:如何使用集群级别的分片分配过滤(不包括节点)安全地停用节点的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 记录ElasticSearch分片被锁定导致无法分配处理过程

    本篇文章记录最近ES做节点替换, 从shard 迁移过程中被锁定导致无法分配, 主shard正常 ,希望可以帮助其它人 failed to create shard,failed to obtain in-memory shard lock,ShardLockObtainFailedException 这次遇到的问题比较特殊,尝试过以下几种手段都没有恢复: _cluster/reroute手动分片shard 由于

    2024年02月05日
    浏览(33)
  • Elasticsearch基础篇(七):分片大小修改和路由分配规则

    在Elasticsearch中,分片是对索引数据的水平划分和分布。索引被分成多个分片,每个分片可以在集群的不同节点上存储。这种分片的设计提供了一种水平扩展的能力,允许将大量数据分布到多个节点上,从而提高性能和可伸缩性。每个分片就是一个Lucene的实例,具有完整的功能

    2024年01月21日
    浏览(49)
  • Elasticsearch的集群负载均衡与分片分片

    Elasticsearch是一个分布式、实时的搜索和分析引擎,它可以处理大量数据并提供快速、准确的搜索结果。在大规模应用中,Elasticsearch的性能和可用性是关键因素。为了确保高性能和高可用性,Elasticsearch需要实现集群负载均衡和分片分片。 在本文中,我们将深入探讨Elasticsear

    2024年04月25日
    浏览(30)
  • elasticsearch——ES集群分片不平衡处理

    在使用云上的一个ES集群的时候,发现搜索性能很差,查看分片情况,发现ES有12个节点,索引创建了10个分片,1个副本,最后20个分片全在其中3个节点上,分布不均衡,实际只消耗了3个节点的资源,所以性能很差,再次创建新的索引,发现仍然是这种情况,最后通过下面的命

    2024年02月13日
    浏览(31)
  • ElasticSearch---查询es集群状态、分片、索引

    查看es集群状态: 如果?后面加上pretty,能让返回的json格式化。 加上?v的返回结果,如下: 解释如下: 查看es分片信息: 查看es分片信息,模糊匹配,比如匹配test: 返回信息如下: 解析如下: 查看状态为unassigned的es分片信息: 查看es索引 查看es所有索引: indices表示索引,是

    2024年02月02日
    浏览(33)
  • ElasticSearch的集群、节点、索引、分片和副本

    Elasticsearch是面向文档型数据库,一条数据在这里就是一个文档。为了方便大家理解,我们将Elasticsearch里存储文档数据和关系型数据库MySQL存储数据的概念进行一个类比 ES里的Index可以看做一个库,而Types相当于表,Documents则相当于表的行。 这里Types的概念已经被逐渐弱化,E

    2024年02月02日
    浏览(92)
  • Elasticsearch 的节点、集群、分片和副本 全面解析

    节点是 Elasticsearch 实例的运行实例,即一个独立的 Elasticsearch 服务进程。每个节点都是一个独立的工作单元,负责存储数据、参与数据处理(如索引、搜索、聚合等)以及参与集群的协调工作。节点可以在物理或虚拟机上单独部署,也可以在同一台机器上运行多个节点(但需

    2024年04月27日
    浏览(29)
  • elasticsearch7.x 集群的搭建和分片设置

    目录   一、es集群的基本核心概念 二、es集群搭建 三、es集群索引分片管理 3.1创建索引,指定分片  3.2索引分片的分配 3.2.1 手动移动分片:  3.2.1 修改副分片数量 Cluster 集群: 一个 Elasticsearch 集群由一个或多个节点(Node)组成,每个集群都有一个共同的集群名称作为 标识。

    2023年04月25日
    浏览(38)
  • elasticSearch核心概念的介绍(十四):ES集群索引分片管理

    上一章节我们对ES的集群进行了搭建,有兴趣的朋友可以参考一下elasticSearch核心概念的介绍(十三):docker搭建ES集群 这里我们来介绍了ES集群索引的分片管理 ES集群索引分片管理 介绍 分片(shard):因为ES是个分布式的搜索引擎,所以索引通常都会分解成不同部分,而这些

    2023年04月27日
    浏览(45)
  • Elasticsearch 集群分片出现 unassigned 其中一种原因详细还原

    🏡 个人主页:IT贫道_大数据OLAP体系技术栈,Apache Doris,Clickhouse 技术-CSDN博客  🚩 私聊博主:加入大数据技术讨论群聊,获取更多大数据资料。  🔔 博主个人B栈地址:豹哥教你大数据的个人空间-豹哥教你大数据个人主页-哔哩哔哩视频 目录 背景 问题复原 问题排查和定位

    2024年02月06日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包