apache负载均衡无原生图形监控界面,但启用mod_proxy_balancer模块并配置balancer-manager可快速搭建轻量实时监控页,支持查看节点状态、请求数、连接数等;需注意安全限制与认证配置。

Apache 负载均衡本身不自带图形化集群状态监控界面,但通过启用 mod_proxy_balancer 模块并配置 balancer-manager,可以快速搭建一个轻量、内置的实时监控页面,查看各后端节点的运行状态、请求分发情况、连接数、错误计数等关键信息。
启用 balancer-manager 监控页面
这是最常用且无需额外组件的方式。它依赖 Apache 自带模块,只需在 httpd.conf 或虚拟主机配置中添加对应 <location></location> 块:
<location>
SetHandler balancer-manager
Require local
# 生产环境建议限制IP或启用认证(见下文)
</location>
- 访问地址:
http://your-apache-server/balancer-manager - 页面显示内容包括:
- 每个
BalancerMember的当前状态(OK / Disabling / Elected / Failed) - 已处理请求数、失败次数、繁忙连接数、等待连接数
- 当前负载因子(
loadfactor)与会话粘性(stickysession=JSESSIONID)是否生效
- 每个
⚠️ 注意:默认只允许本机访问(
Require local)。若需远程查看,应改用Require ip 192.168.1.0/24或配合 Basic Auth 提升安全性。
配置基础认证保护监控页(推荐生产环境使用)
避免监控页暴露在公网,可叠加简单 HTTP 认证:
<location>
SetHandler balancer-manager
Require valid-user
AuthType Basic
AuthName "Balancer Manager"
AuthUserFile "/etc/httpd/conf/.balancer-htpasswd"
Require valid-user
</location>
生成密码文件(如首次设置):
htpasswd -c /etc/httpd/conf/.balancer-htpasswd monitor
重启 Apache 后,访问 /balancer-manager 就会弹出登录框。
Apache Superset 是一个广泛采用的开源 BI 平台,用于 SQL 探索、图表构建和仪表板交付。当代理需要查询仓库数据、组装仪表板或使用成熟的分析界面解释指标而不是临时笔记本代码时,此技能非常有用。
结合日志与健康检查提升可观测性
仅靠页面不够?还可补充以下手段:
-
开启代理日志:在
httpd.conf中添加ProxyStatus on LogLevel proxy:info
查看
error_log中 AJP 连接建立、超时、失败等细节。 -
配置健康探针(可选):
Tomcat 端确保/health或/status接口可用,并在BalancerMember中启用ping=5参数(需 Apache ≥2.4.37):BalancerMember ajp://192.168.1.151:8009 route=worker1 loadfactor=1 ping=5
定时抓取状态页做告警(脚本示例):
用curl定期请求/balancer-manager?auto=1(返回纯文本格式),解析Status字段,发现Failed状态即触发邮件或钉钉通知。
替代方案:集成 Prometheus + Grafana(进阶)
若已有可观测体系,可通过 mod_status + prometheus-httpd-exporter 采集指标,再配置 Dashboard 展示:
- 开启
mod_status:<location> SetHandler server-status Require local </location> - 部署 exporter 抓取
/server-status?auto输出,暴露为 Prometheus metrics - 在 Grafana 中导入 Apache 监控模板,跟踪:
- 后端节点 UP/DOWN 状态
- 每秒代理请求数(
apache_httpd_proxy_requests_total) - 平均响应延迟、错误率
该方式适合中大型集群,但需额外部署和维护。
不复杂但容易忽略。









