懶惰了很久,今天來寫一下Elasticsearch在centos7上安裝教程以及安裝過程中可能出現的報錯解決方式,有不對的地方,煩請各位看官多多指教!
一.ES安裝
1.環境檢查
確保有java環境,建議使用jdk1.8版本(如果需要使用logstash)
java -version
2.安裝配置
1.建議去官網下載需要的版本,官網地址:https://www.elastic.co
比如elasticsearch-5.3.1.tar.gz
2.上傳到指定目錄
例如:/usr/local/src,解壓tar -zxvf elasticsearch-5.3.1.tar.gz,重命名為elasticsearch
3.配置啟動用戶
ES不能使用root賬號啟動,新增elsearch用戶用於啟動
groupadd elsearch
useradd elsearch -g elsearch -p elsearch
#修改elasticsearch所有者為elsearch
chown -R elsearch:elsearch elasticsearch
#es配置文件需要有讀寫權限
chmod -R 775 config
4.啟動
su elsearch
cd /usr/local/src/elasticsearch/bin
./elasticsearch
啟動時候,可能存在的報錯:
(1).java.lang.UnsupportedOperationException: seccomp unavailable
解決方式:
vim elasticsearch.yml 添加兩行
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]
解決方式:
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]
解決方式:
vim /etc/security/limits.d/90-nproc.conf 修改參數值如下:
soft nproc 2048
(4).max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]
解決方式:
vim /etc/sysctl.conf 添加一行:
vm.max_map_count=655360
sysctl -p
5.驗證
瀏覽器訪問:http://localhost:9200。ES默認監聽本機,如需遠程連接,需要修改配置文件,下文會說到怎樣修改。
出現如下圖,則表示啟動成功:
6.停止
ps -ef | grep elastic
kill PID
2.安裝Es-Head插件
ElasticSearch-head就是一款能連接ElasticSearch搜索引擎,並提供可視化的操作頁面對ElasticSearch搜索引擎進行各種設置和數據檢索功能的管理插件,如在head插件頁面編寫RESTful接口風格的請求,就可以對ElasticSearch中的數據進行增刪改查、創建或者刪除索引等操作。類似於使用navicat工具連接MySQL這種關系型數據庫,對數據庫做操作。
1.環境檢查
Es-head插件運行需要node環境,確保安裝有node,如果未安裝,自行安裝
node -v npm -v
2.安裝運行
1.下載elasticsearc-head插件
下載地址:https://github.com/mobz/elasticsearch-head.git
2. 安裝grunt
cd elasticsearch-head
npm install -g grunt --registry=https://registry.npm.taobao.org
3.安裝插件
npm install
4.grunt檢查
在elasticsearch-head目錄下node_modules/grunt下如果沒有grunt二進制程序,需要執行:
npm install grunt --save
5.配置修改
修改Gruntfile.js文件下圖處參數,修改為ES服務器IP,vim Gruntfile.js:
修改 _site/app.js文件中如下圖處參數,修改為ES服務器IP,vim _site/app.js:
6.ES配置文件修改
修改elasticsearch.yml文件,上文提到的配置遠程連接,也在此文件修改:
#配置服務器遠程連接
network.host:服務器IP或者0.0.0.0
http.port:9200
#是否支持跨域
http.cors.enabled: true
#支持所有域名
http.cors.allow-origin: "*"
7.重啟ES
8.啟動插件
cd elasticsearch-head
npm run start
后台運行:nohup npm run start > /dev/null 2>&1 &
9.驗證
瀏覽器訪問http://IP:9100,出現下圖,代表安裝成功:
到此,ES和ES-head插件就算安裝完成了,各位如果覺得還有點意義,煩請點一下推薦,加個關注,互相交流,如果安裝過程有任何問題或者發現錯誤,都可以留言交流,共同進步!