6.7. 胶囊配置调优
Capsule 旨在卸载 Satellite 负载的一部分,并提供对将内容分发到客户端的不同网络的访问,但也可用于执行远程执行作业。它们无法帮助任何广泛使用 Satellite API 作为主机注册或软件包配置集更新的内容。
6.7.1. Capsule 性能测试
我们在多个 Capsule 配置中计算了多个测试案例:
Capsule HW 配置 | CPU | RAM |
---|---|---|
minimal | 4 | 12 GiB |
Large | 8 | 24 GiB |
额外大 | 16 | 46 GiB |
内容交付用例
在下载测试中,我们同时下载了 2000 个软件包的 40MB 存储库(100, 200)。1000 个主机,我们每次我们加倍的 Capsule 服务器资源时,每次下载期间大约有 50% 的改进。有关更精确的数字,请查看下表。
并发下载主机 | Minimal (4 CPU 和 12 GiB RAM)→ Large (8 CPU 和 24 GiB RAM) | Large (8 CPU 和 24 GiB RAM)→ Extra Large (16 CPU 和 46 GiB RAM) | Minimal (4 CPU 和 12 GiB RAM)→ Extra Large (16 CPU 和 46 GiB RAM) |
---|---|---|---|
平均贡献 | ~ 50%(例如,对于 700 个并发下载,平均 9 秒。每个软件包 4.4 秒) | ~ 40%(例如,对于 700 个并发下载,平均 4.4 秒)。每个软件包 2.5 秒) | ~ 70 (如 700 个并发下载,平均 9 秒)。每个软件包 2.5 秒) |
当从 Satellite 服务器与从 Capsule 服务器下载性能相比,我们只看到大约 5% 的速度,但预期为 Capsule 服务器的主要好处在于获得更接近地理分布式客户端(或不同网络中的客户端)以及处理负载 Satellite 服务器的一部分的内容。在某些较小的硬件配置中(8 个 CPU 和 24 GiB),Satellite 服务器无法处理来自 500 个并发客户端的下载,而具有相同硬件配置的 Capsule 服务器可以服务超过 1000 个且可能甚至更多。
频繁注册用例
对于并发注册,瓶颈是 CPU 速度,但所有配置都可以在不交换的情况下处理高并发性。用于 Capsule 的硬件资源仅对注册性能的影响最小。例如,与具有 4 个 CPU 和 12 GiB RAM 的 Capsule 服务器相比,具有 16 个 CPU 和 46 GiB RAM 的 Capsule 服务器的性能最多显著提高。
远程执行用例
我们已测试了通过 SSH 和 Ansible 后端在 500、2000 和 4000 主机上执行远程执行作业。所有配置都可以处理所有测试,且无错误,除了最小配置(4 个 CPU 和 12 GiB 内存)外,这些测试无法在所有 4000 主机上完成。
内容同步用例
在同步测试中,我们同步 Red Hat Enterprise Linux 6、7、8 BaseOS 和 8 AppStream,我们没有发现 Capsule 配置之间没有显著区别。在并行同步更多内容视图时,这将有所不同。