第 5 章 配置 Satellite 环境以提高性能
- CPU
- Satellite 可用的物理内核越大,可以为任务实现更高的吞吐量。Puppet 和 PostgreSQL 等一些 Satellite 组件是 CPU 密集型应用,实际上可从更多可用 CPU 内核中受益。
- 内存
- 运行 Satellite 的系统中可用的内存量越大,最好是 Satellite 操作的响应时间。由于 Satellite 使用 PostgreSQL 作为数据库解决方案,因此由于内存中的数据保留增加,任何额外内存与调优相结合,将提高应用程序的响应时间。
- 磁盘
- 由于存储库同步、软件包数据检索、内容主机订阅记录的高频率数据库更新,建议 Satellite 安装在高速度 SSD 上,以避免因为磁盘读取或写入而发生性能瓶颈。Satellite 需要磁盘 IO 处于或以上的 60 日-使用80 MB,每秒为读操作吞吐量每秒的吞吐量。以下任何值都对 Satellite 操作有严重影响。与 HDD 相比,PostgreSQL 等 Satellite 组件从使用 SSD 中受益,因为它们的延迟较低。
- Network
- Satellite 服务器和 Capsule 之间的通信受到网络性能的影响。需要具有最低 jitter 和低延迟的大量网络,才能启用 Satellite 服务器和 Capsule 同步(至少确定它不会导致连接重置等)。
- 服务器电源管理
- 默认情况下,您的服务器可能会被配置为节省电源。虽然这是保持最大功耗的好方法,但它也具有降低 Satellite 可能能够实现的性能的副作用。对于运行 Satellite 的服务器,建议将 BIOS 设置为使系统以性能模式运行,以提高 Satellite 可以实现的最大性能级别。
5.1. 基准测试磁盘性能 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
我们正在更新 satellite-maintain,仅在内部快速存储基准产生数字低于我们推荐的吞吐量时警告用户。
另外,在可运行的更新基准脚本(可能会在以后集成到 satellite-maintain 中)来获取更准确的实际存储信息。
注意
-
您可能需要临时减少 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
如脚本中的 README 块中所述,您通常希望在以下测试中平均 100MB/sec 或更高版本中看到:
- 基于本地 SSD 的存储应给出 600MB/sec 或更高版本的值。
- spinning 磁盘应该在 10039)- the200MB/sec 或更高范围内提供值。
如果您在这中看到值,请创建一个支持问题单以获得帮助。
如需更多信息,请参阅 Satellite 操作上的磁盘影响。