第 4 章 确定硬件和操作系统配置
- CPU
- Satellite 可用的物理内核数量越多,可以为任务实现更高的吞吐量。Puppet 和 PostgreSQL 等一些卫星组件是 CPU 密集型应用,可以从更多可用 CPU 内核中受益。
- 内存
- 在运行 Satellite 的系统中可用的内存量越多,其最好是 Satellite 操作的响应时间。由于 Satellite 使用 PostgreSQL 作为数据库解决方案,任何与调优相关的额外内存都会因为内存中的数据保留增加而提高应用的响应时间。
- 磁盘
- 由于存储库同步、软件包数据检索、对内容主机的订阅记录高频率数据库更新,因此建议将 Satellite 安装在高速 SSD 上,以避免因为存储库同步、增加磁盘读取或写入而造成的性能瓶颈。Satellite 需要磁盘 IO 为读取操作平均吞吐量,或超过 60 个用于读取操作的平均吞吐量。此值下的任何内容可能会对 Satellite 操作有严重影响。与 HDD 相比,PostgreSQL 等 Satellite 组件从使用 SSD 中受益。
- Network
- Satellite 服务器和胶囊之间的通信会受到网络性能的影响。需要具有最小 jitter 和低延迟的下降网络才能启用空闲操作,如卫星服务器和胶囊同步(至少确保不会导致连接重置等)。
- 服务器电源管理
- 默认情况下,您的服务器很可能被配置为节省电源。虽然这是保持检查中最大功耗的好方法,但它也有降低 Satellite 可能实现的性能的副作用。对于运行 Satellite 的服务器,建议将 BIOS 设置为使系统在性能模式下运行,以提高 Satellite 可以实现的最大性能级别。
4.1. 基准测试磁盘性能 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
我们正努力更新 satellite-maintain
,以仅在用户内部快速存储基准导致我们推荐的吞吐量下加上数字时警告用户。
另外,还在更新的基准测试脚本中工作,您可以运行(将来可能会集成到 satellite-maintain
s 中),以获得更加准确的实际存储信息。
注意
-
您可能需要临时减少 RAM,才能运行 I/O 基准。例如,如果 Satellite 服务器有 256 GiB RAM,则测试需要 512 GiB 的存储来运行。作为临时解决方案,您可以在系统引导过程的 grub 中添加
mem=20G
内核选项,以临时缩小 RAM 的大小。基准在指定目录中创建一个 RAM 大小两倍的文件,并对其执行一系列存储 I/O 测试。该文件的大小可确保测试不仅测试文件系统缓存。如果您对其他文件系统(如 PostgreSQL 存储小的卷)进行基准测试,您可能需要减小 RAM 大小(如上所述)。 - 如果您使用不同的存储解决方案,如 SAN 或 iSCSI,您可以期望不同的性能。
- 红帽建议您在执行此脚本前停止所有服务,系统将提示您执行此操作。
此测试不使用直接 I/O,并将像正常操作一样使用文件缓存。
您可以找到我们的脚本 storage-benchmark 的第一个版本。要执行它,请只将脚本下载到您的 Satellite 中,使其可执行并运行:
./storage-benchmark /var/lib/pulp
# ./storage-benchmark /var/lib/pulp
如脚本中的 README 块中所述,通常您希望在测试中看到平均 100MB/sec 或更高版本:
- 基于本地 SSD 的存储应提供 600MB/sec 或更高版本的值。
- Spinning 磁盘应该提供 100rhacm-rhacm200MB/sec 或更高版本范围内的值。
如果您在此下方看到值,请创建一个支持问题单以获取帮助。
如需更多信息,请参阅 在 Satellite 操作上调整磁盘的影响。