Service

Elasticsearch 服務經常宕機或被殺死

  • March 14, 2021

我的網路伺服器正在執行帶有 elasticsearch 1.5.0 和 java 1.7u55 的 ubuntu 14.10

由於某種原因,elasticsearch 服務經常出現故障,導致我的使用者不再可以訪問我的網站(使用 FOSElasticaBundle 和 symfony)。

我正在使用 systemctl 自動重新啟動它,但我希望一勞永逸地修復它。我覺得我擁有的日誌描述性不夠。作為管理伺服器的新手,我需要一些幫助。

有人可以幫我找出失敗的原因嗎?我可以在此處輸出哪些正確文件以更好地理解問題?

謝謝 !

我的 systemctl 狀態給出:

elasticsearch.service - ElasticSearch
  Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; enabled)
  Active: active (running) since Mon 2015-04-20 12:04:24 CEST; 1h 56min ago          <------------- Here it means restarted 1h56 ago. Why did it fail in the first place ?
Main PID: 9120 (java)
  CGroup: /system.slice/elasticsearch.service
          └─9120 /usr/bin/java -Xms256m -Xmx1g -Djava.awt.headless=true -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingO...

在我的 journalctl 中,我有:

Apr 18 18:56:19 xx.ovh.net sshd[29397]: error: open /dev/tty failed - could not set controlling tty: Permission denied
Apr 20 13:52:45 xx.ovh.net sshd[9764]: error: open /dev/tty failed - could not set controlling tty: Permission denied

編輯:當我啟動第一個搜尋請求時,它通常會重新啟動:

elasticsearch.service - ElasticSearch
  Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; enabled)
  Active: activating (auto-restart) (Result: signal) since Tue 2015-04-21 12:27:43 CEST; 10s ago
 Process: 15618 ExecStart=/usr/share/elasticsearch/bin/elasticsearch (code=killed, signal=ABRT)
Main PID: 15618 (code=killed, signal=ABRT)

好吧,由於代表人數少,我無法發表評論,但是一個彈性搜尋實例至少需要 1.5 gB 才能舒適地執行,可能更多取決於您的要求。預設情況下,elastic 佔用 1 gB 記憶體,然後 lucene(ES 利用的搜尋庫)將佔用一些其他記憶體來執行搜尋。下面是彈性網站上關於管理記憶體和阻止程序因記憶體使用而被 OOM 殺手殺死的幾個連結。

https://www.elastic.co/guide/en/elasticsearch/reference/current/setup-configuration.html#setup-configuration-memory

https://www.elastic.co/guide/en/elasticsearch/guide/current/_limiting_memory_usage.html

引用自:https://serverfault.com/questions/684145