16.4. 使用 metrics RHEL 系统角色使用本地机器集中监控机器的数量
此流程描述了如何使用 metrics
系统角色设置本地机器来集中监控机器的数量,同时通过 grafana
提供数据的视觉化,并通过 redis
提供数据的查询。
先决条件
- 您已准备好控制节点和受管节点。
- 以可在受管主机上运行 playbook 的用户登录到控制节点。
-
用于连接到受管节点的帐户具有
sudo
权限。 localhost
在控制节点上的清单文件中配置:localhost ansible_connection=local
步骤
创建包含以下内容的 playbook 文件,如
~/playbook.yml
:- name: Set up your local machine to centrally monitor a fleet of machines hosts: localhost roles: - rhel-system-roles.metrics vars: metrics_graph_service: yes metrics_query_service: yes metrics_retention_days: 10 metrics_monitored_hosts: ["database.example.com", "webserver.example.com"] metrics_manage_firewall: yes metrics_manage_selinux: yes
因为
metrics_graph_service
和metrics_query_service
布尔值都被设置为value="yes"
,所以grafana
被自动安装和置备,并使用pcp
添加为一个数据源,使用pcp
将数据记录索引到redis
中,允许pcp
查询语言用于复杂的数据查询。因为metrics_manage_firewall
和metrics_manage_selinux
都被设为true
,所以metrics
角色使用firewall
和selinux
角色来管理metrics
角色使用的端口。验证 playbook 语法:
$ ansible-playbook --syntax-check ~/playbook.yml
请注意,这个命令只验证语法,不会防止错误但有效的配置。
运行 playbook:
$ ansible-playbook ~/playbook.yml
验证
-
要查看机器集中收集的指标的图形表示,并查询数据,请访问
grafana
web 界面,如 访问 Grafana Web UI 中所述。
其他资源
-
/usr/share/ansible/roles/rhel-system-roles.metrics/README.md
文件 -
/usr/share/doc/rhel-system-roles/metrics/
directory