elasticsearchがエラー「elasticsearch.service: Start operation timed out. Terminating.」が発生して起動できない場合の対処法

elasticsearchがエラー「elasticsearch.service: Start operation timed out. Terminating.」が発生して起動できない場合の対処法

elasticsearchが起動できなくなり、statusを確認するとエラー「elasticsearch.service: Start operation timed out. Terminating.」が発生。その際の対処法を記述してます。

環境

  • OS CentOS Linux release 8.1.1911 (Core)
  • Elasticsearch 7.7.0

エラー全文

「systemctl start elasticsearch.service」実行時に発生。

sudo systemctl start elasticsearch

<出力結果>
Job for elasticsearch.service failed because a timeout was exceeded.
See "systemctl status elasticsearch.service" and "journalctl -xe" for details.

「systemctl status elasticsearch.service」で確認

systemctl status elasticsearch.service

<出力結果>
● elasticsearch.service - Elasticsearch
   Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; enabled; vendor preset: disabled)
   Active: failed (Result: timeout) since 
     Docs: https://www.elastic.co
 Main PID: 15410 (code=exited, status=143)

Starting Elasticsearch...
elasticsearch.service: Start operation timed out. Terminating.
elasticsearch.service: Failed with result 'timeout'.
Failed to start Elasticsearch.

対処法

タイムアウトする時間を変更します。

まずは現在のタイムアウトの時間を確認します。

sudo systemctl show elasticsearch | grep ^Timeout
TimeoutStartUSec=1min 30s
TimeoutStopUSec=infinity

1分30秒に設定されてます。これを3分に変更します。

ディレクトリを作成します。

sudo mkdir /etc/systemd/system/elasticsearch.service.d

TimeoutStartSec = 180に設定します。

echo -e "[Service] \nTimeoutStartSec = 180" | sudo tee /etc/systemd/system/elasticsearch.service.d/startup-time
out.conf

<出力結果>
[Service]
TimeoutStartSec = 180

daemonを再起動します。

sudo systemctl daemon-reload

変更されていることを確認します。

sudo systemctl show elasticsearch | grep ^Timeout

<出力結果>
TimeoutStartUSec=3min
TimeoutStopUSec=infinity

再度起動してみます。

sudo systemctl start elasticsearch

ステータスを確認してみると正常に起動できたことが確認できました。

sudo systemctl status elasticsearch

<出力結果>
● elasticsearch.service - Elasticsearch
   Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; enabled; vendor preset: disabled)
  Drop-In: /etc/systemd/system/elasticsearch.service.d
           mqstartup-timeout.conf
   Active: active (running) since Wed 
     Docs: https://www.elastic.co
 Main PID: 16598 (java)
    Tasks: 57 (limit: 23983)
   Memory: 1.3G
   CGroup: /system.slice/elasticsearch.service
           tq16598 /usr/share/elasticsearch/jdk/bin/java -Xshare:auto -Des.networkaddress.cache.ttl=60 -Des.networkaddress.cache.negative.ttl=>
           mq16796 /usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/bin/controller

systemd[1]: Starting Elasticsearch...
systemd[1]: Started Elasticsearch.
...skipping...
● elasticsearch.service - Elasticsearch
   Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; enabled; vendor preset: disabled)
  Drop-In: /etc/systemd/system/elasticsearch.service.d
           mqstartup-timeout.conf
   Active: active (running) since Wed 
     Docs: https://www.elastic.co
 Main PID: 16598 (java)
    Tasks: 57 (limit: 23983)
   Memory: 1.3G
   CGroup: /system.slice/elasticsearch.service
           tq16598 /usr/share/elasticsearch/jdk/bin/java -Xshare:auto -Des.networkaddress.cache.ttl=60 -Des.networkaddress.cache.negative.ttl=>
           mq16796 /usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/bin/controller

Starting Elasticsearch...
Started Elasticsearch.