首先需要安装elasticsearch,需要安装npm,git,前面的博客已经有了,这里就不介绍了。
1.用git上面的head插件进行安装:
进入elasticsearch的安装目录,执行如下命令
git clone git://github.com/mobz/elasticsearch-head.git
cd elasticsearch-head
npm install
npm run start
2.用grunt进行安装:
将下载好的head插件包解压然后进入head目录:
cd elasticsearch-head
安装grunt用来启动head
#安装grunt命令行工具grunt-cli npm install -g grunt-cli #安装grunt及其插件 npm install grunt --save-dev #查看安装版本情况 grunt -version
配置连接信息
vi Gruntfile.js
修改如下配置(ip 和 端口号)
启动head
grunt server
启动成功
3.打开 http://localhost:9100/ 访问插件
由于head插件监听的端口是9100,而elasticsearch的REST接口的端口是9200,因此需要设置elasticsearch允许跨域访问,才能使用head插件,编辑elasticsearch安装目录下的config目录下的elasticsearch.yml文件,添加如下2行配置:
http.cors.enabled: true
http.cors.allow-origin: "*"
如下图:注意连接es集群的地址是ip:9200端口!
4.服务启动与关闭
后台方式启动
nohup grunt server &
关闭head
#查询端口占用 netstat -tunlp |grep 9100
如果netstat没有安装,执行以下命令安装
yum install net-tools
#杀死进程 kill -9 9919
5.Elasticsearch-head 连接 Elasticsearch-6.0 + 检索问题
Head 连接Elasticsearch6时其他功能都好使, 但数据浏览模块不能显示数据了,一直显示搜索中,但不返回结果
看一下网络流可知报406 错误
解决办法:
cd elasticsearch-head/_site vi vendor.js
修改如下
#1. 6886行 contentType: "application/x-www-form-urlencoded 改为 contentType: "application/json;charset=UTF-8" #2. 7574行 var inspectData = s.contentType === "application/x-www-form-urlencoded" && 改为 var inspectData = s.contentType === "application/json;charset=UTF-8" &&
重新启动elasticsearch-head就可以正常检索了!