下面是我的 Elasticsearch 集群的节点状态(请关注node.role
列,
[root@manager]# curl -XGET http://192.168.6.51:9200/_cat/nodes?v
ip heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name
192.168.6.54 20 97 0 0.00 0.00 0.00 dim - siem03.arif.local
192.168.6.51 34 55 0 0.16 0.06 0.01 l - siem00.arif.local
192.168.6.52 15 97 0 0.00 0.00 0.00 dim * siem01.arif.local
192.168.6.53 14 97 0 0.00 0.00 0.00 dim - siem02.arif.local
来自 Elasticsearch 文档,
node.role, r, role, nodeRole (默认(节点的角色。返回的值包括 m(符合主节点条件的节点(、d(数据节点(、i(摄取节点(和 -(仅限协调节点(。
因此,从上面的输出来看,dim
意味着数据 + 主节点 + 采集节点。这是绝对正确的。但我将主机siem00.arif.local
配置为协调节点。但它显示了l
这不是文档描述的选项。
这是什么意思呢?它只是-
之前。但是在更新后(我已经在每个节点上推送了更新(,它不再工作,并在node.role
中显示l
更新:
- 除协调节点外,所有其他节点都回到了 1 个版本。现在我已经用完全相同的版本更新了所有节点。现在它可以工作,这是输出,
[root@manager]# curl -XGET http://192.168.6.51:9200/_cat/nodes?v
ip heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name
192.168.6.53 9 79 2 0.00 0.20 0.19 dilm * siem02.arif.local
192.168.6.52 13 78 2 0.18 0.24 0.20 dilm - siem01.arif.local
192.168.6.51 33 49 1 0.02 0.21 0.20 l - siem00.arif.local
192.168.6.54 12 77 4 0.02 0.19 0.17 dilm - siem03.arif.local
当前版本是:
[root@manager]# rpm -qa | grep elasticsearch
elasticsearch-7.4.0-1.x86_64
内置角色确实是d
、m
、i
和-
,但如果需要,任何插件都可以自由定义新角色。还有另一个称为v
的节点,用于仅投票节点。
l
角色是针对机器学习节点(即具有node.ml: true
的节点(,如MachineLearning
插件中MachineLearning.java
的源代码所示。