Red Hat Training

A Red Hat training course is available for RHEL 8

第 6 章 设置 PCP

Performance Co-Pilot(PCP)是一组用于监控、可视化、存储和分析系统级性能测量的工具、服务和库。

这部分论述了如何在您的系统上安装和启用 PCP。

6.1. PCP 概述

您可以使用 Python、Perl、C++ 和 C 接口添加性能指标。分析工具可以直接使用 Python、C++、C 客户端 API 和丰富的 Web 应用程序,使用 JSON 接口探索所有可用的性能数据。

您可以通过将实时结果与存档数据进行比较来分析数据模式。

PCP 的特性:

  • 轻量级分布式架构,在集中分析复杂系统时非常有用。
  • 它允许监控和管理实时数据。
  • 它允许记录和检索历史数据。

PCP 有以下组件:

  • Performance Metric Collector Daemon(pmcd)从已安装的性能指标(pmda)收集性能数据。PMDA 可以在系统上单独加载或卸载,并由同一主机上的 PMCD 控制。
  • 各种客户端工具,如 pminfopmstat,可以在同一个主机或网络上检索、显示、归档和处理这些数据。
  • pcp 软件包提供命令行工具和底层功能。
  • pcp-gui 软件包提供了图形应用程序。执行 yum install pcp-gui 命令安装 pcp-gui 软件包。如需更多信息,请参阅使用 PCP Charts 应用程序可视化追踪 PCP 日志归档

6.2. 安装并启用 PCP

要开始使用 PCP,请安装所有必要的软件包并启用 PCP 监控服务。

这个步骤描述了如何使用 pcp 软件包安装 PCP。如果要自动执行 PCP 安装,使用 pcp-zeroconf 软件包安装。有关使用 pcp-zeroconf 安装 PCP 的更多信息,请参阅使用 pcp-zeroconf 设置 PCP

流程

  1. 安装 pcp 软件包:

    # yum install pcp
  2. 在主机上启用并启动 pmcd 服务:

    # systemctl enable pmcd
    
    # systemctl start pmcd

验证步骤

  • 验证 pmcd 进程是否在主机上运行:

    # pcp
    
    Performance Co-Pilot configuration on workstation:
    
    platform: Linux workstation 4.18.0-80.el8.x86_64 #1 SMP Wed Mar 13 12:02:46 UTC 2019 x86_64
    hardware: 12 cpus, 2 disks, 1 node, 36023MB RAM
    timezone: CEST-2
    services: pmcd
    pmcd: Version 4.3.0-1, 8 agents
    pmda: root pmcd proc xfs linux mmv kvm jbd2

其它资源

6.3. 部署最小 PCP 设置

最小 PCP 设置收集红帽企业 Linux 的性能统计信息。设置涉及在生产系统上添加收集数据以便进一步分析所需的最少软件包数量。

您可以使用各种 PCP 工具分析生成的 tar.gz 文件和 pmlogger 输出归档,并将其与其他性能信息来源进行比较。

先决条件

流程

  1. 更新 pmlogger 配置:

    # pmlogconf -r /var/lib/pcp/config/pmlogger/config.default
  2. 启动 pmcdpmlogger 服务:

    # systemctl start pmcd.service
    
    # systemctl start pmlogger.service
  3. 执行所需的操作,以记录性能数据。
  4. 停止 pmcdpmlogger 服务:

    # systemctl stop pmcd.service
    
    # systemctl stop pmlogger.service
  5. 保存输出并将其保存到基于主机名和当前日期和时间命名的 tar.gz 文件中:

    # cd /var/log/pcp/pmlogger/
    
    # tar -czf $(hostname).$(date +%F-%Hh%M).pcp.tar.gz $(hostname)

    使用 PCP 工具提取此文件并分析数据。

其它资源

6.4. 使用 PCP 分发的系统服务

下表描述了通过 PCP 分发的各种系统服务的角色。

表 6.1. 使用 PCP 分发的系统服务的角色

名称

描述

pmcd

Performance Metric Collector Daemon(PMCD)。

pmie

性能指标参考引擎.

pmlogger

性能指标日志记录器。

pmmgr

根据零个或多个配置目录,为一组已发现的本地和远程主机管理 PCP 守护进程集合,运行 Performance Metric Collector Daemon(PMCD)。

pmproxy

Performance Metric Collector Daemon(PMCD)代理服务器。

6.5. PCP 发布的工具

下表描述了各种工具的用法,这些工具随 PCP 一起分发。

表 6.2. 使用 PCP 发布的工具

名称

描述

pcp

显示 Performance Co-Pilot 安装的当前状态。

pcp-atop

从性能角度显示最重要的硬件资源的系统级别:CPU、内存、磁盘和网络。

pcp-dstat

一次显示一个系统的指标。要显示多个系统的指标,请使用 --host 选项。

pmchart

绘制 Performance Co-Pilot 工具提供的性能指标值。

pmclient

使用性能指标应用程序编程接口(PMAPI)显示高级别系统性能指标。

pmcollectl

从实时系统或 Performance Co-Pilot 存档文件收集和显示系统级数据。

pmconfig

显示配置参数的值。

pmdbg

显示可用的 Performance Co-Pilot 调试控制标志及其值。

pmdiff

比较给定时间窗口中一个或多个存档中每个指标的平均值,以了解在搜索性能回归时可能感兴趣的更改。

pmdumplog

显示 Performance Co-Pilot 归档文件中的控制、元数据、索引和状态信息。

pmdumptext

输出实时或从 Performance Co-Pilot 归档收集的性能指标值。

pmerr

显示可用的 Performance Co-Pilot 错误代码及其对应的错误消息。

pmfind

查找网络上的 PCP 服务。

pmie

定期评估一组算术、逻辑和规则表达式的推理引擎。指标从实时系统或从 Performance Co-Pilot 归档文件收集。

pmieconf

显示或设置可配置的 pmie 变量.

pminfo

显示性能指标信息。指标从实时系统或从 Performance Co-Pilot 归档文件收集。

pmiostat

报告 SCSI 设备(默认)或设备映射器设备的 I/O 统计信息(使用 -x dm 选项)。

pmlc

以交互方式配置活跃的 pmlogger 实例。

pmlogcheck

在 Performance Co-Pilot 归档文件中识别无效的数据。

pmlogconf

创建并修改 pmlogger 配置文件。

pmloglabel

验证、修改或修复 Performance Co-Pilot 存档文件的标签。

pmlogsummary

计算 Performance Co-Pilot 存档文件中存储的性能指标的统计信息。

pmprobe

决定性能指标的可用性。

pmrep

报告所选、易于定制的性能指标值。

pmsocks

允许通过防火墙访问 Performance Co-Pilot 主机。

pmstat

定期显示系统性能的简短摘要。

pmstore

修改性能指标的值。

pmtrace

为跟踪性能指标域代理(PMDA)提供命令行界面。

pmval

显示性能指标的当前值。