使用 Insights for Red Hat Enterprise Linux 评估和监控 RHEL 资源优化
了解 RHEL resource-usage 统计
摘要
第 1 章 公有云系统的 resource-optimization 服务
Red Hat Insights for Red Hat Enterprise Linux 资源优化服务使 RHEL 客户能够评估和监控其公共 RHEL 云使用和优化。该服务显示以下指标:
- CPU
- 内存
- disk-usage
它分析这些指标,并将其与公有云供应商推荐的资源限值进行比较。资源优化服务利用过去一天的数据,以几种不同方式考虑每个资源参数并返回可操作的数据。这些数据可提供更好的资源分配,并帮助您节省公共云投资的资金。
功能
该服务显示以下信息:
- Insights for Red Hat Enterprise Linux 清单中现有系统的利用率和优化数据。
- 在公共云中运行的系统范围。
- 系统特征概述.
- 突出显示潜在问题。
- 分类问题解决的建议。
1.1. 资源优化服务核心概念
1.1.1. 资源优化服务性能规则
使用资源优化服务,查看在支持的公共云 Amazon Web Services (AWS)中运行的受管主机的性能指标。该服务使用名为 Performance Co-Pilot (PCP)工具包的框架来记录性能指标。这些指标可让您做出更好的决策。
Insights 性能规则
性能规则是应用于 PCP 收集的数据的条件集合。它们识别以下系统状态:
- 下化.undersized 状态是通过检查 CPU、RAM 和磁盘输入/输出(I/O)使用情况来确定的,并在 24 小时内与 CPU 空闲时间合并。如果这会产生较高的分数,资源优化服务会为其工作负载标记系统太小。每当出现任何维度下时,系统将报告为已分类。
- 过度化.过度大小状态是通过检查 CPU、RAM 和磁盘 I/O 使用量来确定的,并在 24 小时内与 CPU 空闲时间合并。如果这会产生低分数,资源优化服务会为其工作负载标记系统太大。只有所有维度都被过度化时,系统才会报告为过度化。
- 闲置.闲置状态是通过检查 CPU、RAM 和磁盘 I/O 使用量来确定的,并在 24 小时内与 CPU 空闲时间合并。如果利用率非常低,资源优化服务会根据工作负载标记系统,但被使用。闲置条件可视为需要改进的场景。
- 已优化.优化的状态是通过检查 CPU、RAM 和磁盘 I/O 使用量来确定的,并在 24 小时内与 CPU 空闲时间合并。如果这导致中间点,资源优化服务会将系统标记为优化。
- 面临压力.只有在启用了 Kernel Pressure Stall Information (PSI)时,这个状态才处于活动状态。当系统优化利用率时,系统被标记为压力,但一些压力状况仍然存在。
资源优化服务测量系统的状态以及您已设置的所需性能标准,以便为系统分配分数。
其他资源
有关 PCP 工具包和注册 PAYG 的更多信息,请访问以下链接:
1.1.2. 资源优化服务的数据安全保证
资源优化服务遵循 Red Hat Insights for Red Hat Enterprise Linux 服务的数据和应用程序安全实践。如需了解更多详细信息,请参阅 安全。
1.1.3. 资源优化的性能指标
资源优化服务在您的系统上安装 pcp
软件包,并运行两个服务 pmcd
和 pmlogger
。两者都是 Performance Co-Pilot (PCP)工具包的一部分,它监控和处理系统中的特定指标。指标存储在 Insights 客户端上传到 Red Hat Insights for Red Hat Enterprise Linux 的存档中。
1.1.4. 访问资源优化服务的使用指标
资源优化服务会捕获过去一天中的数据,并在 24 小时后提供系统利用率指标。默认情况下,存档将在本地时间 12:00am +/- 1 一小时内上传到 Insights for Red Hat Enterprise Linux。但是,上传此数据的时间可以在 Performance Co-Pilot (PCP)工具包配置中进行配置。
第 2 章 安装和配置资源优化组件
安装资源优化涉及安装软件包、配置设置并启用本地服务。这可以手动完成,也可以使用红帽提供的 Ansible playbook。
表 2.1. 兼容性信息
RHEL 版本 | 云供应商 | 资源优化兼容性 |
---|---|---|
8.x-9.x | AWS | 是(x86_64 和 ARM 64 位) |
7.7-7.9 | AWS | 是(x86_64 和 ARM 64 位) |
7.0-7.6 | AWS | 否 |
6.x | AWS | 否 |
先决条件
在使用资源优化服务前,需要安装或确认以下应用程序和配置:
- 云市场 RHEL 实例已配置。
- Insights 客户端安装在系统上,并可以正常工作。
如果要使用 Ansible 安装或卸载资源优化服务:
- 启用 Ansible 存储库,并且 Ansible 客户端安装在每个系统上。
- 系统管理员可以运行 Ansible Playbook。
2.1. 安装资源优化组件
安装资源优化组件有几个选项。选择与 Ansible 工作流一起使用的任何方法。
2.1.1. 安装 Ansible 并运行资源优化安装 playbook
建议使用 Ansible 加快安装过程。此流程安装 Ansible 客户端,并在您的系统中运行 Ansible Playbook。
Amazon Web Services (AWS) 上的云市场镜像被配置为使用由云供应商托管的存储库。目前,这些存储库不包含 Ansible 客户端,因此您必须执行以下步骤在云市场上启用 Ansible 存储库 - 受管 RHEL 系统。
在 RHEL 8.6 及更新版本中,红帽建议使用 Ansible Core。如需更多信息,请参阅在 RHEL 8.6 和 9.0 中使用 Ansible。
先决条件
- 在 RHEL 8 上,启用了 Ansible 存储库。
RHEL 8 的步骤
安装 Ansible:
# yum install ansible -y
RHEL 7 的步骤
启用 Subscription-Manager 存储库并注册系统
# subscription-manager config --rhsm.manage_repos=1 # subscription-manager register
(可选)将您的系统附加到订阅池中
# subscription-manager attach --pool xxxxxxxx
启用所需的 Ansible 存储库。
# subscription-manager repos --enable=rhel-7-server-ansible-2.9-rpms
安装 Ansible:
# yum install ansible -y
如果您使用 RHEL PAYG 并希望只使用 RHUI 更新服务器,请禁用 Subscription-Manager 存储库:
# subscription-manager config --rhsm.manage_repos=0
2.1.2. 在已安装 Ansible 时安装资源优化
安装 Ansible 后,继续安装资源优化服务。
流程
使用以下命令下载 Ansible Playbook:
$ curl -O https://raw.githubusercontent.com/RedHatInsights/ros-backend/v2.0/ansible-playbooks/ros_install_and_set_up.yml
-
通过将 localhost 行附加到
/etc/ansible/hosts
,在 Ansible 清单中设置localhost
。 运行 Ansible Playbook:
# ansible-playbook -c local ros_install_and_set_up.yml
系统将立即显示在 Insights 中处于"Waiting for data"状态,在注册后,数据和建议将每天可用。
验证步骤
具有时间戳的数据文件将显示在 /var/log/pcp/pmlogger/ros
下,您可以验证是否正在收集指标:
$ ls -l /var/log/pcp/pmlogger/ros $ pmlogsummary /var/log/pcp/pmlogger/ros/
2.1.3. 在没有安装或使用 Ansible 的情况下安装资源优化
流程
如果您选择不使用 Ansible 进行安装,请使用以下手动安装过程:
确保安装了最新版本的 insights-client。
$ yum update insights-client
-
在
/etc/insights-client/insights-client.conf
中设置core_collect=True
安装 Performance Co-Pilot (PCP)工具包。
$ sudo yum install pcp
使用这个内容创建 PCP 配置文件
/var/lib/pcp/config/pmlogger/config.ros
:log mandatory on default { hinv.ncpu mem.physmem mem.util.available disk.dev.total kernel.all.cpu.idle kernel.all.pressure.cpu.some.avg kernel.all.pressure.io.full.avg kernel.all.pressure.io.some.avg kernel.all.pressure.memory.full.avg kernel.all.pressure.memory.some.avg } [access] disallow .* : all; disallow :* : all; allow local:* : enquire;
要将 pmlogger 配置为收集资源优化所需的指标,请将此行添加到
/etc/pcp/pmlogger/control.d/local
中:LOCALHOSTNAME n n PCP_LOG_DIR/pmlogger/ros -r -T24h10m -c config.ros -v 100Mb
注意在此流程的早期版本中,这一行以
LOCALHOSTNAME n y
开始。现在,建议您使用LOCALHOSTNAME n n
,它禁用pmsocks
的使用。有关pmsocks
的更多信息,请参阅pmsocks
的man
page。启动并启用所需的 PCP 服务。
$ sudo systemctl enable pmcd pmlogger $ sudo systemctl start pmcd pmlogger
重新注册 insights-client 并上传归档。系统将立即显示在 Insights 中处于"Waiting for data"状态,在注册后,数据和建议将每天可用。
$ sudo insights-client --register
验证步骤
具有时间戳的数据文件将显示在 /var/log/pcp/pmlogger/ros
下,您可以验证是否正在收集指标:
$ ls -l /var/log/pcp/pmlogger/ros $ pmlogsummary /var/log/pcp/pmlogger/ros/
2.2. 启用内核识别工作站信息(PSI)
PSI 提供了一种规范的方法,可在资源压力开发时增加。三个主要资源有压力指标:内存、CPU 和输入/输出(I/O)。PSI 可用于 RHEL 8 及更新版本,默认是禁用的。
启用 PSI 后,资源优化服务可以提高其发现,并提供更多详细信息和更好的建议。强烈建议启用 PSI 来识别峰值。
流程
-
编辑
/etc/default/grub
文件并在 GRUB_CMDLINE_LINUX 行末尾附加psi=1
(包含引号)。 重新生成 grub 配置文件。
$ sudo grub2-mkconfig -o /boot/grub2/grub.cfg
- 重启系统:
启用 PSI 以小(<1%)的性能命中。
验证步骤
启用 PSI 后,CPU、内存和 IO 的文件会显示在 /proc/pressure
下。
2.3. 在资源优化服务中启用通知和集成
当资源优化服务检测到问题并生成建议时,您可以在 Red Hat Hybrid Cloud Console 上启用通知服务来发送通知。使用通知服务可为您持续检查 Red Hat Insights for Red Hat Enterprise Linux 仪表板的建议。
例如,您可以将通知服务配置为在资源优化服务时自动发送电子邮件消息。
启用通知服务需要三个主要步骤:
- 首先,机构管理员会创建一个具有 Notifications 管理员角色的用户访问权限组,然后将帐户成员添加到组中。
- 接下来,通知管理员为通知服务中的事件设置行为组。行为组指定每个通知的交付方法。例如,行为组可以指定电子邮件通知是否发送到所有用户,或者只向机构管理员发送。
- 最后,从事件接收电子邮件通知的用户必须设置其用户首选项,以便他们为每个事件接收单独的电子邮件。
除了发送电子邮件信息外,您还可以配置通知服务以其他方式拉取事件数据:
- 使用经过身份验证的客户端查询 Red Hat Insights API 获取事件数据。
- 使用 Webhook 将事件发送到接受入站请求的第三方应用程序。
- 将通知与 Splunk 等应用程序集成,以将资源优化建议路由到应用程序仪表板。
其他资源
- 有关如何为资源优化建议设置通知的更多信息,请参阅在 Red Hat Hybrid Cloud Console 中配置通知和集成。
第 3 章 查看资源优化报告
历史数据报告可用于帮助您评估您一段时间内的优化程度,以便就未来公共云投资做出明智的决策。
3.1. 查看历史使用数据
资源优化服务可让您了解您的系统利用率分数如何在最后 7-45 天内趋势。该服务会显示一个栏图表,它指示 CPU 利用率 和内存利用率百分比。
完成以下步骤以查看、过滤和排序系统历史使用率数据:
步骤
- 进入 Business > Resource Optimization 页面。系统状态屏幕将打开。
- 单击页面左侧的 Name 标头,以根据 名称、状态或操作系统过滤。使用每个列名称右侧的排序箭头,按 OS、CPU、内存利用率、I/O 输出、Suggestions、State 和 Last Reported 进行排序。点一次对列进行排序,优化的系统会先显示。第二次单击对列进行排序,以便首先显示将归类为 Waiting for 数据 的系统。
- 被分析的系统以蓝色呈现。单击蓝色系统名称以获取更详细的视图。
- 单击 Actions 下拉菜单,以查看 清单 中的系统属性,如操作系统、基础架构、配置、BIOS 和其他数据。
- 默认情况下,资源优化系统显示 7 天的利用率结果。单击 最后 7 天的下拉菜单,以查看 45 天的使用数据。要查看这些天的特定天数和利用率分数,请使用鼠标轮轮和按钮在栏图表中分页和缩放。
- 向下滚动以查看该系统的具体建议。
3.2. 下载资源优化服务报告
您可以下载所有注册的系统的资源优化报告。该报告标识了在最后 7 到 45 天收集的以下数据:
- 注册的系统.本节详细介绍了最佳、非优化和过时的系统数量。优化的状态是通过检查 CPU、RAM 和磁盘 I/O 使用量确定的,以及 CPU 空闲时间的 24 小时。如果计算基于以下三个因素的考试,则会导致中间点导致资源优化服务将系统标记为优化。过时的系统被定义为 7 天内未将数据提交到资源优化服务。
- 内核压力停滞信息(PSI)这是对启用了 PSI 的系统数量以及未启用 PSI 的系统数量的分析。PSI 允许您获得更好的系统建议,因为它可以在开发时识别资源压力增加。
- 系统性能问题.特定性能问题,如 RAM 或 CPU 相关峰值,以及出现次数。
- 最常用的当前实例类型。该服务将评估并显示您在所有已注册系统中最常用的 5 个实例类型。
- 建议的实例类型。该服务根据最新的利用率指标识别前 5 个经常推荐的实例类型。这表明,为了获得更好的资源分配,可能需要进行一些改变。
- 45 天内建议的实例类型。此指标根据历史数据的 45 天显示前 5 经常推荐的实例类型。您还可以查看您最近发生的更改的有效性。
先决条件
必须满足以下条件才能创建 PDF 执行报告:
- Insights 客户端安装在系统上,并可以正常工作。
- Performance Co-Pilot 已安装并正确配置。
- 至少一个系统被注册,并将数据发送到资源优化。
您的系统向资源优化发送信息越长,建议将更加准确和有价值。
流程
- 导航到 Business > Resource Optimization。
- 在右上角,点 Download executive report。
- 您将看到一个对话框,其中包含消息 Export successful,并注意您的任务栏中的 PDF 文件。
其它资源
- 请参阅第 3.5 节:启用内核准备工作信息(PSI)
- PCP 工具包网站: PCP 网站
第 4 章 禁用资源优化服务
4.1. 删除资源优化文件和数据
使用 Ansible 禁用资源优化服务
在每个系统中执行以下步骤来禁用和卸载资源优化服务。
流程
使用以下命令下载 Ansible Playbook:
$ curl -O https://raw.githubusercontent.com/RedHatInsights/ros-backend/v1.0/ansible-playbooks/ros_disable.yml
使用以下命令运行 Ansible Playbook:
# ansible-playbook -c local ros_disable_and_clean_up.yml
卸载 playbook 不会停止或删除 Performance Co-Pilot (PCP)工具包。请注意,PCP 可以支持多个应用程序。如果您只对资源优化服务使用 PCP,并且希望删除 PCP,则有几个选项。您可以通过从系统中删除 pcp
软件包来停止并禁用 pmlogger
和 pmcd
服务,或者完全删除 PCP。
在不使用 Ansible 的情况下手动禁用资源优化服务
建议使用 Ansible 加快卸载过程。如果您选择不使用 Ansible,请使用以下步骤:
流程
通过从
/etc/pcp/pmlogger/control.d/local
中删除这一行来禁用资源优化服务指标集合LOCALHOSTNAME n y PCP_LOG_DIR/pmlogger/ros -r -T24h10m -c config.ros -v 100Mb
重启 PCP,以便有效地停止资源优化服务指标集合:
$ sudo systemctl pmcd pmlogger
删除资源优化服务配置文件
$ sudo rm /var/lib/pcp/config/pmlogger/config.ros
从系统中删除资源优化数据
$ sudo rm -rf /var/log/pcp/pmlogger/ros
如果您没有将 PCP 用于任何其他操作,您可以从系统中删除它
$ sudo yum remove pcp
4.2. 禁用内核压力停滞信息(PSI)
流程
-
编辑
/etc/default/grub
文件,再从 GRUB_CMDLINE_LINUX 行中删除psi=1
。 重新生成 grub 配置文件。
[user]$ sudo grub2-mkconfig -o /boot/grub2/grub.cfg
- 重启系统:
验证步骤
当禁用 PSI 时,/proc/pressure
不存在。
对红帽文档提供反馈
我们非常感谢并对我们文档的反馈进行优先排序。提供尽可能多的详细信息,以便快速解决您的请求。
先决条件
- 已登陆到红帽客户门户网站。
流程
要提供反馈,请执行以下步骤:
- 点击以下链接: Create Issue
- 在 Summary 文本框中描述问题或功能增强。
- 在 Description 文本框中提供有关问题或请求的增强的详细信息。
- 在 Reporter 文本框中键入您的名称。
- 点 Create 按钮。
此操作会创建一个文档票据,并将其路由到适当的文档团队。感谢您花时间来提供反馈。