AWS多容器环境下通过ALB DNS访问Prometheus容器端点
解决方法:通过ALB访问Prometheus仪表盘
直接在访问URL中指定ALB的90端口即可访问Prometheus,格式如下:
http://<你的ALB完整DNS地址>:90
比如你的ALB DNS是my-app-alb-987654321.ap-southeast-1.elb.amazonaws.com,就访问http://my-app-alb-987654321.ap-southeast-1.elb.amazonaws.com:90
关键配置检查点
如果访问失败,按以下步骤排查:
- 确认ALB的90端口监听器配置:
- 监听器状态为「活跃」,协议与你访问时一致(比如HTTP)
- 转发规则正确关联到Prometheus对应的目标组
- 验证Prometheus目标组配置:
- 目标组的「目标端口」要匹配ECS任务中Prometheus容器的端口映射:
- 若ECS用
awsvpc网络模式,直接填容器内的9090端口 - 若用
bridge模式,填任务定义中映射的主机端口(比如你可能把容器9090映射到主机的9090,或者其他端口)
- 若ECS用
- 目标组内的ECS任务目标状态为「健康」
- 目标组的「目标端口」要匹配ECS任务中Prometheus容器的端口映射:
- 检查安全组规则:
- ALB的安全组要允许外部客户端访问90端口(入站规则)
- ECS任务所在的安全组要允许ALB安全组访问Prometheus对应的端口(9090或映射后的主机端口,入站规则)
内容的提问来源于stack exchange,提问作者Vishal C
相关产品推荐
相关产品推荐

