人気の投稿

2021年6月5日土曜日

Elasticsearchの起動エラーが発生したが、特別に何かしなくても解消してしまった件

 ある晴れた昼下がり、Kibanaにアクセスしたところ”Kibana server is not ready yet”というメッセージが表示された。

 

$ systemctl status kibanaで、Kibanaの状態を確認してみると、問題なく起動してた。$ systemctl status elasticsearchで、Elasticsearchの状態を確認してみると、起動中にTimeoutして起動に失敗してた。

journalctlコマンド($ journalctl -xeu elasticsearch)や、systemctlコマンド($ systemctl status elastilsearch -l)、/var/log/elasticsearch/elasticsearch.log、/var/log/messagesを見てみるが、Timeoutの理由らしきメッセージを見つけられない。

 

WebでElatisearchの起動エラーの原因を検索してみた。

  • (原因はよくわからないが、)タイムアウトの設定時間が短すぎるので、タイムアウト設定を長くする
 $ systemctl show elasticsearch | grep ^Timeout
TimeoutStartUSec=1min 15s
TimeoutStopUSec=infinity
JobTimeoutUSec=infinity
JobRunningTimeoutUSec=infinity
JobTimeoutAction=none

TimeoutStartUSecを3分にする
$ sudo mkdir /etc/systemd/system/elasticsearch.service.d
$ echo -e "[Service] \nTimeoutStartSec = 180" | sudo tee /etc/systemd/system/elasticsearch.service.d/startup-timeout.conf
 
<出力結果>
[Service]
TimeoutStartSec = 180

$ sudo systemctl daemon-reload

$ sudo systemctl show elasticsearch | grep ^Timeout
 
<出力結果>
TimeoutStartUSec=3min
TimeoutStopUSec=infinity
  • Elasticsearchに割り当てているメモリサイズが大きすぎるので、/etc/elasticesearch/jvm.options のXmsとXmxの値を小さくする(Xms(最小ヒープサイズ)とXmx(最大ヒープサイズ)は等しい値にする必要がある)

$ sudo vi /etc/elasticsearch/jvm.options

-Xms2G

-Xmx2G

  •  /etc/elasticsearch/elasticsearch.ymlの記述ミスを修正する
  • などなど

 

ただ、特に対処をしないままにElasticsearchを起動したら、問題なく起動してきてしまった。謎だ。 orz

0 件のコメント:

コメントを投稿