• ES系列二、CentOS7安装ES head6.3.1


    1.Head插件简介

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

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

    2.Head插件安装

    2.1安装NodeJS

    [root@node1 ~]# yum install -y nodejs

    2.2安装npm

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

    2.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 ~]# 

    2.4版本确认

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

    3.安装head

    3.1下载head插件源码

    [es@node1 ~]$ wget https://github.com/mobz/elasticsearch-head/archive/master.zip
    --2017-12-18 09:58:08--  https://github.com/mobz/elasticsearch-head/archive/master.zip
    Resolving github.com (github.com)... 192.30.255.113, 192.30.255.112
    Connecting to github.com (github.com)|192.30.255.113|:443... connected.
    HTTP request sent, awaiting response... 302 Found
    Location: https://codeload.github.com/mobz/elasticsearch-head/zip/master [following]
    --2017-12-18 09:58:09--  https://codeload.github.com/mobz/elasticsearch-head/zip/master
    Resolving codeload.github.com (codeload.github.com)... 192.30.255.120, 192.30.255.121
    Connecting to codeload.github.com (codeload.github.com)|192.30.255.120|:443... connected.
    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]
    
    [es@node1 ~]$ ls
    master.zip
    [es@node1 ~]$ unzip master.zip 

    3.2下载依赖 

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

    [es@node1 elasticsearch-head-master]$ npm install
    
    > phantomjs-prebuilt@2.1.16 install /home/es/elasticsearch-head-master/node_modules/phantomjs-prebuilt
    > node install.js
    
    PhantomJS not found on PATH
    Download already available at /tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2
    Verified checksum of previously downloaded file
    Extracting tar contents (via spawned process)
    Removing /home/es/elasticsearch-head-master/node_modules/phantomjs-prebuilt/lib/phantom
    Copying extracted folder /tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2-extract-1515165531727/phantomjs-2.1.1-linux-x86_64 -> /home/es/elasticsearch-head-master/node_modules/phantomjs-prebuilt/lib/phantom
    Writing location.js file
    Done. Phantomjs binary available at /home/es/elasticsearch-head-master/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs
    elasticsearch-head@0.0.0 /home/es/elasticsearch-head-master
    └─┬ grunt-contrib-jasmine@1.0.3
      └─┬ grunt-lib-phantomjs@1.1.0
        └── phantomjs-prebuilt@2.1.16 
    
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/chokidar/node_modules/fsevents):
    npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
    npm WARN elasticsearch-head@0.0.0 license should be a valid SPDX license expression
    [es@node1 elasticsearch-head-master]$ 

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

    [es@node1 elasticsearch-head-master]$ sudo npm install -g cnpm --registry=https://registry.npm.taobao.org
    [sudo] password for es: 
    /usr/bin/cnpm -> /usr/lib/node_modules/cnpm/bin/cnpm
    /usr/lib
    └─┬ cnpm@5.1.1 
      ├─┬ npminstall@3.3.0 
      │ ├── binary-mirror-config@1.7.3 
      │ ├── moment@2.20.1 
      │ └─┬ tar@4.2.0 
      │   └── minizlib@1.1.0 
      └─┬ urllib@2.25.3 
        └─┬ proxy-agent@2.1.0
          └─┬ pac-proxy-agent@2.0.0
            └─┬ socks-proxy-agent@3.0.1
              └─┬ agent-base@4.1.2
                └─┬ es6-promisify@5.0.0
                  └── es6-promise@4.2.2 
    
    [es@node1 elasticsearch-head-master]$ cnpm install
    ⠸ [6/10] Installing json-schema-traverse@^0.3.0platform unsupported karma@1.3.0 › chokidar@1.7.0 › fsevents@^1.0.0 Package require os(darwin) not compatible with your platform(linux)
    [fsevents@^1.0.0] optional install error: Package require os(darwin) not compatible with your platform(linux)
    ✔ Installed 10 packages
    ✔ Linked 313 latest versions
    PhantomJS not found on PATH
    Download already available at /tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2
    Verified checksum of previously downloaded file
    Extracting tar contents (via spawned process)
    Removing /home/es/elasticsearch-head-master/node_modules/_phantomjs-prebuilt@2.1.16@phantomjs-prebuilt/lib/phantom
    Copying extracted folder /tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2-extract-1515223629881/phantomjs-2.1.1-linux-x86_64 -> /home/es/elasticsearch-head-master/node_modules/_phantomjs-prebuilt@2.1.16@phantomjs-prebuilt/lib/phantom
    Writing location.js file
    Done. Phantomjs binary available at /home/es/elasticsearch-head-master/node_modules/_phantomjs-prebuilt@2.1.16@phantomjs-prebuilt/lib/phantom/bin/phantomjs
    ✔ Run 1 scripts
    deprecate grunt-contrib-connect@1.0.2 › http2@^3.3.4 Use the built-in module in node 9.0.0 or newer, instead
    deprecate grunt@1.0.1 › coffee-script@~1.10.0 CoffeeScript on NPM has moved to "coffeescript" (no hyphen)
    anti semver karma@1.3.0 › useragent@2.2.1 › tmp@0.0.x delcares tmp@0.0.x(resolved as 0.0.33) but using ancestor(karma)'s dependency tmp@0.0.28(resolved as 0.0.28)
    ✔ All packages installed (365 packages installed from npm registry, used 17s, speed 497.82kB/s, json 323(581.43kB), tarball 7.64MB)
    [es@node1 elasticsearch-head-master]$ 

    4.配置

    4.1停止ElasticSearch

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

    [es@node1 ~]$ jps
    3261 Elasticsearch
    3375 Jps
    [es@node1 ~]$ kill 3261

    4.2配置 ElasticSearch,使得HTTP对外提供服务

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

    添加如下内容

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

    4.3 修改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
                                    }
                            }
                    }

    5.启动

    5.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]$

    5.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

    5.3访问9100端口

    http://node1:9100/

    这里写图片描述
    如果出现“未连接”,请修改localhost为node1,然后单击“连接”按钮

    这里写图片描述

    6 简单应用

      6.1创建索引

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

      6.2查看head变化 这里写图片描述

     
  • 相关阅读:
    C#中的委托是什么?事件是不是一种委托?
    SQL重点复习
    数据库生成脚本
    用Winfrom动态生成SQL的insert语句
    如何实现远程连接SQL Server 2008 Express
    跨页面传送
    win7 防火墙开启ping
    关于*.class和*.jar的几个基本认识
    使用cobertura确定测试代码的覆盖率
    Java学习笔记之I/O
  • 原文地址:https://www.cnblogs.com/wangzhuxing/p/9352258.html
Copyright © 2020-2023  润新知