Ubuntu

如何提高彈性搜尋的最大執行緒數?

  • March 26, 2020

我全新安裝了 Ubuntu 16.04,並在其上安裝了 elasticsearch 5。現在,當我嘗試使用啟動彈性搜尋時

/etc/init.d/elasticsearch start

在日誌文件中幾秒鐘後,我讀到:

[2016-11-19T08:47:31,442][ERROR][o.e.b.Bootstrap          ] [shooter-1] node validation exception
bootstrap checks failed
max number of threads [1891] for user [elasticsearch] likely too low, increase to at least [2048]

經過一番Google搜尋,我得出結論,我必須將以下行添加到/etc/security/limits.conf

elasticsearch    -       nproc           2048

但是,即使在此更改之後,我仍然會遇到相同的錯誤。

我找到了取消註釋該行的建議

session    required   pam_limits.so

in /etc/pam.d/su,但該行已被取消註釋。

我錯過了什麼?

好的,我終於找到了。關鍵在這篇博文中:https ://fredrikaverpil.github.io/2016/04/27/systemd-and-resource-limits/

解決方案是編輯文件/usr/lib/systemd/system/elasticsearch.service並添加該行

LimitNPROC=2048

我們也遇到了這個問題,結果證明它是我們最初設置 elasticsearch 時可能創建的 systemd 服務覆蓋文件。

覆蓋文件在文件中被引用:https ://www.elastic.co/guide/en/elasticsearch/reference/current/setting-system-settings.html#systemd

檢查 /etc/systemd/system/elasticsearch.service.d/ 是否有任何 conf 文件,然後刪除它們或使用您的 elasticsearch 版本的正確 LimitNPROC= 更新它們。

引用自:https://unix.stackexchange.com/questions/324504