6.7. Capsules 設定のチューニング
Capsule は、Satellite の負荷の一部をオフロードし、クライアントへのコンテンツの配信に関連するさまざまなネットワークへのアクセスを提供することを目的としていますが、リモート実行ジョブの実行にも使用できます。ホスト登録やパッケージプロファイルの更新など、Satellite API を広範囲に使用するものについては、サポートできません。
6.7.1. Capsule のパフォーマンステスト リンクのコピーリンクがクリップボードにコピーされました!
Red Hat は、複数の Capsule 設定で複数のテストケースを測定しました。
| Capsule HW 設定 | CPU | RAM |
|---|---|---|
| minimal | 4 | 12 GiB |
| large | 8 | 24 GiB |
| extra large | 16 | 46 GiB |
コンテンツ配信のユースケース
ダウンロードテストでは、2000 個のパッケージがある 40 MB リポジトリーを、100 台、200 台、(中略。以下 100 ずつ増加)、1000 台のホストで同時にダウンロードしました。Capsule Server のリソースを 2 倍にするたびに、平均ダウンロード時間が約 50% 向上しました。より正確な数値については、以下の表を参照してください。
| 同時ダウンロードホスト | Minimal (4 CPU および 12 GiB RAM) | Large (8 CPU および 24 GiB RAM) | Minimal (4 CPU および 12 GiB RAM) |
|---|---|---|---|
| 平均向上率 | 約 50% (例: 700 台での同時ダウンロードの場合に、1 パッケージあたり平均 9 秒が4.4 秒に向上) | 約 40% (例: 700 台での同時ダウンロードの場合に、1 パッケージあたり平均 4.4 秒が2.5 秒に向上) | 約 70% (例: 700 台での同時ダウンロードの場合に、1 パッケージあたり平均 9 秒が2.5 秒に向上) |
Satellite Server と Capsule Server のダウンロードパフォーマンスを比較したところ、約 5% の速度向上しか見られませんでした。しかし、Capsule Server の主な利点は、コンテンツを地理的に分散したクライアント (または異なるネットワーク内のクライアント) に近づけることや、Satellite Server 自体が処理する必要がある負荷の一部を処理することにあります。小規模なハードウェア設定 (8 CPU および 24 GiB) の Satellite Server は、500 を超える同時クライアントからのダウンロードを処理できませんでしたが、同じハードウェア設定の Capsule Server は、1000 以上のクライアントにサービスを提供できました。
頻繁な登録のユースケース
同時登録の場合、ボトルネックは CPU 速度ですが、すべての設定で、スワッピングせずに高い同時実行性を処理することができました。Capsule に使用されるハードウェアリソースは、登録パフォーマンスに最小限の影響しか与えません。たとえば、16 個の CPU と 46 GiB の RAM を備えた Capsule Server は、4 個の CPU と 12 GiB の RAM を備えた Capsule Server と比較して、登録速度が最大で 9% 向上します。
リモート実行のユースケース
500 台、2000 台、4000 台のホストで SSH と Ansible バックエンドの両方を介してリモート実行ジョブを実行することをテストしました。4000 台すべてのホストで完了できなかった最小の設定 (4 CPU と 12 GiB メモリー) を除いて、すべての設定ですべてのテストをエラーなしで処理できました。
コンテンツ同期のユースケース
Red Hat Enterprise Linux 6、7、8 BaseOS、および 8 AppStream を同期した同期テストでは、Capsule 設定間で大きな違いは見られませんでした。これは、より多くのコンテンツビューを並行して同期する場合とは異なります。