昨天安装好了ElasticSearch,并运行成功,今天上午安装可视化插件ElasticSearch-head,经过多方努力安装成功。
网上对于插件的安装方法主要有两种(我只找见这两种,或许还有其他),一种是直接从官网下载zip文件然后上传到服务器,将zip包的文件解压在elasticsearch-5.5.2/plugins下,将解压出来后的文件夹重命名为head,然后直接重启elasticsearch,不过尝试过后报错
网上查找解决方案无果后尝试另一种安装方式,安装成功。主要解决方案来自:http://www.cnblogs.com/jstarseven/p/6803054.html
这个解决方案需要nodejs,npm和grunt环境
1.安装nodejs环境
1) wget https://npm.taobao.org/mirrors/node/latest-v4.x/node-v4.4.7-linux-x64.tar.gz
2) tar -zxvf node-v4.4.7-linux-x64.tar.gz
3) vim /etc/profile
4) 追加 export PATH=$PATH:/自定义路径/node-v4.4.7-linux-x64/bin 至文件最后
5) source /etc/profile 重启配置文件命令
测试 node --version
v4.4.7
2.安装npm(如果是按照上一步安装的,npm已经在)
下载nmp安装包,一般nodejs包中已经包含了,设置过环境变量就可以直接使用nmp命令了,如果没有安装,先下载:
官网地址:www.npmjs.com
淘宝地址:https://npm.taobao.org/mirrors/npm/
安装使用如下命令: node cli.js install npm -gf
测试命令:npm -v
3.安装grunt
1)安装grunt命令行工具grunt-cli npm install -g grunt-cli
2)安装grunt及其插件 npm install grunt --save-dev
测试命令:grunt -version
成功后执行下面的安装命令:
git clone git://github.com/mobz/elasticsearch-head.git
cd elasticsearch-head
npm install
npm install grunt --save
修改elasticsearch-head下Gruntfile.js文件,默认监听在127.0.0.1下9200端口,
原文件中没有hostname,请按照图片中说明的添加,并将值改为0.0.0.0
然后 cd /usr/local/elasticsearch-head
执行 grunt server &
(&符号为可选,加上是后台运行)
浏览器访问 http://ip地址:9100/
以上就是ElasticSearch-head插件安装的过程,如有问题,请留言
补充,如果出现上图中现实的 集群健康值: 未连接的状态,是因为没有配置ElasticSearch的跨域访问,默认是禁止的,所以链接失败
解决方案:
进入elasticsearch-5.5.2/config/elasticsearch.yml,添加
http.cors.enabled: true
http.cors.allow-origin: "*"
如图:
保存成功后重启elasticsearch和head插件,然后重新访问可视化界面
链接成功