场景:
最近打算使用elasticsearch做日志搜索,使用elasticsearch-head作为一个图形化界面查看index、type、document信息。
elasticsearch 7.14.1
mobz/elasticsearch-head:5
地址:https://github.com/mobz/elasticsearch-head
看完这个readme文档后,计划使用docker方式进行部署。
1.更改elasticsearch.yml文件,包括xpack等配置,示例如下:
# 密码 xpack.security.enabled: true xpack.security.transport.ssl.enabled: true xpack.security.transport.ssl.verification_mode: certificate xpack.security.transport.ssl.keystore.path: elastic-certificates.p12 xpack.security.transport.ssl.truststore.path: elastic-certificates.p12 # elastic-head http.cors.enabled: true http.cors.allow-origin: "*" http.cors.allow-headers: Authorization
2.重启elasticsearch
3.启动elasticsearch-head
看文档没说支持Elasticsearch 7.x 最高支持到Elasticsearch 5.x ,先试试再说。
# docker run -p 9100:9100 -d mobz/elasticsearch-head:5
4.打开当前部署的ip:9100
发现根本连接不上。
5.按照文档所说:
在浏览器中打开 http://ip:9100/?auth_user=elastic&auth_password=changeme 其中ip为部署elasticsearch-head的ip地址。
最后发现还是链接不上,然后查阅了一些资料和github issue,没有找到答案。
6.再按照文档所说:
添加一个参数 base_uri
在浏览器URL中打开 http://ip1:9100/?auth_user=elastic&auth_password=changeme&base_uri=http://ip2:9200
其中ip1为部署elasticsearch-head的ip地址,ip2为部署elasticsearch的ip地址。
将示例密码changeme改为你的es的elastic账号的相对应的密码。
如果都在同一台机器上部署,则 ip1==ip2,否则elasticsearch和elasticsearch-head部署在不同机器也是可以的,请注意ip地址的不同。
7.最后链接成功。
注意:
1.要多看文档。我就是粗心了,没有细看文档,一直卡在上面的第5步骤,并且一直在http://ip1:9100这个页面上的Elasticsearh右侧的地址栏里面输入参数,导致连接不上。
2.链接es的地址都是在浏览器的URL地址栏里面输入,而不是Elasticsearch右侧的地址栏里面输入参数。



