1.3. ストレージのガイドライン
Capsule Server をインストールして効率性を向上させる場合は、以下のガイドラインを考慮してください。
-
/tmpディレクトリーを別のファイルシステムとしてマウントする場合は、/etc/fstabファイルのexecマウントオプションを使用する必要があります。/tmpが、noexecオプションを指定してすでにマウントされている場合は、オプションをexecに変更して、ファイルシステムを再マウントする必要があります。これは、puppetserverサービスが機能するために必要です。 -
Capsule Server データの多くは
/varディレクトリーに格納されるため、LVM ストレージに/varをマウントして、システムがスケーリングできるようにしてください。 -
/var/cache/pulp/と/var/lib/pulp/ディレクトリーに同じボリュームを使用することで、同期後に/var/cache/pulp/から/var/lib/pulp/にコンテンツを移動する時間を短縮できます。 -
/var/lib/qpidd/ディレクトリーでは、goferdサービスが管理するコンテンツホスト 1 つに対して使用される容量は 2 MB を少し超えます。たとえば、コンテンツホストの数が 10,000 個の場合、/var/lib/qpidd/に 20 GB のディスク容量が必要になります。 -
/var/lib/pulp/ディレクトリーと/var/lib/mongodb/ディレクトリーには、高帯域幅で低レイテンシーのストレージの使用をお勧めします。Red Hat Satellite には I/O を大量に使用する操作が多数あるため、高レイテンシーで低帯域幅のストレージを使用すると、パフォーマンス低下の問題が発生します。インストールに、毎秒 60 - 80 メガバイトのスピードがあることを確認してください。fioツールを使用すると、このデータが取得できます。fioツールの詳細な使用方法は、Red Hat ナレッジベースのソリューション「Impact of Disk Speed on Satellite Operations」を参照してください。
ファイルシステムのガイドライン
-
XFS ファイルシステムは、
ext4では存在する inode の制限がないため、Red Hat Satellite 6 では XFS ファイルシステムを使用してください。Capsule Server は多くのシンボリックリンクを使用するため、ext4とデフォルトの数の inode を使用する場合は、システムで inode が足りなくなる可能性が高くなります。 -
MongoDB は従来の I/O を使用してデータファイルにアクセスしないので、MongoDB では NFS を使用しないでください。また、NFS でデータファイルとジャーナルファイルの両方がホストされている場合にはパフォーマンスの問題が発生します。NFS を使用する必要がある場合は、
/etc/fstabファイルでbg、nolock、およびnoatimeのオプションを使用してボリュームをマウントします。 - Pulp データストレージに NFS を使用しないでください。Pulp に NFS を使用すると、コンテンツの同期のパフォーマンスが低下します。
- 入出力レイテンシーが高すぎるため、GFS2 ファイルシステムは使用しないでください。
ログファイルのストレージ
ログファイルは、/var/log/messages/、/var/log/httpd/、および /var/lib/foreman-proxy/openscap/content/ に書き込まれます。logrotate を使って、これらのファイルのサイズを管理できます。詳細は『Red Hat Enterprise Linux 7 システム管理者のガイド』の「ログローテーション」を参照してください。
ログメッセージに必要なストレージの正確な容量は、インストール環境および設定により異なります。
NFS マウントを使用する場合の SELinux の考慮事項
NFS 共有を使用して /var/lib/pulp ディレクトリーをマウントすると、SELinux は同期プロセスをブロックします。これを避けるには、以下の行を /etc/fstab に追加して、ファイルシステムテーブル内の /var/lib/pulp ディレクトリーの SELinux コンテキストを指定します。
nfs.example.com:/nfsshare /var/lib/pulp/content nfs context="system_u:object_r:httpd_sys_rw_content_t:s0" 1 2
nfs.example.com:/nfsshare /var/lib/pulp/content nfs context="system_u:object_r:httpd_sys_rw_content_t:s0" 1 2
NFS 共有が既にマウントされている場合は、上記の方法を使用して再マウントし、以下のコマンドを入力します。
chcon -R system_u:object_r:httpd_sys_rw_content_t:s0 /var/lib/pulp
# chcon -R system_u:object_r:httpd_sys_rw_content_t:s0 /var/lib/pulp
重複パッケージ
同じパッケージが異なるリポジトリーで重複して存在する場合には、ディスク上に一度しか保存されません。そのため、重複するパッケージを別のリポジトリーに追加するときに必要な追加ストレージが少なくて済みます。ストレージの多くは、/var/lib/mongodb/ および /var/lib/pulp/ ディレクトリーにあります。これらのエンドポイントは手動で設定できません。ストレージの問題を回避するために、ストレージが /var ファイルシステムで利用可能であることを確認してください。
一時的なストレージ
/var/cache/pulp/ ディレクトリーは、同期中に、コンテンツを一時的に保存するために使用します。同期タスクがすべて完了したら、コンテンツは /var/lib/pulp/ ディレクトリーに移動されます。
RPM 形式のコンテンツの場合は、各 RPM ファイルは同期後に /var/lib/pulp ディレクトリーに移動されます。一度に、/var/cache/pulp/ ディレクトリーに保存される RPM ファイルは 5 つです。デフォルトでは、RPM コンテンツの同期タスクは最大 8 つまで同時に実行でき、それぞれ最大 1 GB のメタデータを使用します。
ソフトウェアコレクション
ソフトウェアコレクションは、/opt/rh/ ディレクトリーと /opt/theforeman/ ディレクトリーにインストールされます。
/opt ディレクトリーへのインストールには、root ユーザーによる書き込みパーミッションおよび実行パーミッションが必要です。
シンボリックリンク
/var/lib/pulp/ および /var/lib/mongodb/ にはシンボリックリンクは使用できません。
同期された RHEL ISO
RHEL コンテンツの ISO を Satellite に同期する予定の場合には、Red Hat Enterprise Linux のすべてのマイナーバージョンも同期することに注意してください。これに対応するため、Satellite に適切なストレージを設定するようにプランニングする必要があります。