1 Head插件介绍以及下载

Head插件是Elasticsearch的图形化界面工具,通过此插件可以很方便的对数据进行增删改查等数据交互操作。可以将Head插件安装到任何一台机器上

读者可以从https://github.com/mobz/elasticsearch-head 下载此插件。

由于Head插件本质上是一个Node.js的工程,因此需要安装Node.js,使用npm工具来安装依赖的包。这里简单说下Node.js和NPM,作为知识的铺垫。

Node.js是一个Javascript运行环境,一个新兴的前端框架,用于方便的地搭建响应速度快、易于扩展的网络应用。

NPM的全称是Node Package Manager,是一个Node.js包管理和分发工具,它定义了包依赖关系标准,并提供了用于JavaScript开发所需要的各种常见第三方框架的下载。

详情参考:https://www.runoob.com/nodejs/nodejs-npm.html

2 在Centos7系列的系统上,可以直接通过yum在线安装Node.js和NPM工具。

yum install -y nodejs npm

 下载Head插件,这里我们通过git方式下载Head插件,那么先要安装git工具

yum install -y git

 接着,开始安装head插件,这里将head插件安装到/usr/local/src/目录下,操作过程如下:

git clone git://github.com/mobz/elasticsearch-head.git

 克隆下来的head插件命名为elasticsearch-head。进入此目录修改配置文件:/usr/local/src/elasticsearch-head/_site/app.js,修改如下所示的内容:

表示的意思是head插件将通过172.18.47.110来访问elasticsearch集群。

4371                 init: function(parent) {
4372                         this._super();
4373                         this.prefs = services.Preferences.instance();
4374                         this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://172.18.47.110:9200";

 修改源地址为淘宝NPM镜像,因为默认NPM的官方源为https://registry.npmjs.org/  。国外下载速度会很慢,所以这里建议切换到淘宝的NPM镜像站点比较好

npm config set registry=http://registry.npm.taobao.org/

 安装head插件所需的库和第三方框架 

[root@huazai007 elasticsearch-head]# pwd
/usr/local/src/elasticsearch-head
[root@huazai007 elasticsearch-head]# npm install  #这一步非常耗时间!

 npm install 包名,如果没有写,默认对读取当前路径下的package.json 文件

注意:如果报错的话,请查看:npm install 时报 phantomjs-prebuilt@2.1.16安装失败,

           解决方法:npm install phantomjs-prebuilt@2.1.16 --ignore-scripts,然后再执行一遍npm install就可以了

3 修改elasticsearch配置

修改此主机的leasticsearch配置文件,允许head插件跨域访问elasticsearch,在elasticsearch.yml文件最后添加如下内容:

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

 http.cors.enabled表示开启跨域访问支持,此值默认为false。

 http.cors.allow-origin表示跨域访问允许的域名地址,可以使用正则表达式,这里的“*”表示允许所有域名访问

4 启动head插件服务

[root\@localhost \~]\# cd /usr/local/src/elasticsearch-head
[root\@localhost elasticsearch-head]\#nohup npm run start &

head插件服务启动之后,默认的访问端口为9100,直接在浏览器打开http://172.18.47.110:9100即可,如下图所示: