所以,我刚刚开始在我的本地机器上使用Elasticsearch。
我已经启动了5个Elasticsearch节点实例。(简单./bin/elasticsearch
)
curl -s 'localhost:9200/_cat/nodes?v'
给出:
host ip heap.percent ram.percent load node.role master name
127.0.0.1 127.0.0.1 5 99 3.13 d m Shirow Ishihara
127.0.0.1 127.0.0.1 7 100 3.13 d m Madame Web
127.0.0.1 127.0.0.1 5 100 3.13 d m Anthropomorpho
127.0.0.1 127.0.0.1 5 100 3.13 d m Paste-Pot Pete
127.0.0.1 127.0.0.1 2 100 3.13 d * Mephisto
我的索引有2个主分片和5个副本(总共10个副本)。
我读到ES自动水平扩展并将分片分配/移动到新节点。然而,所有的10个副本仍然是未分配的,两个主分片都在同一个节点上。
curl -s 'localhost:9200/_cat/allocation?v'
给出:
shards disk.indices disk.used disk.avail disk.total disk.percent host ip node
0 0b 105.5gb 6.2gb 111.8gb 94 127.0.0.1 127.0.0.1 Shirow Ishihara
0 0b 105.5gb 6.2gb 111.8gb 94 127.0.0.1 127.0.0.1 Paste-Pot Pete
2 318b 105.5gb 6.2gb 111.8gb 94 127.0.0.1 127.0.0.1 Mephisto
0 0b 105.5gb 6.2gb 111.8gb 94 127.0.0.1 127.0.0.1 Anthropomorpho
0 0b 105.5gb 6.2gb 111.8gb 94 127.0.0.1 127.0.0.1 Madame Web
10 UNASSIGNED
您的可用磁盘空间太少,ES实际上正在尝试移走一些分片。但是所有的节点都在同一台机器上,因此没有其他地方可以移动它们,因此它们保持未分配状态。磁盘已用空间大于磁盘总大小的90%,ES已达到高水位告警解释