ElasticSearch--节点的类型

本文介绍了Elasticsearch中不同类型的节点,包括主节点、数据节点、摄取节点和客户端节点,以及如何配置它们以满足集群的不同需求。重点讲解了主节点的控制职责和数据节点的数据存储功能,适合深入了解ES集群架构的读者。
摘要由CSDN通过智能技术生成

原文网址:ElasticSearch--节点的类型_IT利刃出鞘的博客-CSDN博客

简介

说明

本文介绍ES节点的类型。

ES集群是由多个ES实例组成的,一个Elasticsearch实例就是一个node。

节点类型及配置

节点类型

配置参数

默认值/设置方法

候选主节点

node.master

true

数据节点

node.data

true

摄取节点

node.ingest

true

客户端节点

将前三个参数全部设置为false

部落节点tribe:*:
协调节点将前三个参数全部设置为false

machine learning

node.ml

true(需要enable x-pack)

粉丝福利:有很多粉丝私信问我有没有Java的面试及PDF书籍等资料,我整理一下,包含:真实面试题汇总、简历模板、PDF书籍、PPT模板等。这些是我自己也在用的资料,面试题是面试官问到我的问题的整理,其他资料也是我自用的,真正实用、靠谱。资料可以从这里免费获取:资料地址

主节点(Master node)

作用

        主节点不接受客户端的请求。它的作用如下:

  1. 控制集群中的操作
    1. 创建/删除索引
    2. 决定分片⽚被分配到哪个节点
    3. 跟踪哪些节点是群集的一部分
  2. 控制集群的状态
    1. 处理集群的状态并广播到其他节点,接收其他节点的确认响应

用法

默认情况下任何一个集群中的节点都可能被选为主节点(node.master属性默认为true)。

对于大型的生产集群来说,推荐使用一个专门的主节点来控制集群,该节点将不处理任何用户请求,稳定的主节点对集群的健康是非常重要的。一般部署多个主节点(避免单点问题),主节点数量一般是奇数,比如:3个。

将节点专门作为候选主节点的方法:elasticsearch.yml中的node.master属性设置为true(默认),node.data属性设置为false。

候选主节点(Master Eligible Nodes)

⼀个集群⽀持配置多个 Master Eligible 节点,这些节点在必要时(如 Master 节点出现故障,网络故障时)参与选主流程,成为 Master 节点。

节点默认是 Master eligible 节点(node.master属性默认为true)。可以将某个节点设置为禁止参与选举:设置 node.master: false;

数据节点(Data node)

作用

数据节点的作用如下:

  1. 存储数据
  2. 执行数据相关的操作
    1. 增删改查
    2. 搜索
    3. 聚合操作
    4. ...

用法

节点默认就是数据节点(node.data属性默认为true)。

通过增加数据节点,可以解决数据水平扩展和解决数据单点问题。

数据节点对cpu,内存,io要求较高,在优化的时候需要监控数据节点的状态,当资源不够的时候,需要在集群中添加新的节点。

设置

elasticsearch.yml:node.data: true。

如果要使用一个专门的主节点,就将它禁止作为数据节点,方法是设置elasticsearch.yml: node.data: false。

摄取节点(Ingest Node)

作用

摄取节点是用来对document写入索引文件之前进行预处理的。

可以使用摄取节点对每个document都执行一条ingest pipeline,在document写入索引文件之前,先对其数据进行处理和转化,例如:删除字段,重命名字段,修改字段值等。

用法

默认情况下,所有节点都是Ingest Node(node.ingest属性默认为true)。

如果要执行的ingest操作太过繁重,那么可以规划单独的一批ingest node出来,然后将node.master和node.data都设置为false即可。

客户端节点(Client Node)

作用

客户端节点是既不做候选主节点也不做数据节点的节点,只负责请求的分发、汇总等。若是单独增加这种节点主要是更多地为了提高并发性。

用法

将节点设置为客户端节点的方法:修改elasticsearch.yml,将node.master属性和node.data属性都设置为false。

部落节点(Tribe Node)

作用

部落节点可以跨越多个集群,它可以接收每个集群的状态,然后合并成一个全局集群状态。它可以读写所有节点上的数据。

用法

部落节点在elasticsearch.yml中的配置如下:tribe:*:

协调节点(Coordinating Node)

作用

协调节点处理请求的节点,负责路由请求到正确的节点。集群中任何一个节点都可以是协调节点。

例1:协调节点将创建索引的请求路由到 Master 节点;

例2:节点A接收到用户的查询请求,会把查询语句分发到其他节点,然后合并各个节点返回查询结果,最后将完成的聚合结果返回给用户。这个请求中节点A的扮演的就是协调节点的角色。

用法

可以使某个节点成为专门负责协调的节点:将其他类型(data node/master node/master eligible node)设置成 False。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT利刃出鞘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值