文章目录
- 前言
- Coordinating node
- Master-eligible node
- Data node
- Coordinating only node
- Remote-eligible node
- Machine learning node
前言
通过前面的学习,我们已经初步的掌握了 ES 的大部分用法。
后面的篇章会介绍 ES 集群相关的内容。
本文着重介绍 ES 节点类型,以及他们的作用。
简单大概了解下本章的内容,为后面的学习做铺垫。
Coordinating node
协调节点,用于分发请求,汇总结果并返回给客户端。
在 ES 中,每个节点默认都是协调节点。
Master-eligible node
具有投票,选举为 master,管理集群的权限。
在生产环境,一般会设置 3 个专门的 master-eligible node
对应的修改项为:elasticsearch.yml
文件的
node.roles
配置。
node.roles: [master]
Data node
数据节点,具有对数据 CURD 的权限。
node.roles: [ data ]
为了满足数据分层架构的需要,ES 也支持将 Data node
进一步的细分。(事实上,开发中很少接触到这部分内容)
节点类型 | 作用 | 配置 |
---|---|---|
content data node | 适用于数据需要长期存储,且需要被快速检索出来,无论数据有点旧。检索速度会更快,但写入速度稍慢 | node.roles: [ data_content ] |
hot data node | 存储频繁被查询的热点时间序列数据 | node.roles: [ data_hot ] |
warm data node | 暖数据,查询频率少于热点数据 | node.roles: [ data_warm ] |
Cold data node | 冷数据,查询频率较低的数据 | node.roles: [ data_cold ] |
Frozen data node | 冻结层,不再被查询或者很少查询 | node.roles: [ data_frozen ] |
Coordinating only node
仅负责分发请求,汇总结果并返回给客户端。
node.roles: [ ]
在大型集群上,设置仅负责分发请求的协调节点会非常有效
Remote-eligible node
用于跨集群搜索、跨集群复制
node.roles: [ remote_cluster_client ]
Machine learning node
机器学习节点运行作业并处理机器学习API请求
node.roles: [ ml ]