FusionInsight Elasticsearch对接Kibana
对接场景
Kibana提供了图形化操作界面,通过可视化界面对Elasticsearch进行索引构建、查询、分析等操作。
前提条件
已下载安装Kibana。
下载Kibana安装包“kibana-oss-6.7.1-linux-x86_64.tar.gz”并上传至任意EsMaster实例所在节点,例如
/opt
目录下。开源社区下载地址:https://www.elastic.co/cn/downloads/past-releases/kibana-oss-6-7-1。
解压安装包,并进入对应解压目录。
cd /opt tar -zxvf kibana-oss-6.7.1-linux-x86_64.tar.gz cd kibana-6.7.1-linux-x86_64/
使用Dev Tools功能的用户,需要在elasticsearch组内。
使用其他功能的用户,需要在supergroup组内。
操作步骤
修改配置并启动Kibana。
如果当前系统为TaiShan服务器,需要下载Nodejs的ARM版本替换kibana解压目录下的node目录
下载node-v10.15.2-linux-arm64.tar.gz,解压后替换kibana-6.7.1-linux-x86_64下的node。下载地址:https://nodejs.org/dist/v10.15.2/
tar -zxvf node-v10.15.2-linux-arm64.tar.gz -C /opt rm -rf /opt/kibana-6.7.1-linux-x86_64/node/* mv /opt/node-v10.15.2-linux-arm64/* /opt/kibana-6.7.1-linux-x86_64/node/
修改
config/kibana.yml
配置,示例如下:#Kibana在Elasticsearch中使用的索引名称。 #若需要启动多个Kibana,请确保不同用户的该配置项内容不重复。 kibana.index: ".kibana" #Kibana服务端口。 server.port: 5601 #当前节点ip,默认localhost。 server.host: "10.1.1.1" #需要访问的Elasticsearch节点IP及端口号,建议配置EsNode1实例的IP和端口号。普通模式下,请将https修改为http。 elasticsearch.hosts: ["https://10.1.1.1:24100"] #直接填写none即可。 elasticsearch.ssl.verificationMode: none #修改xxxxxx为“用户名:密码”的base64转码结果;普通模式不需要此项配置。 elasticsearch.customHeaders: {"custom-proxy-username":"xxxxxx"} #Kibana日志目录,根据实际场景自定义即可,请提前手动创建该文件。 logging.dest: /opt/kibana-6.7.1-linux-x86_64/log/kibana.log #Kibana健康检查周期,请根据实际使用场景合理填写,单位ms。 elasticsearch.healthCheck.delay: 60000
elasticsearch.hosts禁止配置EsMaster节点的IP和Port。EsMaster实例为重要的管理进程,为确保Elasticsearch集群稳定性,不允许配置EsMaster节点IP和Port。
因部分java库仍遵循RFC的Base64规定,在进行加密时会增加换行符,请保证elasticsearch.customHeaders配置项中的信息无换行符。
可下载Elasticsearch客户端,导入RestClient二次开发样例,使用com.huawei.fusioninsight.elasticsearch.example.util.Base64Utils工具类进行Base64加密。
请确保Base64转码结果在填写时,只替换“xxxxxx”部分。
例如,当前用户名为test,密码为123,“test:123”转base64后为“dGVzdDoxMjM=”,则配置项填写为:elasticsearch.customHeaders: {"custom-proxy-username":"dGVzdDoxMjM="}使用命令
./bin/kibana
启动Kibana如需后台运行,可执行如下命令
nohup ./bin/kibana &
启动Kibana:查看Kibana日志,确认启动成功后,登录Kibana界面。
在配置的Kibana日志文件中,找到如下类似日志,即表明Kibana已经启动成功,在浏览器输入日志中打印的链接即可,如http://10.1.1.1:5601。
"type":"log","@timestamp":"2019-06-07T07:07:32Z","tags":["status","plugin:elasticsearch@6.7.1","info"],"pid":44252,"state":"green","message":"Status changed from yellow to green - Ready","prevState":"yellow","prevMsg":"Waiting for Elasticsearch"} {"type":"log","@timestamp":"2019-06-07T07:07:32Z","tags":["listening","info"],"pid":44252,"message":"Server running at http://10.1.1.1:5601"}
create index pattern等操作,Kibana会创建相关索引,默认为".kibana"开头。
Kibana会根据健康检查状态进行信息反馈,如果在healthCheck周期内,信息发生变化(例如切换登录用户),可能需要等到下一次healthCheck的反馈结果才会生效;同时,健康检查会发送多个http请求到Elasticsearch,为防止增加Elasticsearch集群的压力,请根据使用场景,合理配置kibana.yml中的健康检查周期,即参数elasticsearch.healthCheck.delay。
- 点赞
- 收藏
- 关注作者
评论(0)