5.9. 胶囊配置调优
Capsules 旨在卸载 Satellite 负载的一部分,并提供对与向客户端分发内容相关的不同网络的访问权限,但它们也可用于执行远程执行作业。它们无法满足任何广泛使用 Satellite API 作为主机注册或软件包配置文件更新的信息。
5.9.1. Capsule 性能测试
在多个 Capsule 配置中,我们测量了多个测试案例:
| Capsule HW 配置 | CPU | RAM | 
|---|---|---|
| Minimal | 4 | 12 GiB | 
| 大 | 8 | 24 GiB | 
| 额外大 | 16 | 46 GiB | 
内容交付用例
在下载测试中,我们在 100, 200, 上同时下载了 40MB 仓库 2000 个软件包。1000 个主机,我们每次双重胶囊服务器资源时平均下载时间约为 50%。有关更精确的数字,请查看下表。
| 并发下载主机 | 最小(4 个 CPU 和 12 GiB RAM) | 大(8 个 CPU 和 24 GiB RAM) | 最小(4 个 CPU 和 12 GiB RAM) | 
|---|---|---|---|
| 平均改进 | ~ 50%(例如 700 个并发下载平均 9 秒与.每个软件包的 4.4 秒) | ~ 40%(例如 700 个并发下载平均 4.4 秒与.每个软件包 2.5 秒 | ~ 70%(例如 700 个并发下载平均 9 秒与.每个软件包 2.5 秒 | 
当我们从 Satellite 服务器与 Capsule 服务器下载性能进行比较时,我们只看到 5% 的速度,但正因为胶囊服务器的主要好处是更接近地域分布的客户端(或不同网络中的客户端)以及处理负载服务器的一部分时,必须处理自身。在一些较小的硬件配置(8 个 CPU 和 24 GiB)中,Satellite 服务器无法处理从 500 多个并发客户端下载,而具有相同硬件配置的胶囊服务器可以服务超过 1000,甚至可能更多。
并发注册用例
						对于并发注册,瓶颈通常是 CPU 速度,但所有配置都能够在不交换的情况下处理高并发性。用于 Capsule 的硬件资源只会影响注册性能。例如,与具有 4 个 CPU 和 12 GiB RAM 的胶囊服务器相比,具有 16 个 CPU 和 46 GiB RAM 的 Capsule 服务器最多会提高 9% 的注册速度。在非常高并发的期间,您可能会在胶囊服务器到 Satellite 服务器通信中遇到超时。您可以使用 /etc/foreman-installer/custom-hiera.yaml 中的以下可调整来增加默认超时:
					
apache::mod::proxy::proxy_timeout: 600
apache::mod::proxy::proxy_timeout: 600远程执行用例
我们测试了通过 SSH 和 Ansible 后端在 500、2000 和 4000 主机上执行远程执行作业。所有配置都能够处理所有测试时没有错误,除了在所有 4000 主机上无法完成的最小配置(4 个 CPU 和 12 GiB 内存)。
内容同步用例
在同步 Red Hat Enterprise Linux 6、7、8 BaseOS 和 8 AppStream 的同步测试中,我们没有在 Capsule 配置中看到显著区别。这与并行同步大量内容视图的不同。