今天嘗試在一臺Centos機器上運行多個ES節(jié)點,記錄一下遇到的問題。
需要設置vm.max_map_count=262144
跑一個節(jié)點沒有問題,在啟動了第二個和第三個節(jié)點后,發(fā)現(xiàn)啟動失敗了,報錯需要把vm.max_map_count設為至少262144。
sudo sysctl -w vm.max_map_count=262144
為了防止機器重啟,配置丟失的問題,可以把配置寫到/etc/sysctl.conf。
無法綁定9200端口
這個其實是一個配置的緣故,默認情況下,如果不配置端口,ES以開放模式啟動時,會自動分配端口。
但是,這一臺Centos7原本只跑了一個ES節(jié)點,我當時在配置文件elasticsearch.yml中設置了配置:
http.port: 9200
這樣,用命令行啟動時,3個實例都會去綁定9200端口,自然,只有一個實例能夠成功。最終導致的結果是,啟動了3個實例,最終只有一個實例在運行。
解決方案也很簡單,在配置中將這一行注釋掉就可以了。