文章目录
- 前言
- 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 ]



















