12. 指标

API 中提供了一个指标端点:/api/v2/metrics/,该端点显示有关 AWX 的即时指标,可以被像开源项目 Prometheus 这样的系统监控软件使用。

metrics/ 端点显示的数据类型为 Content-type: text/plainapplication/json。此端点包含有用的信息,例如活动用户会话的数量或每个 AWX 节点上正在运行的作业数量。可以通过访问 AWX 指标端点并将这些数据存储在时间序列数据库中来配置 Prometheus 从 AWX 提取这些指标。客户端稍后可以将 Prometheus 与 Grafana 或 Metricsbeat 等其他软件结合使用,以可视化这些数据并设置警报。

12.1. 设置 Prometheus

要设置和使用 Prometheus,您需要在虚拟机或容器上安装 Prometheus。有关更多详细信息,请参阅Prometheus 文档

  1. 在 Prometheus 配置文件(通常为 prometheus.yml)中,指定 <token_value>(您已创建的 AWX 用户的有效用户/密码)和 <awx_host>

    注意

    或者,您可以提供 OAuth2 令牌(可以在 /api/v2/users/N/personal_tokens/ 生成)。默认情况下,配置假设用户名为 admin 且密码为 password 的用户。

使用在 /api/v2/tokens 端点创建的 OAuth2 令牌来对 Prometheus 与 AWX 进行身份验证,如果 AWX 指标端点的 URL 为 https://awx_host:443/metrics,则以下示例提供了有效的抓取配置。

scrape_configs

  - job_name: 'awx'
    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:
            - <awx_host>

有关配置 Prometheus 其他方面(例如警报和服务发现配置)的帮助,请参阅Prometheus 配置文档

如果 Prometheus 已经在运行,则必须通过对重新加载端点发出 POST 请求或终止 Prometheus 进程或服务来重新启动它,以应用配置更改。

  1. 使用浏览器导航到 Prometheus UI 中的图表,网址为 http://your_prometheus:9090/graph,并测试一些查询。例如,您可以通过执行以下操作查询当前活动 AWX 用户会话的数量:awx_sessions_total{type="user"}

../_images/metrics-prometheus-ui-query-example.png

有关更多查询方法,请参阅您实例中的 AWX API 中的指标端点(api/v2/metrics)。