摘要
本文详细介绍了 Elasticsearch-Head 和 Kibana 7.3.0 的安装、配置与连通性问题排查,涵盖 Chrome 扩展快速接入、集群健康与分片可视化、REST API 调试等核心功能。
一、版本兼容性矩阵
| 工具/组件 | 版本/环境 | 兼容性说明 |
|---|---|---|
| Elasticsearch-Head | Chrome 扩展 | 最新版本可直连 ES 7.x HTTP;启用安全时需配置 CORS |
| Elasticsearch-Head | Standalone | 需 Node/npm 启动,适合内网部署 |
| Kibana | 7.3.0 Linux x86_64 | 端口默认 5601,与 ES 7.x 搭配正常 |
| Elasticsearch | 7.x(HTTP) | 与 Head/Kibana 7.3.0 联调可用 |
| Elasticsearch | 8.x | 默认强制安全与证书校验,需额外配置 |
二、Elasticsearch-Head 插件
2.1 简介
Elasticsearch-Head 是一个用于 Elasticsearch 集群管理的开源可视化插件,提供以下核心功能:
- 集群健康监控:显示集群状态(green/yellow/red)及节点信息
- 索引管理:支持索引的查看、创建、删除、关闭和打开操作
- 数据节点监控:展示节点状态和硬件资源信息
- 分片管理:可视化显示分片分配情况
- RESTful 查询执行:支持 GET、POST、PUT、DELETE 请求方法
- 索引分布可视化:查看分片在集群中的分布图
- 多集群支持:可管理多个集群
2.2 安装步骤
使用 Chrome 扩展方式安装:
Chrome 扩展地址:https://chrome.google.com/webstore/detail/elasticsearch-head/ffmkiejjmecolpfloofpjologoblkegm/
2.3 使用场景
- 开发和调试:直接发送 REST 请求,查看索引结构和数据
- 实时监控集群健康:快速发现未分配分片、节点故障等问题
- 资源均衡优化:可视化查看分片分布,进行负载均衡
2.4 注意事项
- ES-Head 插件不需要登录认证,生产环境需通过 VPN 或防火墙限制访问
- 大规模集群数据过多可能导致界面响应缓慢
三、Kibana 安装与配置
3.1 核心功能
- 仪表盘(Dashboard):集成多个可视化图表,支持拖拽、缩放和联动更新
- 数据探索(Discover):支持 KQL 和 Lucene 语法查询
- 可视化(Visualizations):支持柱状图、折线图、饼图、地图、热力图等
- 日志分析(Logs):快速查询和实时日志流分析
- 监控(Monitoring):监控 ES 集群和 Kibana 自身状态
- 安全性(Security):用户认证和授权控制
- 告警(Alerting):基于查询结果触发事件
- 机器学习(Machine Learning):自动检测异常模式和趋势
3.2 安装步骤
解压配置
cd /opt/software
ls
tar -zxvf kibana-7.3.0-linux-x86_64.tar.gz
mv kibana-7.3.0-linux-x86_64 ../servers
修改目录权限
chown -R es_server /opt/servers/kibana-7.3.0-linux-x86_64
chmod -R 777 /opt/servers/kibana-7.3.0-linux-x86_64
配置文件
修改 kibana.yml:
server.port: 5601
elasticsearch.hosts: ["http://h121.wzk.icu:9200"]
server.host: "0.0.0.0"
server.publicBaseUrl: "http://h122.wzk.icu:5601"
启动服务
su es_server
cd /opt/servers/kibana-7.3.0-linux-x86_64
bin/kibana
3.3 访问服务
http://h122.wzk.icu:5601/
登录账号:elastic(密码为 elastic 用户密码)
访问 DevTool 按钮进入可视化工具进行测试。
四、错误速查表
| 症状 | 根因 | 定位 | 修复 |
|---|---|---|---|
| Head 连接报 CORS 错误 | ES 未启用或未放开 CORS | 浏览器控制台/网络面板 | 在 elasticsearch.yml 开启 http.cors.enabled: true,设置 http.cors.allow-origin |
| Head 401/403 | 未携带凭证或跨域不带 Cookie | 浏览器网络请求/ES 日志 | 配置允许凭证;使用反向代理注入 Basic/Auth 头 |
| 集群 Red/分片未分配 | 节点/磁盘阈值/路由异常 | _cat/shards、_cluster/allocation/explain | 修复节点与磁盘;手动 cluster/reroute |
| Kibana 启动报 EACCES | 目录属主不正确 | ls -l 检查属主/权限 | chown -R es_server … |
| Kibana “Kibana server is not ready yet” | ES 未就绪或地址错误 | curl ES:9200、ES 健康状态 | 修正 elasticsearch.hosts;待 ES 绿/黄后再启 |
| 5601 被占用 | 端口冲突 | lsof -i:5601 | 释放占用或改 server.port |
| 登录失败(elastic 用户) | 密码变更/未初始化 | _security API/ES 日志 | 重置内置用户密码或改用 API Key |
| DevTools 报 413/429 | 代理限流/体积受限 | 代理(Nginx)日志 | 调整 client_max_body_size、限流与超时 |
五、总结
本文详细介绍了 Elasticsearch-Head 和 Kibana 7.3.0 的完整安装配置流程,包括版本兼容性说明、Chrome 扩展安装、服务配置启动以及常见错误排查。建议开发者在本地或内网环境使用 Chrome 版 Elasticsearch-Head 进行集群可视化,配合 Kibana 进行查询和仪表盘分析,同时注意生产环境的 CORS 和安全配置。