双可用区私有服务器部署Grafana后Target Group实例异常求助
目标组实例不健康&Grafana无法通过ALB访问的排查与配置指南
1. 目标组健康检查配置修正
- 匹配Grafana端口:将目标组健康检查的协议/端口改为HTTP/3000,默认的80端口不匹配Grafana监听端口,会直接导致检查失败。
- 修正健康检查路径:Grafana标准健康检查端点是
/api/health,而非根路径/。若配置为/,会返回302跳转(重定向到登录页),触发健康检查失败。需将目标组的健康检查路径设为/api/health。 - 调整检查阈值:若实例启动较慢,可适当调高健康检查间隔(如从30秒改为60秒)、超时时间(如从5秒改为10秒),避免因实例未完全启动误判为不健康。
2. 安全组规则补全
- 负载均衡安全组:入站规则允许外部访问3000端口(如
0.0.0.0/0或指定IP段);出站规则允许访问目标实例的3000端口(ALB需发起健康检查和流量转发)。 - 私有实例安全组:入站规则必须允许负载均衡所在安全组访问3000端口,仅开放堡垒机IP会导致ALB无法连通实例做健康检查,这是最常见的疏漏点。
- 堡垒机安全组:仅允许你的本地IP访问22端口,避免不必要的暴露。
3. 网络连通性排查
- 在堡垒机上执行
curl http://<私有实例内网IP>:3000/api/health,正常应返回含"database":"ok"的JSON响应,确认Grafana健康端点可用。 - 检查私有子网路由表:确保路由表指向NAT网关(若Grafana需拉取外部依赖),同时确认VPC内ALB子网与私有子网默认互通(若自定义了网络ACL,需放行3000端口的双向流量)。
4. Grafana自身配置确认
- 修改监听地址:打开Grafana配置文件(通常为
/etc/grafana/grafana.ini),将http_addr参数设为0.0.0.0(默认可能是127.0.0.1,仅允许本地访问)。 - 重启服务生效:执行
sudo systemctl restart grafana-server,再用systemctl status grafana-server确认服务运行正常。
5. ALB配置验证
- 确认可用区部署:ALB需部署在两个可用区的公网子网,与私有实例的可用区对应,避免跨区访问故障。
- 检查监听规则:确保ALB的3000端口监听规则正确转发到目标组,无错误的重定向或规则冲突。
- 查看日志定位:在CloudWatch中查看ALB访问日志和目标组健康检查日志,日志会明确标注失败原因(如连接超时、404错误、302跳转等)。
最终测试
等目标组状态全部变为健康后,访问ALB的DNS地址:3000,正常应显示Grafana登录页面。若仍失败,重新回溯上述配置环节,重点排查安全组和健康检查路径。
内容的提问来源于stack exchange,提问作者Shubhangi Raghuvanshi
相关产品推荐
相关产品推荐

