linux上安裝啟動elasticsearch-5.5.1完整步驟
#cd /var/www/
#wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.1.zip
或者通過xshell rz命令從windows上傳elasticsearch-5.5.1.zip到linux伺服器
2、解壓
#unzip elasticsearch-5.5.1.zip
3、新建一個使用者用來配置、啟動es,es無法從root啟動
#adduser esuser
#chown -R esuser /var/www/elasticsearch-5.5.1/
4、切換為esuser:
#su esuser
#chmod 777 /var/www/elasticsearch-5.5.1/
5、修改配置檔案,提供外網訪問:
#vim /var/www/elasticsearch-5.5.1/config/elasticsearch.yml
新增
network.host: <本機ip,儘量使用內網IP>
http.host: 0.0.0.0
節點之間通訊,每個節點都需要的配置
discovery.zen.ping.unicast.hosts: ["Node1_IP:9300", "Node2_IP:9300", "Node3_IP:9300"]
參考:http://www.jianshu.com/p/fa31f38d241e
6、啟動
elasticsearch-5.5.1執行需要java8
若系統java環境預設不是java8,安裝了java8後,啟動前可以設定:
#export JAVA_HOME=<jdk1.8安裝目錄>
啟動為後臺
#cd /var/www/elasticsearch-5.5.1/bin
#./elasticsearch -d
完成
幾乎每一次裝都會遇到的坑,這些坑只有5.x.x版本有,2.x.x版本的幾乎沒有遇到過:
1、機器內剩餘記憶體較少,會啟動失敗,並且有類似如下報錯:
Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x000000008a660000, 1973026816, 0) failed; error='Cannot allocate memory' (errno=12)
這是因為es的jvm引數-Xmx和-Xms預設都為2G
修改config下的jvm.option檔案
# vim elasticsearch/elasticsearch-5.5.1/config/jvm.opstions
將
-Xms2g
-Xmx2g
改為
-Xms1g
-Xmx1g
或更小
-Xms512M
-Xmx512M
再次啟動即可
2、啟動的時候出現:
1、
ERROR: bootstrap checks failed
system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk...
問題原因:因為Centos6不支援SecComp,而ES5.x.x預設bootstrap.system_call_filter為true進行檢測,所以導致檢測失敗,失敗後直接導致ES不能啟動。詳見 :https://github.com/elastic/elasticsearch/issues/22899
解決方法:在elasticsearch.yml中配置bootstrap.system_call_filter為false,注意要在Memory下面:
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
2、
ERROR: bootstrap checks failed
max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]
max number of threads [1024] for user [lishang] likely too low, increase to at least [2048]
解決方法:切換到root使用者,編輯limits.conf 新增類似如下內容
#vim /etc/security/limits.conf
新增如下內容:
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
3、
max number of threads [1024] for user [lish] likely too low, increase to at least [2048]
解決方法:切換到root使用者,進入limits.d目錄下修改配置檔案。
#vim /etc/security/limits.d/90-nproc.conf
修改如下內容:
* soft nproc 1024
修改為
* soft nproc 2048
4、
max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]
解決方法:切換到root使用者修改配置sysctl.conf
#vim /etc/sysctl.conf
新增下面配置:
vm.max_map_count=655360
並執行命令:
#sysctl -p
然後,再啟動elasticsearch,即可啟動成功。
參考:
http://blog.csdn.net/liagliang/article/details/62423100?utm_source=itdadao&utm_medium=referral
如何關閉:
得到es的pid
#lsof -i:9200
#kill -9 <es的pid>