1. 程式人生 > >centos 6.5安裝Elasticsearch 5.6.3叢集和Head外掛

centos 6.5安裝Elasticsearch 5.6.3叢集和Head外掛

LInux: 檢視centos版本:lsb_release -a CentOS release 6.5 (Final) 準備: java安裝 yum list installed | grep java yum -y list java* yum install java-1.8.0-openjdk.x86_64 安裝: cd /data mkdir eshome cd eshome wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6.3.tar.gz tar -xzvf elasticsearch-5.6.3.tar.gz
mv elasticsearch-5.6.3 elasticsearch es 規定 root 使用者不能啟動 es,所以需要建立一個使用者來啟動 es # 建立使用者名稱為 es 的使用者 useradd es # 設定 es 使用者的密碼 passwd es   # 將 /data/eshome/elasticsearch 的擁有者設定為 es chown -R es:es /data/eshome/elasticsearch 編輯配置檔案vi config/elasticsearch.yml network.host: 你自己的伺服器iphttp.port: 9200 切換到 es 使用者,啟動 es su es 前臺啟動:.
/bin/elasticsearch 後臺啟動:./bin/elasticsearch -d 關閉後臺啟動: ps -ef | grep elasticsearch kill -9 jps | grep Elasticsearch kill -9 如果啟動報錯請跳到後面看:啟動Elasticsearch常見問題 Head外掛安裝 安裝nodejs sudo yum install nodejs npm安裝: sudo yum install npm 安裝head外掛: cd elasticsearch git clone git://github.com/mobz/elasticsearch-head.git cd elasticsearch-head grunt安裝:
sudo npm install -g grunt-cli --registry=https://registry.npm.taobao.org (如果慢可用淘寶映象資源) grunt -version npm install grunt-contrib-clean npm install grunt-contrib-concat npm install grunt-contrib-watch npm install grunt-contrib-connect npm install grunt-contrib-copy npm install grunt-contrib-jasmine --registry=https://registry.npm.taobao.org (有個下載比較慢,失敗可以重試) 以下來源網上未驗證 在elasticsearch-head目錄下node_modules/grunt下如果沒有grunt二進位制程式,需要執行: cd elasticsearch-head npm install grunt --save      修改配置檔案elasticsearch.yml: vim config/elasticsearch.yml,修改為以下內容: cluster.name: xuedasearch node.name: node-1 network.host: 0.0.0.0 discovery.zen.ping.unicast.hosts: ["ip2", "ip3"] bootstrap.system_call_filter: false http.cors.enabled: true http.cors.allow-origin: "*" 修改Gruntfile.js 開啟vim elasticsearch-head/Gruntfile.js,找到下面connect屬性,新增hostname: '0.0.0.0', connect: {         server: {             options: {                 hostname: '0.0.0.0',                 port: 9100,                 base: '.',                 keepalive: true             }         }     }    啟動elasticsearch-head 在elasticsearch-head目錄下,執行啟動命令: cd elasticsearch-head 前臺啟動:grunt server 後臺啟動:nohup grunt server & 訪問:http://127.0.0.1:9100 關閉head外掛: ps aux|grep head kill -9 啟動Elasticsearch常見問題: 問題: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536] 解決方法: #切換到root使用者修改vim /etc/security/limits.conf# 在最後面追加下面內容es hard nofile 65536es soft nofile 65536 修改後重新登入 es 使用者,使用如下命令檢視是否修改成功 ulimit -Hn65536 問題: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144] 解決方法: 提高vm.max_map_count 的大小 # 切換到root使用者vim /etc/sysctl.conf# 在最後面追加下面內容vm.max_map_count=262144# 使用 sysctl -p 檢視修改後的結果sysctl -p 在阿里雲上可能出現的問題: system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk 解決方法:在es配置中加入下面命令即可vim config/elasticsearch.yml bootstrap.system_call_filter: false 問題:max number of threads [1024] for user [es] is too low, increase to at least [2048] 解決方法:vi /etc/security/limits.d/90-nproc.conf ,修改配置如下: *          soft    nproc     1024   修改為:   *          soft    nproc     2048   問題: Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) failed; error='Cannot allocate memory' (errno=12) 解決方法: # 由於elasticsearch5.0預設分配jvm空間大小為2g,修改jvm空間分配# 如果使用虛擬機器安裝,記憶體最好不小於2G# vim config/jvm.options -Xms512m-Xmx512m 運維API: 1. 叢集狀態:http://host:9200/_cluster/health?pretty 2. 節點狀態:http://host:9200/_nodes/process?pretty 3. 分片狀態:http://host:9200/_cat/shards 4. 索引分片儲存資訊:http://host:9200/index/_shard_stores?pretty 5. 索引狀態:http://host:9200/index/_stats?pretty 6. 索引元資料:http://host:9200/index?pretty