ElasticSearch(二)之配置ElasticSearch Head插件

安裝

unzip elasticsearch-head-master.zip -d /usr/local/fast/

  • 在plugins目錄下創建head。把

mkdir -p /usr/local/fast/elasticsearch-6.1.1/plugins/head/

  • 把剛纔解壓的elasticsearch-head-master文件夾下的所有的文件拷貝到/plugins/head/下。

     

     

  • 我們可以通過Jps命令(java virtual machine process status tool 是jdk1.5提供的一個現實當前所有java進程pid的命令),查看ElasticSearch進程號,然後kill掉它。

  • 重啓elasticsearch,拋出了“java.lang.IllegalArgumentException: property [elasticsearch.version] is missing for plugin [head]”異常。

[2018-01-08T16:51:09,225][WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [node-1] uncaught exception in thread [main]
org.elasticsearch.bootstrap.StartupException: java.lang.IllegalArgumentException: property [elasticsearch.version] is missing for plugin [head]
    at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:125) ~[elasticsearch-6.1.1.jar:6.1.1]
    at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:112) ~[elasticsearch-6.1.1.jar:6.1.1]
    at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) ~[elasticsearch-6.1.1.jar:6.1.1]
    at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:124) ~[elasticsearch-cli-6.1.1.jar:6.1.1]
    at org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-cli-6.1.1.jar:6.1.1]
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:92) ~[elasticsearch-6.1.1.jar:6.1.1]
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:85) ~[elasticsearch-6.1.1.jar:6.1.1]
Caused by: java.lang.IllegalArgumentException: property [elasticsearch.version] is missing for plugin [head]
    at org.elasticsearch.plugins.PluginInfo.readFromProperties(PluginInfo.java:144) ~[elasticsearch-6.1.1.jar:6.1.1]
  • 問題所在是elasticsearch-head-master解壓後的內容不能放在elasticsearch的plugins目錄下,所以我們刪除到plugins目錄下的head。

rm -rf head

 
  • 更操蛋的是,我們竟然還沒有安裝elasticsearch-head,我們只是下了安裝包,但是沒有安裝。我們需要node.js環境

wget https://npm.taobao.org/mirrors/node/latest-v4.x/node-v4.4.7-linux-x64.tar.gz
[圖片上傳失敗...(image-87af7d-1515403754611)]

  • 在/usr/local/目錄下創建nodejs文件夾。

     
  • 把node-v4.4.7-linux-x64.tar.gz解壓到/usr/local/nodejs。

  • 配置環境變量,編輯/etc/profile添加以下內容,然後執行source /etc/profile,我們接着就可以查看node.js的版本號了。

NODE_HOME=/usr/local/nodejs/node-v4.4.7-linux-x64
PATH=$PATH:$NODE_HOME/bin
NODE_PATH=$NODE_HOME/lib/node_modules
export NODE_HOME PATH NODE_PATH

 

  • 安裝grunt(grunt是基於Node.js的項目構建工具,可以進行打包壓縮、測試、執行等等工作,elasticsearch-head插件就是通過grunt啓動的)。進入/usr/local/fast/elasticsearch-head-master/目錄下進行安裝。安裝完畢,我們可以檢查是否安裝成功。

npm install -g grunt-cli
grunt -version

  • 修改elasticsearch-head-master文件下的Gruntfile.js文件中,添加一行"hostname: '0.0.0.0',"

     

     

  • 在elasticsearch-head-master目錄下

npm install

  • 但是安裝的太慢了,我不想吐槽了。我們需要將npm換個鏡像。

npm install -g cnpm --registry=https://registry.npm.taobao.org

 

  • 我們再來安裝elasticsearch-head-master.我們用cnpm代替npm

cnpm install

  • 安裝完畢後,會生成一個node_modules文件夾。

     
  • 我們還要修改elasticsearch.yml,具體如下。
#集羣的名字 
cluster.name:   es_cmazxiaoma_cluster
#節點名字   
node.name:      node-1
#數據存儲目錄(多個路徑)
path.data:      /home/elasticsearch/data
#日誌目錄     
path.logs:      /home/elasticsearch/logs
#本機的ip地址
network.host:   192.168.12.6
#設置集羣中master節點的初始列表,可以通過這些節點來自動發現新加入集羣的節點
discovery.zen.ping.unicast.hosts:       ["192.168.12.6"]
#設置節點間tcp端口(集羣),默認9300
transport.tcp.port:     9300
#監聽端口(默認) 
http.port:      9200
#增加參數,使head插件可以訪問es
http.cors.enabled:      true
http.cors.allow-origin: "*"

  • 默認情況下,elasticsearch在elasticsearch-head連接的端口9200上公開一個http rest API。當不作爲elasticsearch的插件運行時,您必須在elasticsearch中啓用CORS,否則您的瀏覽器將拒絕看起來不安全的請求。看elasticsearch配置中:加http.cors.enabled:true,您還必須設置http.cors.allow-origin因爲默認情況下不允許來源。http.cors.allow-origin:"*"是一個合法的值,但是它被認爲是一個安全風險,因爲你的集羣是開放式的。

  • 運行elasticsearch-head

grunt server

 
  • 忘記了,elasticsearch-head web端口是9100。如果我們想通過瀏覽器去訪問它,必須在防火牆添加9100端口策略。

     
  • 訪問192.168.12.6:9100

     
  • 啓動elasticsearch。

     
  • 我們來通過elasticsearch-head來連接elasticsearch。

因爲head插件可以對數據進行增刪查改,所以生產環境儘量不要使用,最少要限制ip地址。儘量不要使用

Summary

下一篇講head插件的具體使用和
elasticsearch-analysis-ik分詞插件

作者:cmazxiaoma
鏈接:https://www.jianshu.com/p/3fe81380682c
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯繫作者獲得授權並註明出處。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章