https://www.elastic.co/guide/en/elasticsearch/reference/7.13/modules-node.html
含义: 一个es实例就是一个node 多个node组成Cluster 协议: node与node之间:transport层协议 node与客户端之间:http协议 查看node命令: GET _cat/nodes?vnode roles 1.master (1)主节点 active node
功能: 具有投票 && 选举,配置voting-only角色都不可以成为active角色 注意事项: 1.避免重负载:尽量负责轻量级集群范围的操作,避免做CRUD数据的操作 2.主节点必须有一个 path.data目录(2)master-eligible角色
功能: 具有成为master节点资格的节点 候选节点/投票节点 master-eligible 分类: (1)Dedicated master-eligible node 专用主节点 仅仅只配置一个master角色,专用主合格节点 投票+选举 配置:node.roles: [ master ] 场景:避免主节点因其他任务而过载,让仅具有主节点角色的专用主节点,让他们专注于管理集群 (2)Voting-only master-eligible node 仅投票的主合格节点,只有选举权,没有被选举权 配置:node.roles: [master, voting_only,.... ] 必须先具有master角色,在限制为voting-only,所以这种角色必须同时具有master和voting_only 也可以结合补充其他角色,一般充当数据节点避免资源浪费 HA框架中 voting_only可以使用设备稍微低一点物理机,节约资源 场景:解决脑裂问题2.关于data (1)data
功能 保存索引 文档 分片 进行数据CRUD 搜索 聚合 分离主角色和数据角色 专用数据节点 node.roles: [ data ] 场景:主角色和数据角色的分离 含有数据节点 node.roles: [ data, xxx ](2)关于冷热节点、 索引生命周期
data_content 存储用户创建的内容,支持 CRUD、搜索和聚合等操作 node.roles: [ data_content ] data_hot 处理热点数据,高频访问 要求较好的硬件资源 node.roles: [ data_hot ] data_warm 中频访问,不需要更新的数据 node.roles: [ data_warm ] data_cold 低频访问+不再更新的数据,ILM过程中可待删除 node.roles: [ data_cold ] data_frozen 数据冻结,一般专门存储部分安装的索引3. ingest预处理节点
配合管道操作时候必要角色 管道:GET _ingest/pipeline 配置:node.roles: [ ingest ]4. remote_cluster_client 远程节点
跨集群搜索必须的角色 配置:node.roles: [ remote_cluster_client ]5. 其他
协调节点 不配置任何角色的节点 node.roles: [ ] 机器学习节点 用于处理机器学习的功能,一般都是配合集群使用 node.roles: [ ml, remote_cluster_client] 转换节点 X-pack专用角色,转换节点运行转换并处理转换 API 请求 node.roles: [ transform, remote_cluster_client ]



