第 12 章 使用 RHEL 系统角色监控性能

12.1. 指标系统角色简介

RHEL 系统角色是 Ansible 角色和模块的集合,可为远程管理多个 RHEL 系统提供一致的配置界面。指标系统角色为本地系统配置性能分析服务,可选包括由本地系统监控的远程系统列表。借助 metrics 系统角色,您可以使用 pcp 来监控系统性能,而无需单独配置pcp,因为 playbook 处理 pcp 设置和部署。

表 12.1. 指标系统角色变量

角色变量描述用法示例

metrics_monitored_hosts

要被目标主机分析的远程主机列表。这些主机将在目标主机上记录指标,以确保每个主机的 /var/log 中有足够的磁盘空间。

metrics_monitored_hosts: ["webserver.example.com", "database.example.com"]

metrics_retention_days

在删除前配置性能数据保留的天数。

metrics_retention_days: 14

metrics_graph_service

布尔值标志,可让主机与服务一起通过 pcp 和通过和视觉化性能数据进行设置 grafana。默认设置为 false。

metrics_graph_service: false

metrics_query_service

布尔值标志,使用时间序列查询服务来通过 pcp 查询记录的指标数据来设置主机 redis。默认设置为 false。

metrics_query_service: false

metrics_provider

指定要用于提供指标的指标收集器。目前, pcp 是唯一支持的指标提供程序。

metrics_provider: "pcp"

其它资源

  • 有关使用的参数 metrics_connections 以及有关 metrics 系统角色的额外信息,请参阅该 /usr/share/ansible/roles/rhel-system-roles.metrics/README.md 文件。

12.2. 使用指标系统角色以可视化方式监控本地系统

此流程描述了如何在同时置备数据视觉化时使用 metrics RHEL 系统角色监控您的本地系统 grafana

先决条件

  • 您已在要监控的机器上安装了 Red Hat Ansible Engine。
  • 您需要在要监控的机器中安装 rhel-system-roles 软件包。

流程

  1. 通过 localhost 将以下内容添加到清单中,在 /etc/ansible/hosts Ansible 清单中配置:

    localhost ansible_connection=local
  2. 使用以下内容创建一个 Ansible playbook:

    ---
    - hosts: localhost
      vars:
        metrics_graph_service: yes
      roles:
        - rhel-system-roles.metrics
  3. 运行 Ansible playbook:

    # ansible-playbook name_of_your_playbook.yml
    注意

    因为 metrics_graph_service 布尔值被设置为 value="yes", grafana 它会被自动安装并置备并将 pcp 添加为数据源。

  4. 要查看您机器上收集的指标的视觉化,请访问 Grafana grafana Web UI 中的 Web 界面。

12.3. 使用 metrics 系统角色设置监控其自身的独立系统

此流程描述了如何使用 metrics 系统角色设置一组机器来监控其自身。

先决条件

  • 您已在要用来运行 playbook 的机器上安装了 Red Hat Ansible Engine。
  • 已安装要用来运行 playbook 的机器上的 rhel-system-roles 软件包。

流程

  1. 将您要通过 playbook 监控的机器的名称或 IP 添加到 /etc/ansible/hosts Ansible 清单文件中,其名称在由括号括起来的标识组名称下:

    [remotes]
    webserver.example.com
    database.example.com
  2. 使用以下内容创建一个 Ansible playbook:

    ---
    - hosts: remotes
      vars:
        metrics_retention_days: 0
      roles:
        - rhel-system-roles.metrics
  3. 运行 Ansible playbook:

    # ansible-playbook name_of_your_playbook.yml

12.4. 使用 metrics 系统角色通过本地机器集中监控机器的数量

此流程描述了如何使用 metrics 系统角色设置本地机器来集中监控机器数量,同时通过 grafana 进行数据视觉化,通过 redis 查询数据。

先决条件

  • 您已在要用来运行 playbook 的机器上安装了 Red Hat Ansible Engine。
  • 已安装要用来运行 playbook 的机器上的 rhel-system-roles 软件包。

流程

  1. 使用以下内容创建一个 Ansible playbook:

    ---
    - hosts: localhost
      vars:
        metrics_graph_service: yes
        metrics_query_service: yes
        metrics_retention_days: 10
        metrics_monitored_hosts: ["database.example.com", "webserver.example.com"]
      roles:
        - rhel-system-roles.metrics
  2. 运行 Ansible playbook:

    # ansible-playbook name_of_your_playbook.yml
    注意

    因为 metrics_graph_servicemetrics_query_service 被设置为 value="yes",grafana 会被自动安装,被置备为带有 pcp 作为 pcp 数据源索引到 redis,从而可以使用 pcp 查询语言对数据进行复杂的查询。

  3. 要查看机器集中收集的指标的图形显示并查询数据,请访问访问 Grafana grafana Web UI 中的 Web 界面。

为了尽快向用户提供最新的信息,本文档可能会包括由机器自动从英文原文翻译的内容。如需更多信息,请参阅此说明。