一直在用centos6,ES也安裝過n屢次了。此次公司新加了3臺Ubuntu16.04的機器,做爲ES的master節點。
直接從官網下載了5.6分支最新的DEB包,安裝完成,而後執行systemctl start elasticsearch.service,
以後問題就來了,報錯:html
[1] bootstrap checks failed [1]: memory locking requested for elasticsearch process but memory is not locked
很清晰麼,要麼是bootstrap.memory_lock: true這個沒設置,要麼就是max locked memory這個沒配置麼。
而後根據以往經驗,打卡/etc/security/limits.conf。哐哐哐一頓修改:bootstrap
* soft nofile 65536 * hard nofile 65536 * soft nproc 32000 * hard nproc 32000 * hard memlock unlimited * soft memlock unlimited
以後重啓,仍是報上面的錯誤。覺得沒配好,以後又改了n次。仍是不行。
而後查資料,果真,配置文件不同了。。
limits.conf這裏的配置,只適用於經過PAM認證登陸用戶的資源限制,它對systemd的service的資源限制不生效。登陸用戶的限制,經過 /etc/security/limits.conf 來配置
對於systemd service的資源限制,如今放在 /etc/systemd/system.conf 和 /etc/systemd/user.conf
這兩個文件裏面了。
主要就是/etc/systemd/system.conf這個文件centos
[Manager] #LogLevel=info #LogTarget=journal-or-kmsg #LogColor=yes #LogLocation=no #DumpCore=yes #ShowStatus=yes #CrashChangeVT=no #CrashShell=no #CrashReboot=no #CPUAffinity=1 2 #JoinControllers=cpu,cpuacct net_cls,net_prio #RuntimeWatchdogSec=0 #ShutdownWatchdogSec=10min #CapabilityBoundingSet= #SystemCallArchitectures= #TimerSlackNSec= #DefaultTimerAccuracySec=1min #DefaultStandardOutput=journal #DefaultStandardError=inherit #DefaultTimeoutStartSec=90s #DefaultTimeoutStopSec=90s #DefaultRestartSec=100ms #DefaultStartLimitInterval=10s #DefaultStartLimitBurst=5 #DefaultEnvironment= #DefaultCPUAccounting=no #DefaultBlockIOAccounting=no #DefaultMemoryAccounting=no #DefaultTasksAccounting=no #DefaultTasksMax= #DefaultLimitCPU= #DefaultLimitFSIZE= #DefaultLimitDATA= #DefaultLimitSTACK= #DefaultLimitCORE= #DefaultLimitRSS= #DefaultLimitNOFILE= #DefaultLimitAS= #DefaultLimitNPROC= #DefaultLimitMEMLOCK= #DefaultLimitLOCKS= #DefaultLimitSIGPENDING= #DefaultLimitMSGQUEUE= #DefaultLimitNICE= #DefaultLimitRTPRIO= #DefaultLimitRTTIME=
而後修改下面幾項:elasticsearch
DefaultLimitNOFILE=65536 DefaultLimitNPROC=32000 DefaultLimitMEMLOCK=infinity
以後繼續操做:ide
/bin/systemctl daemon-reload /bin/systemctl enable elasticsearch.service systemctl start elasticsearch.service systemctl status elasticsearch.service
到此,搞定。ui
後來centos又遇到這個問題了。
https://www.elastic.co/guide/...code