码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • elasticsearch-head安装及详细配置


    一,介绍

    elasticsearch head 是一款开源的可视化的elasticsearch可视化工具,使用相当方便和广泛。

    这个插件安装比较简单,网上已经有写得比较好的文章了,例如:Elasticsearch-head可视化工具安装及实例使用介绍_斌哥谈编程的博客-CSDN博客文章目录一、环境准备1.1 下载1.2 运行二、查看Elasticsearch-head界面2.1 服务端安装及配置2.2 配置跨域访问2.3 查看界面2.3.1 基本概念2.3.2 数据浏览2.3.3 基本查询2.3.4 复合查询一、环境准备由于ES官方并没有为ES提供界面管理工具,仅仅是提供了后台的服务。elasticsearch-head是一个为ES开发的一个页面客户端工具,其源码托管于GitHub,地址为:https://github.com/mobz/elasticsearch-head提https://blog.csdn.net/houpeibin2012/article/details/108482148

    安装方式有4种,我也选择的是源码安装。

    源码安装,通过npm run start启动
    通过docker安装
    通过chrome插件安装
    通过ES的plugin方式安装

    其实docker安装应该更好用,有兴趣的可以参考

    https://jingyan.baidu.com/article/c1465413d7bd7a0bfdfc4c50.htmlhttps://jingyan.baidu.com/article/c1465413d7bd7a0bfdfc4c50.html

    环境说明:

    本文记录博主自己的安装步骤,以备今后查验。

    操作系统版本:Red Hat Enterprise Linux release 8.2 (Ootpa)

    二,安装步骤:

    2.1,nodejs及npm安装

    head是一个Node.js项目,所以需要先安装Node.js才可以运行head。安装了Node.js后,安装需要用到的npm命令就自带安装上了。

    注意从这里开始要使用root用户。下载Nodejs:

    Download | Node.jsNode.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.https://nodejs.org/en/download/

    当前最新的版本是16.17.0

    如果操作系统版本低的话可以选择低一些的版本,例如14.20.0

    下滑到下载页面的底部:

     

    所有版本的下载列表:Index of /dist/https://nodejs.org/dist/

    上传下载的安装包,然后解压:

    #xz -dk node-v16.17.0-linux-x64.tar.xz

    #tar -xvf node-v16.17.0-linux-x64.tar

    执行node命令 查看版本:

     [root@goya1 bin]# ./node -v
    v16.17.0

    解压文件的 bin 目录底下包含了 node、npm 等命令,我们可以使用 ln 命令来设置软连接:
    ln -s /app/nodejs/bin/npm /usr/local/bin/
    ln -s /app/nodejs/bin/node /usr/local/bin/
    设置npm镜像为国内的
    npm config set registry http://registry.npm.taobao.org

    可以通过输入npm命令来验证是否生效。

     2.2,elasticsearch-head安装

    GitHub - mobz/elasticsearch-head: A web front end for an elastic search clusterA web front end for an elastic search cluster. Contribute to mobz/elasticsearch-head development by creating an account on GitHub.https://github.com/mobz/elasticsearch-head

    通过上面的连接下载安装包,然后将安装包上传到服务器。解压到目录/app/head-master

    进入/app/head-master目录,执行npm install命令。

    有错误产生,Nodejs版本过高。重新下载降级版本node-v14.20.0-linux-x64.tar来安装,成功通过。

    也有另外一种解决办法就是安装phantomjs-prebuilt的2.1.14版本。读者可以自行测试。

    运行elasticsearch-head:

     

    使用elasticsearch-head:(说明:这里我连接是由3台ES节点组成的ES集群,且ES启用了x-pack,也就是需要用户名和密码访问)

    这里其实无法连接到elasticsearch, 还需要解决跨域问题: 

    2.3,配置跨域访问:
    由于前后端分离开发,所以会存在跨域问题,需要在服务端做CORS的配置,如下:
    vim elasticsearch.yml
    http.cors.enabled: true
    http.cors.allow-origin: "*"
    http.cors.allow-credentials: true
    http.cors.allow-headers: Content-Type,Accept,Authorization,x-requested-with
    #http.cors.allow-headers: "*"
    配置完,后重启服务端程序。
    cd bin 
    ./elasticsearch 或 ./elasticsearch -d #后台启动

    错误处理1:Access to XMLHttpRequest at xxx has been blocked by CORS policy: Request header field content-type is not allowed by Access-Control-Allow-Headers in preflight response.

    同源策略禁止读取位于 http://localhost:9200/_cluster/health 的远程资源。解决方法:在elasticsearch.yml中增配置内容如下: 
    http.cors.allow-headers: Content-Type,Accept,Authorization, x-requested-with 

    或者http.cors.allow-headers: "*"

    错误2:vendor.js: GET https://:9200/ 401 (Unauthorized)。ES启用了X-pack,但是在elasticsearch-head 连接时提示401无权限访问。


    解决方法1(不推荐):修改ES配置文件,关闭x-pack功能,在elasticsearch.yml文件,添加如下一行内容:xpack.security.enabled: false

    解决方法2:从head-master端解决。

    2.4,配置head master 到 elasticsearch的加密访问。

    如何从head-master这边解决是作者花了两天时间都没有办法解决的问题,感谢万能的网络,最后找到了解决办法。思路就是带密码访问加密的ES。在输入elasticsearch-head访问地址时输入auth_user和auth_password两个变量值,如下图所示:

    http://192.168.88.5:9100/?base_uri=https://192.168.88.5:9200&auth_user=elastic&auth_password=123456

    三,其他技巧

    3.1,设置master head需要用户名和密码登录。保障elasticsearch-head的访问安全。

    参考:elasticsearch-head设置登录用户和密码_wangan094的博客-CSDN博客_es head 设置密码将elasticsearch-head-master/index.html路径下的index.html文件替换为如下代码,userName和userPassword自定义 elasticsearch-head&...</span><span class="link-link"><img alt="" class="link-link-icon" src="https://1000bd.com/contentImg/2022/06/15/120056086.x-icon">https://blog.csdn.net/DH2442897094/article/details/105200039</span></span></a></p> <p></p> <p></p> </div> </div> </li> <li class="list-group-item ul-li"> <b>相关阅读:</b><br> <nobr> <a href="/Article/Index/646984">【C语言刷题——Leetcode12道题】带你起飞,飞进垃圾堆</a> <br /> <a href="/Article/Index/620300">leetcode热题100——第二天:5、6、10、11</a> <br /> <a href="/Article/Index/1112318">被欧美公司垄断近 20 年,中国工业软件的机会在哪里?</a> <br /> <a href="/Article/Index/959195">mysql bigInt和hibernate的long类型转换错误</a> <br /> <a href="/Article/Index/1133495">外卖好评回复模板</a> <br /> <a href="/Article/Index/1044524">使用jmx exporter采集kafka指标及配置</a> <br /> <a href="/Article/Index/1032139">行业大牛推荐,大数据必备工具书(基础框架、数据库、大数据分析分布式技术)</a> <br /> <a href="/Article/Index/1427384">spring与spring boot升级官方指导文档</a> <br /> <a href="/Article/Index/857274">POSIX线程与Win32线程</a> <br /> <a href="/Article/Index/1192925">【问题解决】Android JDK版本不匹配导致崩溃踩坑记录</a> <br /> </nobr> </li> <li class="list-group-item from-a mb-2"> 原文地址:https://blog.csdn.net/yangkei/article/details/126708031 </li> </ul> </div> <div class="col-lg-4 col-sm-12"> <ul class="list-group" style="word-break:break-all;"> <li class="list-group-item ul-li-bg" aria-current="true"> 最新文章 </li> <li class="list-group-item ul-li"> <nobr> <a href="/Article/Index/1484446">攻防演习之三天拿下官网站群</a> <br /> <a href="/Article/Index/1515268">数据安全治理学习——前期安全规划和安全管理体系建设</a> <br /> <a href="/Article/Index/1759065">企业安全 | 企业内一次钓鱼演练准备过程</a> <br /> <a href="/Article/Index/1485036">内网渗透测试 | Kerberos协议及其部分攻击手法</a> <br /> <a href="/Article/Index/1877332">0day的产生 | 不懂代码的"代码审计"</a> <br /> <a href="/Article/Index/1887576">安装scrcpy-client模块av模块异常,环境问题解决方案</a> <br /> <a href="/Article/Index/1887578">leetcode hot100【LeetCode 279. 完全平方数】java实现</a> <br /> <a href="/Article/Index/1887512">OpenWrt下安装Mosquitto</a> <br /> <a href="/Article/Index/1887520">AnatoMask论文汇总</a> <br /> <a href="/Article/Index/1887496">【AI日记】24.11.01 LangChain、openai api和github copilot</a> <br /> </nobr> </li> </ul> <ul class="list-group pt-2" style="word-break:break-all;"> <li class="list-group-item ul-li-bg" aria-current="true"> 热门文章 </li> <li class="list-group-item ul-li"> <nobr> <a href="/Article/Index/888177">十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!</a> <br /> <a href="/Article/Index/797680">奉劝各位学弟学妹们,该打造你的技术影响力了!</a> <br /> <a href="/Article/Index/888183">五年了,我在 CSDN 的两个一百万。</a> <br /> <a href="/Article/Index/888179">Java俄罗斯方块,老程序员花了一个周末,连接中学年代!</a> <br /> <a href="/Article/Index/797730">面试官都震惊,你这网络基础可以啊!</a> <br /> <a href="/Article/Index/797725">你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法</a> <br /> <a href="/Article/Index/797702">心情不好的时候,用 Python 画棵樱花树送给自己吧</a> <br /> <a href="/Article/Index/797709">通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!</a> <br /> <a href="/Article/Index/797716">13 万字 C 语言从入门到精通保姆级教程2021 年版</a> <br /> <a href="/Article/Index/888192">10行代码集2000张美女图,Python爬虫120例,再上征途</a> <br /> </nobr> </li> </ul> </div> </div> </div> <!-- 主体 --> <!--body结束--> <!--这里是footer模板--> <!--footer--> <nav class="navbar navbar-inverse navbar-fixed-bottom"> <div class="container"> <div class="row"> <div class="col-md-12"> <div class="text-muted center foot-height"> Copyright © 2022 侵权请联系<a href="mailto:2656653265@qq.com">2656653265@qq.com</a>    <a href="https://beian.miit.gov.cn/" target="_blank">京ICP备2022015340号-1</a> </div> <div style="width:300px;margin:0 auto; padding:0px 5px;"> <a href="/regex.html">正则表达式工具</a> <a href="/cron.html">cron表达式工具</a> <a href="/pwdcreator.html">密码生成工具</a> </div> <div style="width:300px;margin:0 auto; padding:5px 0;"> <a target="_blank" href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=11010502049817" style="display:inline-block;text-decoration:none;height:20px;line-height:20px;"> <img src="" style="float:left;" /><p style="float:left;height:20px;line-height:20px;margin: 0px 0px 0px 5px; color:#939393;">京公网安备 11010502049817号</p></a> </div> </div> </div> </div> </nav> <!--footer--> <!--footer模板结束--> <script src="/js/plugins/jquery/jquery.js"></script> <script src="/js/bootstrap.min.js"></script> <!--这里是scripts模板--> <!--scripts模板结束--> </body> </html>