一、簡介
因爲Ealsticsearch只是後端提供各種API,爲了方便管理Ealsticsearch中的數據,所以我們可以藉助elasticsearch-head插件。elasticsearch-head插件是一款專門針對於elasticsearch的可視化的客戶端工具,它依賴Node.js庫,使用Grunt工具構建,所以我們要安裝elasticsearch-head之前,還需要先安裝Node.js和Grunt等依賴環境。
elasticsearch5.0以下版本可以直接在elasticsearch目錄下執行對應的命令安裝head插件,但是5.0以上不支持直接安裝,所以需要藉助其他方法安裝head插件,本篇介紹6.3.1版本的head插件的安裝步驟
二、安裝NodeJS
1、下載
#在指定目錄通過wget下載
wget https://nodejs.org/dist/v14.2.0/node-v14.2.0-linux-x64.tar.xz
也可以直接在官網下載:https://nodejs.org/en/download/current/
2、解壓
#解壓命令.xz
xz -d node-v14.2.0-linux-x64.tar.xz
#解壓命令.tar
tar -xvf node-v14.2.0-linux-x64.tar
3、建立軟連接
#重命名
mv node-v14.2.0-linux-x64/ nodejs
#建立軟連接
ln -s /usr/local/nodejs/bin/node /usr/local/bin
ln -s /usr/local/nodejs/bin/npm /usr/local/bin
4、查看版本
node -v
npm -v
5、安裝cnpm (非必須步驟)
在國內加載依賴的時候,經常會出現超時的情況,可以考慮使用cnpm替換npm。
[root@node08 elasticsearch-head]# npm install cnpm -g --registry=https://registry.npm.taobao.org #安裝cnpm
/usr/local/soft/nodejs/bin/cnpm -> /usr/local/soft/nodejs/lib/node_modules/cnpm/bin/cnpm
+ cnpm@6.1.1
updated 1 package in 15.84s
[root@node08 elasticsearch-head]# ln -s /usr/local/soft/nodejs/bin/cnpm /usr/local/bin/cnpm #建立軟連接
三、安裝elasticsearch-head插件
1、下載
鏈接:https://pan.baidu.com/s/1Lv6m5QFSc-oV-MR9rent1w 提取碼:r4on
2、解壓
unzip elasticsearch-head.zip
3、安裝grunt
因爲elasticsearch-head是基於grunt構建的,所以需要先安裝grunt相關依賴。
進入elasticsearch-head目錄後,再開始執行以下命令
1>、安裝grunt命令行工具grunt-cli
npm install -g grunt-cli
2>、安裝grunt及其插件
npm install grunt --save-dev
3>、建立軟連接
其中,/usr/local/soft/nodejs/lib/node_modules/grunt-cli/bin/grunt路徑是安裝grunt的路徑,在第二步的時候,安裝完成後會打印該路徑。
ln -s /usr/local/soft/nodejs/lib/node_modules/grunt-cli/bin/grunt /usr/local/bin/grunt
4>、查看安裝版本情況
grunt -version
4、配置Head連接信息
#在elasticsearch-head目錄中執行
vim Gruntfile.js
修改IP和端口號信息。如下所示:
5、啓動Head
#在elasticsearch-head目錄中執行
grunt server
6、訪問
通過訪問http://192.168.1.8:9100/,可以看到如下界面,說明安裝成功了。
四、異常處理
如果細心的朋友可能已經發現了在上述訪問Head的時候,提示“集羣健康值:未連接”,而且這個時候,我們是沒有連接到elasticsearch上的。下面我們分析在安裝Head過程中常見的問題。
1、提示“集羣健康值:未連接”
一般情況下都是沒有修改鏈接ES的地址:因爲默認使用的是localhost:9200,修改成:IP:Port,比如:192.168.1.8:9200,點擊連接出現如下界面(集羣健康值:yellow),說明連接成功。
2、索引、數據瀏覽模塊沒有數據或者基本查詢、複合查詢查詢時一直提示搜索中
#在elasticsearch-head目錄中執行
cd _site
vim vendor.js
修改如下兩處即可:
第一處: 把contentType: "application/x-www-form-urlencoded 改爲 contentType: “application/json;charset=UTF-8”
第二處: 把var inspectData = s.contentType === “application/x-www-form-urlencoded” && 改爲 var inspectData = s.contentType === “application/json;charset=UTF-8” &&
修改保存後,重新啓動elasticsearch-head就可以正常檢索了。
五、結尾
後續在學習Ealsticsearch相關的命令的時候,我們都將通過elasticsearch-head來執行命令了,期待中。