(3)ElasticSearch在linux環境中安裝與配置head插件

1.簡介

ElasticSearch-Head跟Kibana一樣也是一個針對ElasticSearch集群操作的API的可視化管理工具,它提供了集群管理、數據可視化、增刪改查、查詢語句等功能,最重要還是它展現ElasticSearch集群的拓撲結構,並且可以通過它來進行索引(Index)和節點(Node)級別的操作。而且ElasticSearch-Head比Kibana對於ElasticSearch數據更能直觀查看。

2.前期準備

2.1下載head插件

到GitHub下載頁//github.com/mobz/elasticsearch-head下載插件,如圖所示:

2.2下載node.js

因為head插件是使用js開發的前端項目,依賴於node.js,要使用該插件,必須先安裝node.js。
轉至node.js下載頁//nodejs.org/zh-cn/download/下載,如圖所示:

3.head插件部署

3.1檢查服務端node.js是否已安裝

分別輸入命令:

node -v
npm -v


如果顯示上述提示,則node.js和npm都沒有安裝。

3.2創建node.js文件夾並解壓其安裝包

在用戶目錄下創建nodejs文件夾,命令如下:

mkdir /home/deng/nodejs

再通過Xftp把之前下載好的node-v12.18.3-linux-x64.tar.xz安裝包傳輸到installpackage中:

然後解壓到nodejs文件夾裏面,命令如下:

cd /home/deng/nodejs
tar -xvf /home/deng/installpackage/node-v12.18.3-linux-x64.tar.xz

3.3配置環境變量

在配置之前,先切換為root超級管理員權限才可以修改profile文件,輸入如下命令配置nodejs環境變量:

vi /etc/profile

再輸入如下內容到profile文件當中:

export NODE_HOME=/home/deng/nodejs/node-v12.18.3-linux-x64
export PATH=$PATH:$NODE_HOME/bin
export NODE_PATH=$NODE_HOME/lib/node_modules

讓配置生效:

source /etc/profile

再分別輸入如下命令查看node.js和npm是否已經安裝和版本號:

node -v
npm -v


如果有顯示版本號,則配置nodejs環境變量成功。

3.4解壓head插件

為了好管理維護,我把下載好的head插件解壓到elasticsearch文件夾中:

3.5安裝grunt

head插件需要安裝grunt,而grunt是基於Node.js的項目構建工具,可以進行打包壓縮、測試、執行等等的工作,head插件就是通過grunt啟動的。執行命令如下:

//先切換到head文件夾目錄
cd /home/deng/elasticsearch/elasticsearch-head-master
//安裝grunt
npm install -g grunt-cli
//檢測是否安裝成功,如果執行命令後出現版本號就表明成功
grunt -version

3.6改head配置文件Gruntfile.js

在head的配置文件Gruntfile.js中添加host正則匹配項,具體命令如下:

cd /home/deng/elasticsearch/elasticsearch-head-master
vi Gruntfile.js

編輯內容:

connect: {
    server: {
        options: {
            port: 9100,
            base: '.',
            keepalive: true,
            host: '*' //增加這一行內容
        }
    }
}

3.7設置ElasticSearch允許跨域訪問

進入elasticsearch目錄,修改elasticsearch.yml的配置:

vi /home/deng/elasticsearch/elasticsearch-7.8.0/config/elasticsearch.yml

添加如下內容:
# 增加參數,使head插件可以訪問es  

http.cors.enabled: true  
http.cors.allow-origin: "*"


然後重啟ElasticSearch服務。
3.8啟動head插件
先切換到head目錄:

cd /home/deng/elasticsearch/elasticsearch-head-master

如果沒有安裝npm工具,請先安裝npm工具(npm是隨同Node.js一起安裝的包管理工具,能解決Node.js代碼部署上的很多問題,具體詳情請自行度娘):

npm install

再啟動head插件:

grunt server或者npm run start

然後我們會看到如下界面:

顯示elasticsearch集群並未連接。因為我虛擬機掛載elasticsearch服務端的,所以輸入對應IP地址,即可訪問:

Head插件具體功能演示,我在這裡就不詳細介紹了,需要了解小夥伴們可以自行官網或度娘。

參考文獻:
ElasticSearch系列(三)linux環境中安裝配置head插件以及使用方法