第 4 章 收集有关环境的信息
4.1. 监控和可观察性
本章提供了从 Red Hat Virtualization 系统监控和获取指标和日志的方法。这些方法包括:
- 使用数据仓库和 Grafana 监控 RHV
- 将指标发送到 Elasticsearch 的远程实例
- Deploying Insights in Red Hat Virtualization Manager
4.1.1. 使用数据仓库和 Grafana 监控 RHV
4.1.1.1. Grafana 概述
Grafana 是一个基于 Web 的 UI 工具,用于根据数据库名称 ovirt_engine_history
中的 oVirt Data Warehouse PostgreSQL 数据库收集的数据显示报告。有关可用报告仪表板的详情,请查看 Grafana 仪表板 和 Grafana 网站 - 仪表板。
来自 Manager 的数据将每分钟收集一次,并在每小时和每日聚合时进行汇总。根据 engine-setup (基本或完整扩展)在数据仓库配置中定义的扩展设置来保留这些数据:
- Basic (默认)- 为 24 小时保存的样本数据,每小时的数据针对 1 个月、每天保存的数据 - 不会保存每日聚合。
- 完全 (推荐)保存的样本数据为 24 小时,每小时数据保存了 2 个月,每天 5 年保存的聚合。
完整的样本扩展可能需要将数据仓库迁移到单独的虚拟机。
- 有关数据仓库扩展说明,请参阅 更改数据仓库采样扩展。
- 有关将数据仓库迁移至独立机器或安装的说明,请参阅 Migrating Data Warehouse to a Separate Machine 和 Installing and Configuring Data Warehouse on a Separate Machine。
红帽只支持安装数据仓库数据库、数据仓库服务和 Grafana,它们都与彼此相同,尽管您可以在独立的机器上分别安装这些组件。
4.1.1.2. 安装
当您在 Stand Alone Manager 安装以及自托管引擎安装中运行 Red Hat Virtualization Manager engine-setup
时,Grafana 集成会被默认启用并安装。
Grafana 不会被默认安装,您可能需要在一些情况下手动安装,比如从 RHV 的早期版本执行、恢复备份,或者在将数据仓库迁移到独立的机器时。
手动启用 Grafana 集成:
将环境设置为全局维护模式:
# hosted-engine --set-maintenance --mode=global
- 登录到要安装 Grafana 的机器。这应该是配置 Data Warehouse 的同一计算机,通常是 Manager 计算机。
按照如下所示运行
engine-setup
命令:# engine-setup --reconfigure-optional-components
回答
Yes
在该机器上安装 Grafana:Configure Grafana on this host (Yes, No) [Yes]:
禁用全局维护模式:
# hosted-engine --set-maintenance --mode=none
访问 Grafana 仪表板:
-
进入
https://<engine FQDN 或 IP 地址>/ovirt-engine-grafana
或者
- 在管理门户的 Web 管理欢迎页面中,点 Monitoring Portal。
4.1.1.2.1. 为单点登录配置 Grafana
Manager engine-setup 自动配置 Grafana,以允许 Manager 上的现有用户通过管理门户中的 SSO 登录,但不会自动创建用户。您需要创建新用户(Grafana UI 中的 Invite
),确认新用户,然后登录。
- 如果尚未定义,在 Manager 中为该用户设置电子邮件地址。
- 使用现有 admin 用户(初始配置管理员)登录到 Grafana。
- 进入 Configuration → Users 并选择 Invite。
- 输入电子邮件地址和名称,然后选择一个角色。
使用以下选项之一发送邀请:
选择发送邀请邮件,然后单击提交。对于这个选项,您需要在 Grafana 机器上配置的操作本地邮件服务器。
或者
选择 Pending Invites
- 找到您想要的条目
- 选择 Copy invite
- 通过直接进入浏览器地址栏或将其发送到另一个用户,复制并使用此链接来创建帐户。
如果您使用 Pending Invites 选项,则不会发送任何电子邮件,且电子邮件地址实际上不需要存在 - 只要作为管理器用户的电子邮件地址配置,任何有效的查找地址都将可以正常工作。
使用这个帐户登录:
- 使用具有此电子邮件地址的帐户登录到 Red Hat Virtualization Web 管理欢迎页面。
-
选择
Monitoring Portal
来打开 Grafana 仪表板。 - 选择 Sign in with oVirt Engine Auth。
4.1.1.3. 内置 Grafana 仪表板
以下仪表板可在初始 Grafana 设置中报告 Data Center、Cluster、Host 和 Virtual Machine 数据:
表 4.1. 内置 Grafana 仪表板
仪表板类型 | 内容 |
---|---|
执行仪表板 |
|
清单仪表板 |
|
服务级别仪表板 |
|
趋势仪表板 |
|
Grafana 仪表板包括到 Red Hat Virtualization 管理门户的直接链接,允许您快速查看集群、主机和虚拟机的详情。
4.1.1.4. 自定义 Grafana 仪表板
您可以根据报告需求创建自定义仪表板或复制并修改现有仪表板。
无法自定义内置仪表板。
4.1.2. 将指标和日志发送到 Elasticsearch 的远程实例
红帽不拥有或维护 Elasticsearch。您需要熟悉 Elasticsearch 设置和维护来部署这个选项。
您可以配置 Red Hat Virtualization Manager 和主机,将指标数据和日志发送到现有的 Elasticsearch 实例。
为此,请运行 Ansible 角色,它将在 Manager 和所有主机上配置 collectd
和 rsyslog
,以收集 engine.log
、vdsm.log
和 collectd
指标,并将它们发送到 Elasticsearch 实例。
如需更多信息,包括可用 Metrics Schema 的说明的完整列表,请参阅将 RHV 监控数据发送到远程 Elasticsearch 实例。
4.1.2.1. 安装 collectd 和 rsyslog
在主机上部署 collectd
和 rsyslog
,以收集日志和指标。
您不需要为新主机重复此步骤。每个添加的新主机由 Manager 自动配置,以便在 host-deploy 期间将数据发送到 Elasticsearch。
流程
- 使用 SSH 登录 Manager 机器。
复制
/etc/ovirt-engine-metrics/config.yml.example
以创建/etc/ovirt-engine-metrics/config.yml.d/config.yml
:# cp /etc/ovirt-engine-metrics/config.yml.example /etc/ovirt-engine-metrics/config.yml.d/config.yml
编辑
config.yml
中的ovirt_env_name
和elasticsearch_host
参数,并保存文件。以下附加参数可添加到文件中:use_omelasticsearch_cert: false rsyslog_elasticsearch_usehttps_metrics: !!str off rsyslog_elasticsearch_usehttps_logs: !!str off
-
使用证书时,将
use_omelasticsearch_cert
设置为 true。 -
要禁用日志或指标,请使用
rsyslog_elasticsearch_usehttps_metrics
和/或rsyslog_elasticsearch_usehttps_logs
参数。
-
使用证书时,将
在主机上部署
collectd
和rsyslog
:# /usr/share/ovirt-engine-metrics/setup/ansible/configure_ovirt_machines_for_metrics.sh
configure_ovirt_machines_for_metrics.sh
脚本运行包含linux-system-roles
(请参阅使用 RHEL 中的系统角色管理和配置任务)的 Ansible 角色,并使用它来在主机上部署和配置rsyslog
。rsyslog
从collectd
收集指标并将其发送到 Elasticsearch。
4.1.2.2. 日志记录模式和分析日志
使用 Discover 页面以交互方式探索从 RHV 收集的数据。收集的每个结果集合都被称为 文档。文档从以下日志文件收集:
-
engine.log
- 包含所有 oVirt Engine UI 崩溃、Active Directory 查找、数据库问题和其他事件。 -
vdsm.log
- VDSM 的日志文件、虚拟化主机上的管理器代理,包含主机相关事件。
以下字段可用:
parameter | description |
---|---|
_id | 文档的唯一 ID |
_index |
文档所属索引的 ID。带有 |
hostname | 对于 engine.log,这是 Manager 的主机名。对于 vdsm.log,这是主机的主机名。 |
level | 日志记录严重性为:TRACE、DEBUG、INFO、WARN、ERROR、FATAL。 |
message | 文档消息的正文。 |
ovirt.class | 生成此日志的 Java 类名称。 |
ovirt.correlationid | 仅限 engine.log。此 ID 用于关联 Manager 执行单个任务的多个部分。 |
ovirt.thread | 生成日志记录的 Java 线程的名称。 |
tag | 可用于过滤数据的预定义元数据集合。 |
@timestamp | 所发出的 [time](Troubleshooting#information-is-is-kibana)。 |
_score | N/A |
_type | N/A |
ipaddr4 | 机器的 IP 地址。 |
ovirt.cluster_name | 仅限 vdsm.log。主机所属的集群名称。 |
ovirt.engine_fqdn | Manager 的 FQDN。 |
ovirt.module_lineno |
运行在 |
4.1.3. 部署 Insights
要在安装有 Red Hat Virtualization Manager 的现有 Red Hat Enterprise Linux (RHEL)系统中部署 Red Hat Insights,请完成以下步骤:
- 将该系统注册到 Red Hat Insights 应用程序。
- 启用 Red Hat Virtualization 环境中的数据收集。
4.1.3.1. 将系统注册到 Red Hat Insights
注册系统,以与 Red Hat Insights 服务通信,并查看 Red Hat Insights 控制台中显示的结果。
[root@server ~]# insights-client --register
4.1.3.2. 启用 Red Hat Virtualization 环境中的数据收集
修改 /etc/ovirt-engine/rhv-log-collector-analyzer/rhv-log-collector-analyzer.conf
文件以包含以下行:
upload-json=True
4.1.3.3. 查看 Insights 结果以 Insights 控制台
可以在 智能分析工具控制台 中查看系统和基础架构结果。Overview
选项卡提供基础架构当前风险的仪表板视图。从起点开始,您可以调查特定规则如何影响您的系统,或者采用基于系统的方法来查看与系统造成风险的所有匹配。
流程
选择
Rule
hits by severity,按照它们对基础架构构成的Total Risk
来查看规则(关键
、重要
、中等
或低
)。或者
-
根据类型选择
Rule
hits 查看您的基础架构中的潜在风险的类型 (Availability
,Stability
,Performance
, 或Security
). - 按名称搜索特定规则,或者滚动规则列表来查看有关风险、系统公开和可用性的 Ansible Playbook 的高级别信息,以自动进行修复。
- 点击规则查看规则的描述,从知识库文章中了解更多相关信息,并查看受影响的系统列表。
- 点系统查看有关检测到的问题的具体信息,以及解决问题的步骤。