Red Hat Training

A Red Hat training course is available for Red Hat Satellite

第1章 インストールのための環境準備

1.1. システム要件

ネットワーク接続されたベースシステムには、以下の要件が適用されます。

  • 64 ビットアーキテクチャー
  • Red Hat Enterprise Linux 7 Server の最新バージョン
  • 最低 4 コア 2.0 GHz CPU
  • Satellite Server が機能するには、最低 20 GB のメモリーが必要です。また、最低 4 GB のスワップ領域が推奨されます。最低値よりも少ないメモリーで実行している Satellite は正常に動作しないことがあります。
  • 一意なホスト名 (小文字、数字、ドット (.)、ハイフン (-) を使用できます)
  • 現行の Red Hat Satellite サブスクリプション
  • 管理ユーザー (root) アクセス
  • システム umask 0022
  • 完全修飾ドメイン名を使用した完全な正引きおよび逆引きの DNS 解決

Satellite Server または Capsule Server をインストールする前に、環境がインストール要件を満たしていることを確認する必要があります。

Satellite Server 実行の機能だけを提供する、新規にプロビジョニングされたシステムに、Satellite Server はインストールする必要があります。

注記

Red Hat Satellite Server と Capsule Server のバージョンは一致する必要があります。たとえば、Satellite 6.2 Server は 6.4 Capsule Server を実行できず、Satellite 6.4 Server は 6.2 Capsule Server を実行できません。Satellite Server と Capsule Server のバージョンが一致しないと、警告なしで Capsule Server が失敗します。

注記

自己登録の Satellites はサポートされません。

コンテンツホストが多数ある場合には、「大規模なデプロイメントに関する考慮事項」を参照して、お使いの環境が正しく設定されていることを確認してください。

Capsule Server のスケーリングの詳細については、「Capsule Server のスケーラビリティーに関する考慮事項」を参照してください。

認定ハイパーバイザー

Red Hat Satellite は、Red Hat Enterprise Linux の実行をサポートするハイパーバイザーで稼働する物理システムおよび仮想マシンをいずれも完全にサポートしています。認定ハイパーバイザーに関する詳細は、「Red Hat Enterprise Linux の実行が認定されているハイパーバイザー 」を参照してください。

1.2. ストレージの要件とガイドライン

このセクションでは、最小ストレージ要件を紹介し、Satellite Server と Capsule Server のインストールのストレージに関するガイドラインについて説明します。

ストレージアーキテクチャー

  • 異なるリポジトリーで重複するパッケージは、ディスク上に一度しか格納されないため、重複するパッケージを含む追加リポジトリーに必要な追加ストレージが少なくなります。ストレージの多くは、/var/lib/mongodb/ ディレクトリーおよび /var/lib/pulp/ ディレクトリーに使用されます。これらのエンドポイントは手動で設定できません。ストレージの問題を回避するために、ストレージが /var ファイルシステムで利用可能であることを確認してください。
  • /var/cache/pulp/ ディレクトリーは、同期中にコンテンツを一時的に保管するために使用されます。RPM 形式のコンテンツの場合、このディレクトリーには保管されるファイルは最大 5 RPM になります。各ファイルは、同期後に /var/lib/pulp/ ディレクトリーに移動します。デフォルトでは、同時に最大 8 個の RPM コンテンツ同期タスクを実行でき、それぞれに対して最大 1 GB のメタデータが使用されます。ISO 形式のコンテンツの場合に、1 つの同期タスクに対する ISO ファイルはすべて、タスクが完了するまで /var/cache/pulp/ に格納され、タスクの完了後に、このファイルは /var/lib/pulp/ ディレクトリーに移動します。

    インストールや更新に ISO イメージを使用する予定の場合には、外部ストレージを提供するか、ISO ファイルを一時的に保存するために /var/tmp に領域を空けるようにする必要があります。

    たとえば、4 つの ISO ファイル (それぞれのサイズが 4 GB) を同期している場合は、/var/cache/pulp/ ディレクトリーに合計 16 GB 必要になります。これらのファイルに必要な一時ディスク容量は通常 RPM コンテンツのサイズを超えるので、同期する ISO ファイルの数を考慮してください。

  • /var/lib/qpidd/ ディレクトリーでは、goferd サービスが管理するコンテンツホスト 1 つに対して使用される容量は 2 MB を少し超えます。たとえば、コンテンツホストの数が 10,000 個の場合、/var/lib/qpidd/ に 20 GB のディスク容量が必要になります。
  • ログファイルは、/var/log/messages//var/log/httpd/、および /var/lib/foreman-proxy/openscap/content/ の場所で確認できます。logrotate を使って、これらのファイルのサイズを管理できます。詳細は、Red Hat Enterprise Linux 7 『システム管理者のガイド』「ログローテーション」 を参照してください。

ストレージの要件

以下の表には、特定のディレクトリーに推奨されるストレージ要件が詳述されています。これらの値は、期待されるユースケースシナリオに基づき、個別の環境に応じて異なることがあります。Satellite Server にはデフォルトで統合 Capsule が含まれるので、Capsule Server の表は Satellite Server にも適用されます。表を参照する際には、ご自身にあったユースケースに注目してください。たとえば、Capsule Server で Pulp を有効にしていない場合には、/var/lib/pulp/ のような Pulp に関連するディレクトリーのストレージ要件については、ここに記載されているものと同一である必要はありません。

以下の 2 つの表では、ランタイムサイズは Red Hat Enterprise Linux 5、6、および 7 のリポジトリーと同期して測定されています。

表1.1 Satellite Server インストールのストレージ要件

ディレクトリーインストールサイズランタイムサイズ留意事項

/var/cache/pulp/

1 MB

20 GB (接続インストールの最小値)

本項の概要にある記述を参照してください。

/var/cache/pulp/

1 MB

30 GB (非接続インストールの最小値)

本項の概要にある記述を参照してください。

/var/lib/pulp/

1 MB

500 GB

  • コンテンツが Satellite Server に追加されると、継続的に増加します。長期にわたる増加を計画してください。
  • シンボリックリンクは使用できません。

/var/lib/mongodb/

3.5 GB

50 GB

  • コンテンツが Satellite Server に追加されると、継続的に増加します。長期にわたる増加を計画してください。
  • シンボリックリンクは使用できません。
  • MongoDB では NFS を使用しないでください。

/var/lib/qpidd/

25 MB

該当なし

goferd が管理するコンテンツホストが Satellite Server に追加されるので継続的に増加します (コンテンツホストごとに 2 MB)。長期にわたる増加を計画してください。

/var/log/

10 MB

250 MB

なし

/var/lib/pgsql/

100 MB

10 GB

/var/lib/pgsql/ に最小 2 GB の利用可能なストレージがあること。さらに、データストレージ要件の増加に伴ってこのディレクトリーを含むパーティションを拡張できること。PostgreSQL で NFS は使用しないでください。

/var/spool/squid/

0 MB

10 GB

なし

/usr

3 GB

該当なし

なし

/opt

500 MB (接続されたインストール)

該当なし

  • ソフトウェアコレクションは、/opt/rh/ ディレクトリーと /opt/theforeman/ ディレクトリーにインストールされます。
  • /opt ディレクトリーへのインストールには、root による書き込みパーミッションおよび実行パーミッションが必要です。

/opt

3 GB (非接続インストール)

該当なし

  • ソフトウェアコレクションは、/opt/rh/ ディレクトリーと /opt/theforeman/ ディレクトリーにインストールされます。
  • /opt ディレクトリーへのインストールには、root による書き込みパーミッションおよび実行パーミッションが必要です。
  • インストールに使用されるリポジトリーのコピーは、このディレクトリーに格納されます。

/opt/puppetlabs

180 MB

該当なし

  • /opt/puppetlabs ディレクトリーに Puppet データベースが保存されます。

表1.2 Capsule Server インストールのストレージ要件

ディレクトリーインストールサイズランタイムサイズ留意事項

/var/cache/pulp/

1 MB

20 GB (最小)

本項の概要にある記述を参照してください。

/var/lib/pulp/

1 MB

500 GB

  • コンテンツが追加されると、継続的に増加します。長期にわたる増加を計画してください。
  • シンボリックリンクは使用できません。

/var/lib/mongodb/

3.5 GB

50 GB

  • コンテンツが追加されると、継続的に増加します。長期にわたる増加を計画してください。
  • シンボリックリンクは使用できません。
  • MongoDB では NFS を使用しないでください。

ストレージのガイドライン

  • ほとんどの Satellite Server データと Capsule Server データは /var ディレクトリーに格納されるため、システムがスケーラブルになるように /var を LVM ストレージにマウントしてください。
  • /var/lib/pulp/ ディレクトリーと /var/lib/mongodb/ ディレクトリーには、高帯域幅で低レイテンシーのストレージの使用をお勧めします。Red Hat Satellite には I/O を大量に使用する多くの操作があるため、高レイテンシーで低帯域幅のストレージを使用すると、パフォーマンス低下の問題が発生します。インストールに、毎秒 60 - 80 メガバイトのスピードがあることを確認してください。fio ツールを使用すると、このデータが取得できます。fio ツールの詳細な使用方法は、Red Hat ナレッジベースのソリューション「Impact of Disk Speed on Satellite 6 Operations」を参照してください。
  • /var/cache/pulp//var/lib/pulp/ ディレクトリーに同じボリュームを使用して、同期後に /var/cache/pulp/ から /var/lib/pulp/ にコンテンツを移動するのにかかる時間を短縮します。
  • MongoDB は従来の I/O を使用してデータファイルにアクセスしないので、MogoDB では NFS を使用しないでください。また、NFS でデータファイルとジャーナルファイルの両方がホストされている場合にはパフォーマンスの問題が発生します。NFS を使用する必要がある場合は、/etc/fstab ファイルで bgnolock、および noatime のオプションを使用してボリュームをマウントします。
  • 入出力レイテンシーが高すぎるため、GFS2 ファイルシステムは使用しないでください。
  • パフォーマンスを向上させるには、HDD (Hard Disk Drive) ではなく SSD (Solid State Drive) を使用します。
  • XFS ファイルシステムは、ext4 では存在する inode の制限がないため、Red Hat Satellite 6 では XFS ファイルシステムを使用してください。Satellite は多くのシンボリックリンクを使用するため、ext4 とデフォルトの数の inode を使用する場合は、システムで inode が足りなくなる可能性が高くなります。
  • 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 共有が既にマウントされている場合は、上記の方法を使用して再マウントし、以下のコマンドを入力します。

    # chcon -R system_u:object_r:httpd_sys_rw_content_t:s0 /var/lib/pulp

1.3. サポート対象のオペレーティングシステム

オペレーティングシステムは、ディスク、ローカル ISO イメージ、キックスタート、または Red Hat がサポートする他の任意の方法でインストールできます。Red Hat Satellite Server と Red Hat Satellite Capsule Server は、Satellite 6.3 のリリース時に利用可能な Red Hat Enterprise Linux 7 Server の最新バージョンでのみサポートされています。EUS または z-stream を含む Red Hat Enterprise Linux の以前のバージョンはサポートされません。

Red Hat Satellite Server および Red Hat Satellite Capsule Server には、@Base パッケージグループを含む Red Hat Enterprise Linux インストールが必要です。他のパッケージセットの変更や、サーバーの直接的な運用に直接必要でないサードパーティーの構成やソフトウェアは含めないようにしてください。機能強化や Red Hat 以外のセキュリティーソフトウェアもこの制限に含まれます。インフラストラクチャーにこのようなソフトウェアが必要な場合は、Satellite Server が完全に機能することを最初に確認し、その後でシステムのバックアップを作成して、Red Hat 以外のソフトウェアを追加します。

Satellite Server システムは新しくプロビジョニングすることが推奨されます。また、Capsule Server も新しくプロビジョニングし、Red Hat CDN に登録されていないシステムであることが推奨されます。Satellite を実行する以外の目的でシステムを使用することはサポートされません。

以下のいずれかがシステムに存在する場合は、インストールする前に削除する必要があります。

  • Java 仮想マシン
  • Puppet RPM ファイル
  • 本書でインストールのために明示的に必要とされた以外の追加の yum リポジトリー

1.4. サポート対象のブラウザー

以下の Web ブラウザーは完全にサポートされます。

  • Firefox バージョン 39 以降
  • Chrome バージョン 28 以降

以下の Web ブラウザーは部分的にサポートされます。Satellite Web UI インターフェースは正常に機能しますが、特定のデザイン要素が期待どおりに表示されないことがあります。

  • Firefox バージョン 38
  • Chrome バージョン 27
  • Internet Explorer バージョン 10 および 11
注記

Satellite Server の Web UI とコマンドラインインターフェースは、英語、ポルトガル語、中国語 (簡体)、中国語(繁体)、韓国語、日本語、イタリア語、スペイン語、ロシア語、フランス語、ドイツ語に対応しています。

1.5. ポートとファイアウォールの要件

Satellite アーキテクチャーのコンポーネントが通信できるようにするには、Satellite をインストールするベースのオペレーティングシステムで、特定のネットワークポートを開放し、ネットワークベースのファイアウォールを無効にしておく必要があります。

以下の表は、ネットワークトラフィックの宛先ポートと方向を示しています。この情報を使用してネットワークベースのファイアウォールを設定します。一部のクラウドソリューションでは、ネットワークベースのファイアウォールと同様にそれぞれのマシンが分断されるため、マシン間の通信を特別に許可するよう設定する必要があることに注意してください。

統合 Capsule

Satellite Server には Capsule が統合されており、Satellite Server に直接接続されたホストは、以下の表のコンテキストでは Satellite のクライアントになります。これには、Capsule Server が実行されているベースシステムが含まれます。

Capsule のクライアント

Satellite と統合された Capsule ではなく、Capsule のクライアントであるホストには、Satellite Server へのアクセスが必要ありません。Satellite トポロジーの詳細は『Red Hat Satellite 6 のプランニング』「Capsule ネットワーク」を参照してください。

使用している設定に応じて、必要なポートは変わることがあります。

表1.3 Red Hat CDN 通信に対する Satellite のポート

ポートプロトコルサービス用途

443

TCP

HTTPS

サブスクリプション管理サービス (access.redhat.com) と Red Hat CDN (cdn.redhat.com) への接続。

Satellite がネットワークから切断されている場合を除き、Satellite Server には Red Hat CDN へのアクセスが必要になります。Red Hat CDN (cdn.redhat.com) で使用されている IP アドレスの一覧は、Red Hat カスタマーポータルのナレッジベース記事「Red Hat が公開している CIDR の一覧」を参照してください。

表1.4 Satellite へのブラウザーベースユーザーインターフェース向けポート

ポートプロトコルサービス用途

443

TCP

HTTPS

Satellite へのブラウザーベース UI アクセス

80

TCP

HTTP

Satellite に Web UI でアクセスするための HTTPS へのリダイレクション (オプション)

表1.5 Satellite に通信するクライアント向けポート

ポートプロトコルサービス用途

80

TCP

HTTP

Anaconda、yum、Katello 証明書およびテンプレートの取得向け、iPXE ファームウェアのダウンロード向け

443

TCP

HTTPS

サブスクリプション管理サービス、yum、Telemetry サービス、Katello エージェントへの接続向け

5647

TCP

amqp

Satellite の Qpid ディスパッチルーターと通信する Katello エージェント

8000

TCP

HTTPS

キックスタートテンプレートをホストにダウンロードする Anaconda、iPXE ファームウェアのダウンロード向け

8140

TCP

HTTPS

マスター接続に対する Puppet エージェント

9090

TCP

HTTPS

統合 Capsule のスマートプロキシーへの SCAP レポートの送信、プロビジョニング中の検出イメージ向け

5000

TCP

HTTPS

Docker レジストリーのための Katello への接続

Satellite Server に直接接続された管理対象ホストは、統合された Capsule のクライアントとなるため、このコンテキストではクライアントになります。これには、Capsule Server が稼働しているベースシステムが含まれます。

表1.6 オプションのネットワークポート

ポートプロトコルサービス用途

22

TCP

SSH

Remote Execution (Rex) および Ansible 向けの Satellite および Capsule からの通信

443

TCP

HTTPS

vCenter のコンピュートリソースに対する Satellite からの通信

5000

TCP

HTTP

OpenStack のコンピュートリソースまたは実行中のコンテナーに対する Satellite からの通信

22、16514

TCP

SSH、SSL/TLS

libvirt のコンピュートリソースに対する Satellite からの通信

389、636

TCP

LDAP、LDAPS

LDAP およびセキュアな LDAP 認証ソースに対する Satellite からの通信

5900 - 5930

TCP

SSL/TLS

ハイパーバイザー向け Web UI の NoVNC コンソールに対する Satellite からの通信

1.6. クライアントから Satellite Server への接続の有効化

Satellite Server の内部 Capsule のクライアントである Capsule とコンテンツホストは、Satellite のホストベースのファイアウォールとすべてのネットワークベースのファイアウォールを介したアクセスを必要とします。

本セクションでは、Satellite をインストールする Red Hat Enterprise Linux 7 システム上のホストベースのファイアウォールの設定と、クライアントからの受信接続を有効にし、これらの設定をシステムの再起動後にも保持する方法について説明します。使用するポートの詳細は「ポートとファイアウォールの要件」を参照してください。

ファイアウォールの設定

  1. クライアントから Satellite の通信用のポートを開放するには、Satellite をインストールするベースシステムで以下のコマンドを入力します。

    # firewall-cmd \
    --add-port="53/udp" --add-port="53/tcp" \
    --add-port="67/udp" --add-port="69/udp" \
    --add-port="80/tcp"  --add-port="443/tcp" \
    --add-port="5000/tcp" --add-port="5647/tcp" \
    --add-port="8000/tcp" --add-port="8140/tcp" \
    --add-port="9090/tcp"
  2. 変更を永続化します。

    # firewall-cmd --runtime-to-permanent

1.7. ファイアウォール設定の確認

firewall-cmd コマンドを使用して、ファイアウォール設定の変更を確認できます。

ファイアウォール設定の確認

# firewall-cmd --list-all

詳細は『Red Hat Enterprise Linux 7 セキュリティーガイド』の「firewall-cmd コマンドラインツールを使用したファイアウォールの設定」を参照してください。

1.8. DNS 解決の検証

完全修飾ドメイン名を使用して完全な正引きおよび逆引き DNS 解決を検証すると、Satellite のインストール中の問題を回避できます。

ホスト名とローカルホストが正しく解決されることを確認します。

# ping -c1 localhost
# ping -c1 `hostname -f` # my_system.domain.com

名前解決に成功すると、以下のような出力が表示されます。

# ping -c1 localhost
PING localhost (127.0.0.1) 56(84) bytes of data.
64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.043 ms

--- localhost ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.043/0.043/0.043/0.000 ms

# ping -c1 `hostname -f`
PING hostname.gateway (XX.XX.XX.XX) 56(84) bytes of data.
64 bytes from hostname.gateway (XX.XX.XX.XX): icmp_seq=1 ttl=64 time=0.019 ms

--- localhost.gateway ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.019/0.019/0.019/0.000 ms

静的および一時的なホスト名との不一致を避けるには、次のコマンドを入力して、システム上のすべてのホスト名を設定します。

# hostnamectl set-hostname name

詳細は、『Red Hat Enterprise Linux 7 ネットワークガイド』「hostnamectl を使ったホスト名の設定」を参照してください。

警告

Satellite 6 の運用には名前解決が非常に重要です。Satellite が完全修飾ドメイン名を適切に解決できないと、多くのオプションが失敗します。これらのオプションには、コンテンツ管理、サブスクリプション管理、およびプロビジョニングがあります。

1.9. デフォルトの SELinux ポートの変更

Red Hat Satellite 6 では、事前定義されたポートセットが使用されます。Red Hat は、Satellite 6 システムの SELinux を Permissive または Enforcing に設定することを推奨します。いずれかのサービスのポートを変更する必要がある場合は、関連する SELinux ポートタイプを変更して、リソースへのアクセスを許可する必要があります。これらのポートは、標準以外のポートを使用する場合のみ、変更する必要があります。

たとえば、Satellite Web UI ポート (HTTP/HTTPS) を 8018/8019 に変更する場合は、これらのポート番号を httpd_port_t SELinux ポートタイプに追加する必要があります。

この変更は、ターゲットポートにも必要です (たとえば、Satellite 6 が Red Hat Virtualization や Red Hat OpenStack Platform などの外部ソースに接続する場合)。

デフォルトのポート割り当てには 1 度だけ変更を加えてください。Satellite をアップデートまたはアップグレードしても、これらの割り当てには影響ありません。割り当てが存在しない状態でアップグレードすると、デフォルトの SELinux ポートのみが追加されます。

作業を開始する前に

デフォルトのポートをユーザー指定のポートに変更する手順

  1. ポートをデフォルトのポートからユーザー指定のポートに変更するには、使用している環境に関連する値を使用してコマンドを実行します。以下の例では、デモのためにポート 99999 を使用しています。

    デフォルトのポートSELinux コマンド

    80、443、8443

    semanage port -a -t http_port_t -p tcp 99999

    8080

    semanage port -a -t http_cache_port_t -p tcp 99999

    8140

    semanage port -a -t puppet_port_t -p tcp 99999

    9090

    semanage port -a -t websm_port_t -p tcp 99999

    69

    semanage port -a -t tftp_port_t -p udp 99999

    53 (TCP)

    semanage port -a -t dns_port_t -p tcp 99999

    53 (UDP)

    semanage port -a -t dns_port_t -p udp 99999

    67、68

    semanage port -a -t dhcpd_port_t -p udp 99999

    5671

    semanage port -a -t amqp_port_t -p tcp 99999

    8000

    semanage port -a -t soundd_port_t -p tcp 99999

    7911

    semanage port -a -t dhcpd_port_t -p tcp 99999

    5000 (Red Hat Enterprise Linux 7 の場合)

    semanage port -a -t commplex_main_port_t -p tcp 99999

    22

    semanage port -a -t ssh_port_t -p tcp 99999

    16514 (libvirt)

    semanage port -a -t virt_port_t -p tcp 99999

    389、636

    semanage port -a -t ldap_port_t -p tcp 99999

    5910 -5930

    semanage port -a -t vnc_port_t -p tcp 99999

  2. 以前使用したポート番号とポートタイプの関連付けを解除します。
# semanage port -d -t virt_port_t -p tcp 99999