Slide 18
Slide 18 text
(C) Recruit Technologies Co., Ltd. All rights reserved.
18
しかし、ElasticsearchのNodeID重複問題
Elasticsearchはインストール後の初回起動時にUUIDからNode固有のIDを自動的に採番する。
セットアップ完了後のElasticsearchをAMI化して、AMIからデプロイしてもID重複でクラスタに参加できない。
[2019-02-02T20:51:28,290][INFO ][o.e.d.z.ZenDiscovery] [ip-172-31-45-213.ap-northeast-1.compute.internal] failed to send join request to master [{ip-172-
31-23-102.ap-northeast-
1.compute.internal}{qbr7eEEtRvSxBfr04UpZnA}{cWhb4V6QTfeDZ5QTg2cuww}{172.31.23.102}{172.31.23.102:9300}{aws_availability_zone=ap-northeast-
1c, ml.machine_memory=32657526784, ml.max_open_jobs=20, xpack.installed=true, ml.enabled=true}], reason [RemoteTransportException[[ip-172-31-23-
102.ap-northeast-1.compute.internal][172.31.23.102:9300][internal:discovery/zen/join]]; nested: IllegalArgumentException[can't add node {ip-172-31-45-
213.ap-northeast-
1.compute.internal}{6t_7UYxSRSOcVo4LslAi5w}{2AXoOZ35RKGgHfpjAZMo4A}{172.31.45.213}{172.31.45.213:9300}{aws_availability_zone=ap-northeast-1d,
ml.machine_memory=32657526784, ml.max_open_jobs=20, xpack.installed=true, ml.enabled=true}, found existing node {ip-172-31-8-191.ap-northeast-
1.compute.internal}{6t_7UYxSRSOcVo4LslAi5w}{ZQXuCv3oTsa57t7zgUWnEg}{172.31.8.191}{172.31.8.191:9300}{aws_availability_zone=ap-northeast-1a,
ml.machine_memory=32657526784, ml.max_open_jobs=20, xpack.installed=true, ml.enabled=true} with the same id but is a different node instance]; ]
【ID重複時のelasticsearch.logのエラー内容】
【参考】 node.name (node.id採番ルール)
https://www.elastic.co/guide/en/elasticsearch/reference/6.6/node.name.html
上記ログより、3台のElasticsearchノードのIPアドレスとnode.idは以下の通りとなっている。①と③が重複(6t_7Uから始まるID)していて、①をAMI化したものから③を展開している。
① 172.31.8.191 1 {6t_7UYxSRSOcVo4LslAi5w}
② 172.31.23.102 2 {qbr7eEEtRvSxBfr04UpZnA}
③ 172.31.45.213 3 {6t_7UYxSRSOcVo4LslAi5w}
[root@ip-172-31-45-213 ~]# cat /var/lib/elasticsearch/nodes/0/_state/node-xx.st
?lstate:)
node_idU6t_7UYxSRSOcVo4LslAi5w(,%
【node.id 格納場所】