ES系列二之CentOS7安装ES head插件

CentOS7安装ES head插件

附:Centos7中安装Node出现Cannot find module '.../lib/utils/unsupported.js'问题

删除原本的的npm连接,重新建一个即可。

1、先cd到该node版本中的bin文件夹下,这里装的是12.16.2版本:

cd /usr/local/soft/node-v16/bin
或 
/usr/local/soft/node/node-v20/bin

2、删除该路径下的npm文件, 出现提示输入yes即可

mv npm npm.bk

3、重新建立文件连接

ln -s ../usr/local/soft/node-v16/lib/node_modules/npm/bin/npm-cli.js ./npm

再次使用 npm -v 命令查看发现已近ok了

一、Head插件简介

ElasticSearch-head是一个H5编写的ElasticSearch集群操作和管理工具,可以对集群进行傻瓜式操作。

  • 显示集群的拓扑,并且能够执行索引和节点级别操作
  • 搜索接口能够查询集群中原始json或表格格式的检索数据
  • 能够快速访问并显示集群的状态
  • 有一个输入窗口,允许任意调用RESTful API。这个接口包含几个选项,可以组合在一起以产生有趣的结果;
  • 5.0版本之前可以通过plugin名安装,5.0之后可以独立运行。

-----------------------只需要在第一台es部署head 即可-----------------------

二、Head插件安装

前置:安装phantomjs(由于入坑多写一步,此步骤可省掉)

1.下载phantomjs

安装npm的时候会依赖phantomjs 所以我们先安装phantomjs

phantomjs 下载地址:http://phantomjs.org/download.html

可以复制下载地址通过命令来下载,如下

wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2

2.解压安装包

# 下载bzip2
 ① yum -y install bzip2

#创建存放目录
[root@elk-1 ~]# mkdir /tmp/phantomjs

# ------------------------------------------------------------
# 将文件移动过去即可,不需要解压
[root@elk-1 ~]# mv phantomjs-2.1.1-linux-x86_64.tar.bz2 /tmp/phantomjs/
 
更改权限
[root@elk-1 ~]# chmod 777 /tmp/phantomjs -R
# ------------------------------------------------------------
 # ========================================================
#如果不行 再解压 安装
 ② bzip2 -d phantomjs-2.1.1-linux-x86_64.tar.bz2

 ③ tar -xvf phantomjs-2.1.1-linux-x86_64.tar
 # ========================================================

3.安装(由于我的解压目录在 /home/tools/phantomjs-2.1.1-linux-x86_64,所以后面就直接写绝对路径了)

① 将可执行文件放入系统路径

   ln -s /home/tools/phantomjs-2.1.1-linux-x86_64/bin/phantomjs /usr/local/bin/phantomjs

② 安装依赖------fontconfig和freetype

  yum install fontconfig freetype2

③ 配置环境变量

  vim /etc/profile

  export  PHANTOMJS=/home/tools/phantomjs-2.1.1-linux-x86_64

  export  PATH=$PATH:$PHANTOMJS/bin

保存后执行:source /etc/profile

④ 测试 执行如下命令会显示phantomjs的版本

phantomjs -v

  1. 安装NodeJS

    [root@localhost soft]#  yum install -y nodejs
    或 上传tar.gz包 直接解压缩
    
  2. 安装npm

    [root@localhost bin]# npm install -g cnpm --registry=https://registry.npm.taobao.org
    

    附:报错 npm ERR! code CERT_HAS_EXPIRED

  3. 使用npm安装grunt

    [root@node1 ~]# npm install -g grunt
    npm WARN deprecated coffee-script@1.10.0: CoffeeScript on NPM has moved to "coffeescript" (no hyphen)
    npm WARN gentlyRm not removing /usr/bin/grunt as it wasn't installed by /usr/lib/node_modules/grunt
    /usr/bin/grunt -> /usr/lib/node_modules/grunt/bin/grunt
    /usr/lib
    └── grunt@1.0.1

    [root@node1 ~]#

    [root@node1 ~]# npm install -g grunt-cli --registry=https://registry.npm.taobao.org --no-proxy
    /usr/bin/grunt -> /usr/lib/node_modules/grunt-cli/bin/grunt
    /usr/lib
    └─┬ grunt-cli@1.2.0
    ├─┬ findup-sync@0.3.0
    │ └─┬ glob@5.0.15
    │ ├─┬ inflight@1.0.6
    │ │ └── wrappy@1.0.2
    │ ├── inherits@2.0.3
    │ ├─┬ minimatch@3.0.4
    │ │ └─┬ brace-expansion@1.1.8
    │ │ ├── balanced-match@1.0.0
    │ │ └── concat-map@0.0.1
    │ ├── once@1.4.0
    │ └── path-is-absolute@1.0.1
    ├── grunt-known-options@1.1.0
    ├─┬ nopt@3.0.6
    │ └── abbrev@1.1.1
    └── resolve@1.1.7

    [root@node1 ~]#

  4. 版本确认

    [es@node1 ~]$ node -v
    v6.12.0
    [es@node1 ~]$ npm -v
    3.10.10
    [es@node1 ~]$ grunt -version
    grunt-cli v1.5.0
    [es@node1 ~]$
    

三、安装head

  1. 下载head插件源码

    [root@localhost ~]# cd /usr/local/soft/es7.14/
    [root@localhost es7.14]# get https://github.com/mobz/elasticsearch-head/archive/master.zip

    --2017-12-18 09:58:08-- https://github.com/mobz/elasticsearch-head/archive/master.zip
    .......
    ......
    HTTP request sent, awaiting response... 200 OK
    Length: 921421 (900K) [application/zip]
    Saving to: 'master.zip'

    100%[===============================================================>] 921,421 9.64KB/s in 67s

    2017-12-18 09:59:18 (13.4 KB/s) - 'master.zip' saved [921421/921421]

    [root@localhost es7.14]# ls
    master.zip
    $ unzip master.zip

    改名

    [root@localhost es7.14]# mv elasticsearth-head-master head-master

  2. 下载依赖

    进入elasticsearch-head-master目录,执行下面命令:

    [root@localhost head-master]# npm install -g

    [root@localhost head-master]#

如果上面命令安装较慢或失败,可以尝试国内镜像安装

[es@node1 elasticsearch-head-master]$ sudo npm install -g cnpm --registry=https://registry.npm.taobao.org

[es@node1 elasticsearch-head-master]$

四、配置

  1. 停止ElasticSearch

如果ElasticSearch已经启动,需要先停止

[es@node1 ~]$ kill 3261
  1. 配置 ElasticSearch,使得HTTP对外提供服务

    [es@node1 elasticsearch-6.1.1]$ vi config/elasticsearch.yml

添加如下内容

# 增加新的参数,这样head插件可以访问es。设置参数的时候:后面要有空格
http.cors.enabled: true
http.cors.allow-origin: "*"
  1. 修改Head插件配置文件

    [es@node1 elasticsearch-head-master]$ vi Gruntfile.js

找到connect:server,添加hostname一项,如下

connect: {
                        server: {
                                options: {
                                        hostname: '0.0.0.0',
                                        port: 9100,
                                        base: '.',
                                        keepalive: true
                                }
                        }
                }

(3-2) 修改 _site/app.js

[root@elk-1 ~]# vim /usr/local/elasticsearch-head-master/_site/app.js +4373  
原来是http://localhost:9200 ,如果head和ES不在同一个节点,注意修改成ES的IP地址,写成node-1或node-3的IP地址

五、启动

  1. 启动elasticsearch

     首先确认elasticsearch已经启动
    

    [es@node1 elasticsearch-6.1.1]$ bin/elasticsearch -d
    [es@node1 elasticsearch-6.1.1]$ jps
    3451 Jps
    3436 Elasticsearch
    [es@node1 elasticsearch-6.1.1]$

2、启动head

通过命令grunt server启动head

[es@node1 elasticsearch-head-master]$ grunt server
Running "connect:server" (connect) task
Waiting forever...
Started connect web server on http://node1:9100

或者通过命令npm run start也可以启动head

[es@node1 elasticsearch-head-master]$ npm run start

> elasticsearch-head@0.0.0 start /home/es/elasticsearch-head-master
> grunt server

Running "connect:server" (connect) task
Waiting forever...
Started connect web server on http://node1:9100
  1. 访问9100端口

     http://node3:9100/
    

如果出现"未连接",请修改localhost为node1,然后单击"连接"按钮

分别启动es集群:node-1,node-2,node-3



六、简单应用

  1. 创建索引

    [root@node1 ~]# curl -XPUT node1:9200/test
    {"acknowledged":true,"shards_acknowledged":true,"index":"test"}
    [root@node1 ~]#

  2. 查看head变化

相关推荐
Tinalee-电商API接口呀32 分钟前
python爬虫爬取淘宝商品比价||淘宝商品详情API接口
大数据·开发语言·人工智能·爬虫·python·json
朗迪锋39 分钟前
航空维修培训中的虚拟现实辅助工程技术应用
大数据·人工智能·安全·vr·虚拟现实
芙蓉姐姐陪你写论文3 小时前
别再为创新点发愁了!ChatGPT助你快速搞定!
大数据·论文阅读·人工智能·chatgpt·ai写作·论文笔记·aipapergpt
陈吉俊3 小时前
双流join
大数据
对酒当歌丶人生几何5 小时前
ElasticSearch7.8下载、安装教程
java·elasticsearch·kibana
Casual_Lei5 小时前
Hadoop Pig
大数据·hadoop·分布式
Xinstall渠道统计5 小时前
Xinstall助力App全渠道统计,参数传递下载提升用户体验!
大数据·ux
羚通科技6 小时前
视频监控管理平台LntonAIServer视频智能分析抖动检测算法应用场景
大数据·人工智能·算法·音视频
weixin_448350506 小时前
推动数据治理与传统产业深度融合:解锁产业升级新引擎
大数据·数据挖掘·数据治理·数据提取
盘古信息IMS6 小时前
构建数字生态,布局智能未来——驱动PCB行业新质生产力发展的引擎
大数据·人工智能