在上一节 Elasticsearch5.2.2 安装部署与常见启动报错解决 我们已经完成了Elasticsearch的安装,那么,本文继续介绍head插件的安装流程。
1、下载插件 elasticsearch-head-master.zip
下载地址:https://github.com/mobz/elasticsearch-head
2、nodejs官网下载安装包 node-v6.9.2-linux-x64.tar.gz
下载地址:https://nodejs.org/dist/
3、将elasticsearch-head-master.zip和node-v6.9.2-linux-x64.tar.gz都导入到linux的/home/hadoop/installPackage目录
4、安装nodejs
[hadoop@weekend110 installPackage]$ tar -xzvf node-v6.9.2-linux-x64.tar.gz -C /home/hadoop/app/
5、配置nodejs环境变量
[hadoop@weekend110 ~]$ vi /etc/profile
export NODE_HOME= /home/hadoop/app/node-v6.9.2-linux-x64
export PATH=$PATH:$NODE_HOME/bin
[hadoop@weekend110 ~]$ source /etc/profile
6、查看node和npm版本
[hadoop@weekend110 ~]$ node -v
v6.9.2
[hadoop@weekend110 ~]$ npm -v
3.10.9
7、解压head插件到 /home/hadoop/app 目录下
[hadoop@weekend110 ~]$ unzip installPackage/elasticsearch-head-master.zip -d /home/hadoop/app/
8、查看当前head插件目录下有无node_modules/grunt目录,如果没有,那么执行以下命令自动创建:
[hadoop@weekend110 elasticsearch-head-master]$ npm install grunt --save
9、安装head插件:
[hadoop@weekend110 elasticsearch-head-master]$ npm install -g cnpm --registry=https://registry.npm.taobao.org
10、安装grunt:
[hadoop@weekend110 elasticsearch-head-master]$ npm install -g grunt-cli
11、编辑Gruntfile.js
[hadoop@weekend110 elasticsearch-head-master]$ vi Gruntfile.js
文件93行添加hostname:'0.0.0.0'
options: {
hostname:'0.0.0.0',
port: 9100,
base: '.',
keepalive: true
}
12、检查head根目录下是否存在base文件夹,如果没有,那么将 /home/hadoop/app/elasticsearch-head-master/_site下的base文件夹及其内容复制到head根目录下base目录
[hadoop@weekend110 elasticsearch-head-master]$ mkdir base
[hadoop@weekend110 _site]$ cp base/* ../base/
13、启动grunt server:
[hadoop@weekend110 elasticsearch-head-master]$ grunt server -d
如果启动grunt server报以下错误,提示grunt的模块没有安装:
解决:分别执行以下命令安装
npm install grunt-contrib-clean -registry=https://registry.npm.taobao.org
npm install grunt-contrib-concat -registry=https://registry.npm.taobao.org
npm install grunt-contrib-watch -registry=https://registry.npm.taobao.org
npm install grunt-contrib-connect -registry=https://registry.npm.taobao.org
npm install grunt-contrib-copy -registry=https://registry.npm.taobao.org
npm install grunt-contrib-jasmine -registry=https://registry.npm.taobao.org
最后一个模块可能安装不成功,但是不影响使用。
安装完之后,重新启动grunt server。
14、浏览器访问head插件:
http://weekend110:9100/
15、启动集群插件后发现集群未连接
在/home/hadoop/app/elasticsearch-5.2.2/config路径下修改配置文件elasticsearch.yml,在文件末尾增加
[hadoop@weekend110 config]$ pwd
/home/hadoop/app/elasticsearch-5.2.2/config
[hadoop@weekend110 config]$ vi elasticsearch.yml
http.cors.enabled: true
http.cors.allow-origin: "*"
再重新启动elasticsearch和grunt server
[hadoop@weekend110 elasticsearch-5.2.2]$ bin/elasticsearch
[hadoop@weekend110 elasticsearch-head-master]$ grunt server -d
如果9100端口被占用,kill掉之后重新启动grunt server:
然后查看web界面:http://weekend110:9100/
16、关闭插件服务
ctrl+c
[hadoop@weekend110 elasticsearch-head-master]$ netstat -nlpt|grep 9100
tcp 0 0 0.0.0.0:9100 0.0.0.0:* LISTEN 6618/grunt
kill -9 6618