Ansible Tower 3.5 在 API 中引入了一个指标端点:/api/v2/metrics/
, 提供有关 Tower 的即时指标,它可被如 Prometheus 这样的开源项目系统监控软件使用。
metrics/
端点中显示的数据类型是 Content-type: plain/text
,包含有用的信息,如计数有多少活跃用户会话,或每个 Tower 节点上有多少活跃运行的作业。Prometheus 可以配置为通过点击 Tower 指标端点并将此数据存储到时序数据库中,从 Tower 中抓取这些指标。客户端之后可以使用 Prometheus 与 Grafana 或 Metricsbeat 等其它软件来视觉化这些数据并设置警报。
要设置和使用 Prometheus,您需要在虚拟机或容器上安装 Prometheus。如需更多详情,请参阅 Prometheus documentation。
在 Prometheus 配置文件(通常为 prometheus.yml
)中,指定 <token_value>
,这是您创建的 Tower 用户的有效用户/密码,并指定 <tower_host>
。
注解
另外,您可以提供 OAuth2 令牌(可在
/api/v2/users/N/personal_tokens/
生成)。默认情况下,配置假设用户使用用户名=admin 和密码=password。
使用在
/api/v2/tokens
端点中创建的 OAuth2 Token,通过 Tower 验证 prometheus 身份。如果 Tower 的指标端点的 URL 为https://tower_host:443/metrics
,以下示例提供有效 scrape 配置。scrape_configs - job_name: 'tower' tls_config: insecure_skip_verify: True metrics_path: /api/v2/metrics scrape_interval: 5s scheme: https bearer_token: <token_value> # basic_auth: # username: admin # password: password static_configs: - targets: - <tower_host>如需帮助配置 Prometheus 的其它方面,如警示和服务发现配置,请参阅 Prometheus configuration docs。
如果 Prometheus 已在运行,您必须重启它以便应用配置更改,方法是对重新加载端点进行发布 POST,或终止 Prometheus 进程或服务。
使用浏览器导航到 http://your_prometheus:9090/graph
处 Prometheus UI 中的图标,并测试一些查询。例如,您可以通过执行:awx_sessions_total{type="user"}
来查询当前活跃 Tower 用户会话数量。
如需了解查询的更多方法,请参阅您的实例 (api/v2/metrics
) 的 Tower API 中的指标端点。