Elasticsearch5中安裝Elasticsearch-head外掛

That's_it發表於2017-01-24

介紹

elasticsearch-head是一個用於管理Elasticsearch的web前端外掛,搞過ES的同學應該都瞭解。該外掛在es5中可以以獨立服務的形式進行安裝使用。本文將介紹如何操作。

相關連結:
 

操作

Step1, 安裝nodejs和npm
 
yum -y install nodejs npm

  

Step2, 下載原始碼並安裝
git clone https://github.com/mobz/elasticsearch-head.git
cd elasticsearch-head/
npm install

  

Step3,es配置修改&elasticsearch-head外掛原始碼修改

① 修改elasticsearch.yml,增加跨域的配置(需要重啟es才能生效)
http.cors.enabled: true
http.cors.allow-origin: "*"
 
② 編輯head/Gruntfile.js,修改伺服器監聽地址,增加hostname屬性,將其值設定為*。
以下兩種配置都是OK的
# Type1
connect: {
        hostname: '*',
        server: {
                options: {
                        port: 9100,
                        base: '.',
                        keepalive: true
                }
        }
}

  

# Type 2
connect: {
        server: {
                options: {
                        hostname: '*',
                        port: 9100,
                        base: '.',
                        keepalive: true
                }
        }
}

   

③ 編輯head/_site/app.js,修改head連線es的地址,將localhost修改為es的IP地址

# 原配置
this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://localhost:9200";
# 將localhost修改為ES的IP地址
this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://YOUR-ES-IP:9200";

 

Step4,啟動elasticsearch-head
cd elasticsearch-head/ && ./node_modules/grunt/bin/grunt server
注意:
① 此時elasticsearch-head為前臺啟動,如果終端退出,那麼elasticsearch-head服務也會隨之關閉。
② 在非elasticsearch-head目錄中啟動server會失敗!因為grunt需要讀取目錄下的Gruntfile.js。
 
So,你需要將之放到後臺進行執行,nohup,&,screen等各種方法請各位隨意選擇~
ps:我會用screen來做類似的操作~
 
Others
另外,開機啟動、保持持久執行等可以考慮配置rc.local、supervisord等來實現(配置略) 
 

效果

 

相關文章