オンラインネットワークからの Satellite Server のインストール
オンラインネットワークからの Red Hat Satellite Server のインストール
概要
第1章 インストールのための環境準備 リンクのコピーリンクがクリップボードにコピーされました!
1.1. システム要件 リンクのコピーリンクがクリップボードにコピーされました!
ネットワーク接続されたベースシステムには、以下の要件が適用されます。
- x86_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 の実行以外の機能は提供されません。新しくプロビジョニングされたシステムには、Satellite Server が作成するローカルユーザーとの競合を避けるため、外部アイデンティティープロバイダーによって提供される次のユーザーが含まれていてはなりません。
- postgres
- mongodb
- apache
- tomcat
- foreman
- foreman-proxy
- qpidd
- qdrouterd
- squid
- puppet
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 のインストールのストレージに関するガイドラインについて説明します。
1.2.1. ストレージ要件 リンクのコピーリンクがクリップボードにコピーされました!
以下の表には、特定のディレクトリーのストレージ要件が詳細に記載されています。これらの値は、予想されるユースケースのシナリオに基づくものであり、個々の環境によって変わる可能性があります。
ランタイムサイズは Red Hat Enterprise Linux 5、6、および 7 のリポジトリーと同期して測定されています。
| ディレクトリー | インストールサイズ | ランタイムサイズ |
|---|---|---|
| /var/cache/pulp/ | 1M バイト | 20 GB |
| /var/lib/pulp/ | 1 MB | 500 GB |
| /var/lib/mongodb/ | 3.5 GB | 50 GB |
| /var/lib/qpidd/ | 25 MB | 適用外 |
| /var/log/ | 10 MB | 250 MB |
| /var/lib/pgsql/ | 100 MB | 10 GB |
| /var/spool/squid/ | 0 MB | 10 GB |
| /usr | 3 GB | 適用外 |
| /opt | 3 GB | 該当なし |
| /opt/puppetlabs | 500 MB | 適用外 |
1.2.2. ストレージのガイドライン リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server をインストールして効率性を向上する場合には、以下のガイドラインを考慮してください。
-
ほとんどの Satellite および Capsule Server のデータは
/varディレクトリー内に保存されるため、LVM ストレージに/varをマウントすると、システムのスケーリングに役立ちます。 -
/var/lib/pulp/および/var/lib/mongodb/ディレクトリーでは、ハードディスクドライブ (HDD) ではなく、高帯域幅、低レイテンシーのストレージ、ソリッドステートドライブ (SSD) を使用します。Red Hat Satellite には I/O を大量に使用する操作が多数あるため、高レイテンシーで低帯域幅のストレージを使用すると、パフォーマンス低下の問題が発生します。インストールに、毎秒 60 - 80 メガバイトのスピードがあることを確認してください。fioツールを使用すると、このデータが取得できます。fioツールの使用に関する詳細は、Red Hat ナレッジベースソリューション ディスク速度が Satellite 6 の運用に与える影響を 参照してください。 -
/var/lib/qpidd/ディレクトリーでは、goferdサービスが管理するコンテンツホスト 1 つに対して使用される容量は 2 MB を少し超えます。たとえば、コンテンツホストの数が 10,000 個の場合、/var/lib/qpidd/に 20 GB のディスク容量が必要になります。 -
/var/cache/pulp/と/var/lib/pulp/ディレクトリーに同じボリュームを使用することで、同期後に/var/cache/pulp/から/var/lib/pulp/にコンテンツを移動する時間を短縮できます。
ファイルシステムのガイドライン
-
Red Hat Satellite 6 では、
ext4のような inode 制限がないため、XFS ファイルシステムを使用します。Satellite は多くのシンボリックリンクを使用するため、ext4とデフォルトの inode 数を使用すると、システムの inode が不足する可能性があります。 -
MongoDB は従来の I/O を使用してデータファイルにアクセスしないので、MongoDB では NFS を使用しないでください。また、NFS でデータファイルとジャーナルファイルの両方がホストされている場合にはパフォーマンスの問題が発生します。NFS を使用する必要がある場合は、
/etc/fstabファイルでbg、nolock、およびnoatimeのオプションを使用してボリュームをマウントします。 - 入出力レイテンシーが高すぎるため、GFS2 ファイルシステムは使用しないでください。
NFS マウントを使用する場合の SELinux の考慮事項
/var/lib/pulp ディレクトリーが NFS 共有を使用してマウントされている場合、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/ ディレクトリーは、同期中に、コンテンツを一時的に保存するために使用します。RPM 形式のコンテンツの場合、このディレクトリーには最大 5 つの RPM ファイルが常に保存されます。各ファイルは同期された後、/var/lib/pulp/ ディレクトリーに移動されます。デフォルトでは、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 に適切なストレージを設定するようにプランニングする必要があります。
1.3. サポート対象オペレーティングシステム リンクのコピーリンクがクリップボードにコピーされました!
ディスク、ローカル ISO イメージ、キックスタート、または Red Hat がサポートするその他の方法からオペレーティングシステムをインストールできます。Red Hat Satellite Server および Red Hat Satellite Capsule Server は、Satellite 6.4 がインストールされている時点で利用可能な最新バージョンの 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 をインストールします。Capsule Server を Red Hat コンテンツ配信ネットワーク (CDN) に登録しないでください。Red Hat は、Satellite の実行以外の目的でのシステムの使用をサポートしていません。
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 アーキテクチャーのコンポーネントで通信を行うには、ベースオペレーティングシステム上で、必要なネットワークポートが開放/解放されているようにしてください。また、ネットワークベースのファイアウォールでも、必要なネットワークポートを開放する必要があります。
次の表は、宛先ポートとネットワークトラフィックの方向を示しています。この情報を使用して、ネットワークベースのファイアウォールを設定してください。クラウドソリューションによっては、ネットワークベースのファイアウォールと同様にマシンが分離されるので、特にマシン間の通信ができるように設定する必要があります。アプリケーションベースのファイアウォールを使用する場合は、後述の表に記載され、ファイアウォールに認識されているすべてのアプリケーションが、アプリケーションベースのファイアウォールで許可されていることを確認してください。可能であれば、アプリケーションのチェックを無効にして、プロトコルをベースにポートの通信を開放できるようにしてください。
統合 Capsule
Satellite Server には統合された Capsule があり、Satellite Server に直接接続されているすべてのホストは、これらのテーブルのコンテキストでは Satellite のクライアントになります。これには、Capsule Server が実行されているベースシステムが含まれます。
Capsule のクライアント
Satellite に統合された Capsule 以外の Capsule のクライアントであるホストは、Satellite Server にアクセスする必要はありません。Satellite トポロジーの詳細は、Red Hat Satellite 6 の計画 の Capsule ネットワークを 参照してください。
使用している設定に応じて、必要なポートは変わることがあります。
| ポート | プロトコル | サービス | 用途 |
|---|---|---|---|
| 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 のリスト を参照してください。
| ポート | プロトコル | サービス | 用途 |
|---|---|---|---|
| 443 | TCP | HTTPS | Satellite へのブラウザーベース UI アクセス |
| 80 | TCP | HTTP | Satellite に Web UI でアクセスするための HTTPS へのリダイレクション (オプション) |
| ポート | プロトコル | サービス | 用途 |
|---|---|---|---|
| 80 | TCP | HTTP | Anaconda、yum、Katello 証明書およびテンプレートの取得向け、iPXE ファームウェアのダウンロード向け |
| 443 | TCP | HTTPS | サブスクリプション管理サービス、yum、Telemetry サービス、Katello エージェントへの接続向け |
| 5647 | TCP | amqp | Satellite の Qpid ディスパッチルーターと通信する Katello エージェント |
| 8000 | TCP | HTTP | キックスタートテンプレートをホストにダウンロードする Anaconda、iPXE ファームウェアのダウンロード向け |
| 8140 | TCP | HTTPS | マスター接続に対する Puppet エージェント |
| 9090 | TCP | HTTPS | プロビジョニング時の検出イメージや、リモート実行 (Rex) 設定の SSH キーをコピーするための Satellite Server との通信で使用するために、統合 Capsule で Smart Proxy に SCAP レポートを送信 |
| 5000 | TCP | HTTPS | Docker レジストリーのための Katello への接続 |
| 7 | TCP および UDP | ICMP | IP アドレスが解放されていることを確認するためのクライアント上の外部 DHCP から Satellite ネットワークと ICMP ECHO (オプション) |
| 53 | TCP および UDP | DNS | Satellite の統合 Capsule の DNS サービスへのクライアント DNS クエリー (オプション) |
| 67 | UDP | DHCP | Satellite の統合 Capsule ブロードキャストと、Satellite 統合 Capsule からプロビジョニングするクライアントに対する DHCP ブロードキャストを行うクライアント (オプション) |
| 69 | UDP | TFTP | プロビジョニングのために Satellite の統合 Capsule から PXE ブートイメージファイルをダウンロードするクライアント (オプション) |
Satellite Server に直接接続されている管理対象ホストは、統合された Capsule のクライアントであるため、このコンテキストではクライアントになります。これには、Capsule Server が実行されているベースシステムが含まれます。
| ポート | プロトコル | サービス | 用途 |
|---|---|---|---|
| 443 | TCP | HTTPS | Capsule の Pulp サーバーへの接続 |
| 9090 | TCP | HTTPS | Capsule のプロキシーへの接続 |
| 80 | TCP | HTTP | bootdisk のダウンロード (オプション) |
| ポート | プロトコル | サービス | 用途 |
|---|---|---|---|
| 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 システム上のホストベースのファイアウォールを設定し、クライアントからの受信接続を有効にし、システムの再起動後も設定が保持されるようにします。使用されるポートの詳細は、「ポートとファイアウォールの要件」。
ファイアウォールの設定
クライアントから Satellite の通信用のポートを開放するには、Satellite をインストールするベースシステムで以下のコマンドを入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 変更を永続化します。
firewall-cmd --runtime-to-permanent
# firewall-cmd --runtime-to-permanentCopy to Clipboard Copied! Toggle word wrap Toggle overflow
1.7. ファイアウォール設定の確認 リンクのコピーリンクがクリップボードにコピーされました!
ファイアウォール設定の変更は 、firewall-cmd コマンドを使用して確認できます。
ファイアウォール設定の確認
firewall-cmd --list-all
# firewall-cmd --list-all
詳細情報は、Red Hat Enterprise Linux 7 セキュリティーガイドの firewalld の概要 を参照してください。
1.8. DNS 解決の検証 リンクのコピーリンクがクリップボードにコピーされました!
完全修飾ドメイン名を使用して完全な正引きおよび逆引き DNS 解決を検証すると、Satellite のインストール中の問題を回避できます。
ホスト名とローカルホストが正しく解決されることを確認します。
ping -c1 localhost ping -c1 `hostname -f` # my_system.domain.com
# ping -c1 localhost
# ping -c1 `hostname -f` # my_system.domain.com
名前解決に成功すると、以下のような出力が表示されます。
静的および一時的なホスト名との不一致を避けるには、次のコマンドを入力して、システム上のすべてのホスト名を設定します。
hostnamectl set-hostname name
# 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 ポートが追加されます。
作業開始前の準備
- Satellite をインストールする前に、SELinux を有効にして、permissive モードまたは enforcing モードで実行する必要があります。詳細は、Red Hat Enterprise Linux 7 SELinux ユーザーおよび管理者ガイド を参照してください。
デフォルトのポートの、ユーザー指定のポートへの変更
ポートをデフォルトポートからユーザー指定のポートに変更するには、環境に適した値を使用してコマンドを実行します。これらの例では、デモンストレーションの目的でポート 99999 を使用します。
Expand デフォルトのポート 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
- 以前使用したポート番号とポートタイプの関連付けを解除します。
semanage port -d -t virt_port_t -p tcp 99999
# semanage port -d -t virt_port_t -p tcp 99999
第2章 Satellite Server のインストール リンクのコピーリンクがクリップボードにコピーされました!
本章では、Red Hat Satellite Server のインストール、初期設定、マニフェストの作成およびインストール、および追加設定の実行について説明します。
Red Hat Satellite 6.4 はデフォルトで Puppet 5 を使用します。Puppet 5 をサポートするように Puppet モジュールを確認して更新します。Puppet 5 をサポートするために Puppet モジュールを更新する方法の詳細は、Satellite 6.4 の Red Hat Satellite のアップグレードおよび更新 ガイドの Puppet のアップグレード セクションを参照してください。
Red Hat Satellite 6.3 で Puppet 4 をサポートするために Puppet モジュールのアップグレードが完了していることを確認します。Puppet モジュールを Puppet 4 にアップグレードする方法については、Satellite 6.3 の Red Hat Satellite のアップグレードおよび更新 ガイドの Puppet のアップグレード セクションを参照してください。
Satellite Server は、以下の 2 つのインストール方法があります。
オンラインインストール
Satellite Server をインストールするために必要なパッケージは、Red Hat コンテンツ配信ネットワーク (CDN) から直接入手できます。CDN を使用すると、システムは常に最新の更新を受け取ることができます。
オフラインインストール
外部のコンピューターを使用してパッケージの ISO イメージをダウンロードし、Satellite Server をインストールするシステムにパッケージをコピーする必要があります。非接続環境が必要な場合にのみ ISO イメージを使用してください。ISO イメージには最新の更新が含まれていない可能性があります。
Satellite Server をそれ自体に登録することはできません。
2.1. オンラインネットワークからの Satellite Server のインストール リンクのコピーリンクがクリップボードにコピーされました!
オンラインネットワークから Satellite Server をインストールする場合には、Red Hat コンテンツ配信ネットワーク から直接パッケージと更新を取得できます。
Satellite 6 インストールスクリプトは Puppet に基づいているため、インストールスクリプトを複数回実行すると、手動で行った設定変更が上書きされる可能性があることに注意してください。これを回避し、今後どの変更を適用するか判断するには、インストールスクリプトの実行時に --noop の引数を使用します。この引数では、実際の変更は加えられません。潜在的な変更は /var/log/foreman-installer.log に書き込まれます。
ファイルは常にバックアップされるため、不要な変更を元に戻すことができます。たとえば、foreman-installer ログで Filebucket に関する以下のようなエントリーが確認できます。
/Stage[main]/Dhcp/File[/etc/dhcp/dhcpd.conf]: Filebucketed /etc/dhcp/dhcpd.conf to puppet with sum 622d9820b8e764ab124367c68f5fa3a1
/Stage[main]/Dhcp/File[/etc/dhcp/dhcpd.conf]: Filebucketed /etc/dhcp/dhcpd.conf to puppet with sum 622d9820b8e764ab124367c68f5fa3a1
以前のファイルは以下のように復元できます。
puppet filebucket -l \ restore /etc/dhcp/dhcpd.conf 622d9820b8e764ab124367c68f5fa3a1
# puppet filebucket -l \
restore /etc/dhcp/dhcpd.conf 622d9820b8e764ab124367c68f5fa3a1
2.1.1. Red Hat サブスクリプション管理への登録 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat サブスクリプション管理にホストを登録すると、ユーザーが利用可能なサブスクリプションにホストを登録して、サブスクリプションのコンテンツを使用できるようになります。これには、Red Hat Enterprise Linux、Red Hat Software Collections (RHSCL)、Red Hat Satellite などのコンテンツが含まれます。
Red Hat コンテンツ配信ネットワークにシステムを登録します。プロンプトが表示されたら、カスタマーポータルのユーザー名とパスワードを入力します。
subscription-manager register
# subscription-manager register
このコマンドを実行すると、以下のような出力が表示されます。
subscription-manager register
# subscription-manager register
Username: user_name
Password:
The system has been registered with ID: 541084ff2-44cab-4eb1-9fa1-7683431bcf9a
2.1.2. Satellite サブスクリプションの確認、およびホストへのサブスクリプションの割り当て リンクのコピーリンクがクリップボードにコピーされました!
ホストを登録したら、利用可能な Satellite サブスクリプションを識別して接続する必要があります。Satellite サブスクリプションでは、Satellite コンテンツに加えて、Red Hat Enterprise Linux、Red Hat Software Collections (RHSCL)、Red Hat Satellite へのアクセスも提供されます。必要なサブスクリプションはこれだけです。すべての Red Hat サブスクリプションは、プール ID によって識別されます。
Satellite サブスクリプションを特定します。
subscription-manager list --available --matches 'Red Hat Satellite'
# subscription-manager list --available --matches 'Red Hat Satellite'Copy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドは
、Subscription NameやProvidesを含む、Red Hat Satelliteのすべてのインスタンスに一致する、利用可能なすべてのサブスクリプションのフィールドの大文字と小文字を区別しない検索を実行します。サブスクリプションがシステムに割り当てられていない場合には、利用可能として分類されます。検索文字列には、それぞれ 1 文字または 0 個以上の文字に一致するワイルドカード?または*を含めることもできます。ワイルドカード文字は、バックスラッシュでエスケープして、文字通りの疑問符またはアスタリスクを表すことができます。同様に、バックスラッシュを表すには、別のバックスラッシュでエスケープする必要があります。利用可能な Satellite サブスクリプションが見つからない場合は、Red Hat ナレッジベースソリューション Red Hat Subscription Manager に登録されているクライアントによって消費されたサブスクリプションを確認する方法を教えてください。を 参照して、サブスクリプションが別のシステムによって消費されているかどうかを確認できるスクリプトを実行してください。
出力が長すぎる場合は、
lessやmoreなどのページャユーティリティーにパイプして、出力を 1 画面ずつ確認できるようにします。どのような形式の
subscription-managerコマンドを実行しても、出力は次のようになります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
- プール ID をメモしておき、それを Satellite ホストに添付できるようにします。プール ID は、提供された例と異なります。
Satellite サーバーにサブスクリプションを割り当てるには、実際のプール ID を指定して以下のコマンドを実行します。
subscription-manager attach --pool=pool_id
# subscription-manager attach --pool=pool_idCopy to Clipboard Copied! Toggle word wrap Toggle overflow 出力は以下のようになります。
Successfully attached a subscription for: Red Hat Satellite
Successfully attached a subscription for: Red Hat SatelliteCopy to Clipboard Copied! Toggle word wrap Toggle overflow サブスクリプションが正しく割り当てられたことを確認するには、以下のコマンドを実行します。
subscription-manager list --consumed
# subscription-manager list --consumedCopy to Clipboard Copied! Toggle word wrap Toggle overflow この出力では、以下のような内容が表示されます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.1.3. リポジトリーの設定 リンクのコピーリンクがクリップボードにコピーされました!
既存のリポジトリーをすべて無効にします。
subscription-manager repos --disable "*"
# subscription-manager repos --disable "*"Copy to Clipboard Copied! Toggle word wrap Toggle overflow Red Hat Satellite、Red Hat Enterprise Linux、Red Hat Software Collections の各リポジトリーを有効にします。
subscription-manager repos --enable=rhel-7-server-rpms \ --enable=rhel-server-rhscl-7-rpms \ --enable=rhel-7-server-satellite-6.4-rpms \ --enable=rhel-7-server-satellite-maintenance-6-rpms \ --enable=rhel-7-server-ansible-2.6-rpms
# subscription-manager repos --enable=rhel-7-server-rpms \ --enable=rhel-server-rhscl-7-rpms \ --enable=rhel-7-server-satellite-6.4-rpms \ --enable=rhel-7-server-satellite-maintenance-6-rpms \ --enable=rhel-7-server-ansible-2.6-rpmsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注記Red Hat Satellite を Red Hat Virtualization (RHV) でホストされる仮想マシンとしてインストールする場合は、Red Hat Common リポジトリーを有効にし、RHV ゲストエージェントとドライバーもインストールする必要があります。詳細は、仮想マシン管理ガイド の Red Hat Enterprise Linux へのゲストエージェントとドライバーのインストールを 参照してください。
Red Hat 以外の
yumリポジトリーに残っているメタデータをすべてクリアします。yum clean all
# yum clean allCopy to Clipboard Copied! Toggle word wrap Toggle overflow リポジトリーが有効になっていることを確認します。
yum repolist enabled
# yum repolist enabledCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.1.4. Satellite Server パッケージのインストール リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server パッケージをインストールする前に、すべてのパッケージを更新する必要があります。インストール後、サーバー証明書の設定、ユーザー名、パスワード、デフォルトの組織と場所の設定など、Satellite Server の初期設定を実行する必要があります。
すべてのパッケージを更新します。
yum update
# yum updateCopy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite Server パッケージをインストールします。
yum install satellite
# yum install satelliteCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.2. 初期設定の実行 リンクのコピーリンクがクリップボードにコピーされました!
このセクションでは、Red Hat Satellite Server をインストールするときにホストオペレーティングシステムの初期設定を実行する方法について詳しく説明します。これには、時間の同期、sos パッケージのインストール、インストールオプションの指定が含まれます。
続行する前に、どのマニフェストまたはパッケージが環境に関連するかを検討してください。マニフェストの詳細は、Red Hat Satellite コンテンツ管理ガイド の サブスクリプションの管理を 参照してください。
2.2.1. 時間の同期 リンクのコピーリンクがクリップボードにコピーされました!
時間のずれの影響を最小限に抑えるには、ホストオペレーティングシステムで時間同期機能を起動して有効にする必要があります。システムの時刻が正しくない場合、証明書の検証が失敗する可能性があります。
NTP ベースの時間同期装置として、chronyd と ntpd の 2 つが利用可能です。chronyd 実装は、頻繁に中断されるシステムや、ネットワークアクセスが断続的に発生するシステムに特に推奨されます。ntpd 実装は、chronyd でまだサポートされていないプロトコルまたはドライバーのサポートが特に必要な場合にのみ使用してください。
ntpd と chronyd の違いの詳細は、Red Hat Enterprise Linux 7 システム管理者ガイド の ntpd と chronyd の相違点を 参照してください。
chronyd を使用した時間の同期
chronyd をインストールします。
yum install chrony
# yum install chronyCopy to Clipboard Copied! Toggle word wrap Toggle overflow chronyd サービスを起動して、有効にします。
systemctl start chronyd systemctl enable chronyd
# systemctl start chronyd # systemctl enable chronydCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.2.2. ホストオペレーティングシステムへの SOS パッケージのインストール リンクのコピーリンクがクリップボードにコピーされました!
ホストオペレーティングシステムに sos パッケージをインストールする必要があります。sos パッケージを使用すると、Red Hat Enterprise Linux システムから設定および診断情報を収集できます。このパッケージを使用すると、Red Hat テクニカルサポートへのサービスリクエストの起票時に必要な初期システム分析を提示できます。sos の使用に関する詳細は、Red Hat カスタマーポータルのナレッジベースソリューション sosreport とは何ですか。Red Hat Enterprise Linux 4.6 以降で sosreport を作成する方法は? を 参照してください。
sos パッケージをインストールします。
yum install sos
# yum install sos
2.2.3. インストールオプションの指定 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server は 、satellite-installer インストールスクリプトを使用してインストールされ、初期設定の一部として、Satellite を自動または手動で設定します。
以下のいずれかの設定方法を選択します。
自動設定 - この方法は、インストールスクリプトの実行時に応答ファイルを使用して設定プロセスを自動化することによって実行されます。応答ファイルは、コマンドまたはスクリプトによって読み取られるパラメーターのリストを含むファイルです。デフォルトの Satellite の応答ファイルは
/etc/foreman-installer/scenarios.d/satellite-answers.yamlです。使用中の応答ファイルは、/etc/foreman-installer/scenarios.d/satellite.yaml設定ファイルのanswer_fileディレクティブで設定します。応答ファイルを使用したインストールスクリプトを使用して初期設定を実行するには、「応答ファイルを使用した初期設定の自動実行」。
手動設定 - この方法は、1 つ以上のコマンドオプションを使用してインストールスクリプトを実行することによって実行されます。コマンドオプションは、対応するデフォルトの初期設定オプションを上書きし、Satellite 応答ファイルに記録されます。必要なオプションの設定に、必要に応じてスクリプトは何回でも実行することができます。
コマンドラインオプション付きのインストールスクリプトを使用して初期設定を実行するには、「手動による初期設定」。
Satellite インストーラーの実行時に使用するオプションによっては、設定が完了するのに数分かかることがあります。管理者は応答ファイルを表示して、両方の方法で以前に使用されたオプションを確認できます。
2.2.3.1. 手動による初期設定 リンクのコピーリンクがクリップボードにコピーされました!
初期設定の手順では、組織、ロケーション、ユーザー名、およびパスワードが作成されます。初期設定後に、必要に応じて追加の組織と場所を作成できます。初期設定では、MongoDB および PostgreSQL データベースも同じサーバーにインストールします。デプロイメントによっては、外部データベースを使用するとパフォーマンスが向上する場合があります。
インストールプロセスの完了には、数十分かかることがあります。システムにリモートで接続している場合は、リモートシステムから切断された場合にインストールの進行状況を確認できるように、通信セッションを一時停止して再接続できる screen などのユーティリティーの使用を検討してください。Red Hat ナレッジベースの記事 How to use the screen command には screen のインストールについて記載されています。または、詳しくは screen の man ページを参照してください。インストールコマンドを実行しているシェルへの接続が切断された場合は、/var/log/foreman-installer/satellite.log のログを参照してプロセスが正常に完了したかどうかを確認します。
Satellite Server の手動設定
satellite-installer --scenario satellite --help コマンドを使用して、利用可能なオプションとすべてのデフォルト値を表示します。値を指定しない場合は、デフォルト値が使用されます。
オプション --foreman-initial-organization には意味のある値を指定することを推奨します。たとえば、会社名を指定できます。値に一致する内部ラベルが作成されますが、このラベルは後で変更できません。値を指定しない場合は、ラベルが Default_Organization の Default Organization という名前の組織が作成されます。組織名は変更できますが、ラベルは変更できません。
デフォルトでは、インストーラーが設定するすべての設定ファイルが Puppet によって管理されます。satellite-installer を実行すると、Puppet が管理するファイルに手動で加えられた変更が初期値で上書きされます。デフォルトでは、Satellite Server は Puppet エージェントがサービスとして実行される状態でインストールされます。必要に応じて、--Puppet-runmode=none オプションを使用して、Satellite Server 上の Puppet エージェントを無効にすることができます。
DNS ファイルと DHCP ファイルを手動で管理する場合には、--foreman-proxy-dns-managed=false オプションと --foreman-proxy-dhcp-managed=false オプションを使用して、各サービスに関連するファイルが Puppet で管理されないようにします。他のサービスにカスタム設定を適用する方法の詳細は、以下を参照してください。付録B Red Hat Satellite へのカスタム設定の適用。
Satellite で外部データベースを使用する場合は、Satellite インストーラー ツールを実行する前に、外部データベースを設定して指定する必要があります。詳細は、接続されたネットワークからの Satellite Server のインストール の Satellite を使用した外部データベースの使用を 参照してください。
このスクリプトは、進捗を表示し、/var/log/foreman-installer/satellite.log にログを記録します。
切断環境でインストールしている場合は、ISO イメージをアンマウントします。
umount /media/sat6 umount /media/rhel7-server
# umount /media/sat6
# umount /media/rhel7-server
2.2.3.2. 応答ファイルを使用した初期設定の自動実行 リンクのコピーリンクがクリップボードにコピーされました!
応答ファイルを使用すると、カスタマイズされたオプションでインストールを自動化できます。最初の応答ファイルにはまばらにデータが入力されており、satellite-installer スクリプトを初めて実行した後、応答ファイルにインストール用の標準パラメーター値が入力されます。すでに Satellite Server を上記の方法でインストールしている場合は、「手動による初期設定」、この方法を使用する必要はありません。ただし、これを使用して、いつでも Satellite Server の設定を変更することができます。
ネットワークの変更の場合は、可能な限り、IP アドレスの代わりに FQDN を使用する必要があります。
応答ファイルを使用して Satellite Server を自動的に設定する
デフォルトの応答ファイル
/etc/foreman-installer/scenarios.d/satellite-answers.yamlをローカルファイルシステムの場所にコピーします。cp /etc/foreman-installer/scenarios.d/satellite-answers.yaml \ /etc/foreman-installer/scenarios.d/my-answer-file.yaml
# cp /etc/foreman-installer/scenarios.d/satellite-answers.yaml \ /etc/foreman-installer/scenarios.d/my-answer-file.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
設定可能なすべてのオプションを表示するには、
satellite-installer --scenario satellite --helpコマンドを実行します。 - 応答ファイルのコピーを開き、ご使用の環境に適した値を編集し、ファイルを保存します。
/etc/foreman-installer/scenarios.d/satellite.yamlファイルを開き、カスタム応答ファイルを参照する応答ファイルエントリーを編集します。:answer_file: /etc/foreman-installer/scenarios.d/my-answer-file.yaml
:answer_file: /etc/foreman-installer/scenarios.d/my-answer-file.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow satellite-installerスクリプトを実行します。satellite-installer --scenario satellite
# satellite-installer --scenario satelliteCopy to Clipboard Copied! Toggle word wrap Toggle overflow 切断環境でインストールしている場合は、ISO イメージをアンマウントします。
umount /media/sat6 umount /media/rhel7-server
# umount /media/sat6 # umount /media/rhel7-serverCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.2.4. カスタマーポータルでサブスクリプションの割り当ての作成 リンクのコピーリンクがクリップボードにコピーされました!
サブスクリプション情報には、Red Hat カスタマーポータルからアクセスできます。サブスクリプション割り当てを使用して、Red Hat Satellite などのオンプレミス管理アプリケーションで使用するサブスクリプションを割り当てることもできます。
- ブラウザーで https://access.redhat.com/ を開き、システムを Red Hat Subscription Management に登録するために使用した Red Hat アカウントにログインします。
- カスタマーポータルの左上隅にある [サブスクリプション] に移動します。
- サブスクリプション割り当て に移動します。
- [新しいサブスクリプション割り当ての作成] を クリックします。
- 名前 フィールドに名前を入力します。
- タイプ リストから、Satellite Server に対応するタイプとバージョンを選択します。
- Create をクリックします。
2.2.5. 割り当てへのサブスクリプションの追加 リンクのコピーリンクがクリップボードにコピーされました!
以下の手順では、サブスクリプションを割り当てに追加する方法について説明します。
- サブスクリプション割り当て に移動します。
- 変更するサブスクリプションの名前を選択します。
- Subscriptions タブをクリックします。
- Add Subscriptions をクリックします。
- Red Hat 製品サブスクリプションのリストが表示されます。各製品の エンタイトルメント数量 を入力します。
- 課題を完了するには、[送信] をクリックします。
割り当てにサブスクリプションを追加したら、マニフェストファイルをエクスポートします。
2.2.6. カスタマーポータルからのサブスクリプションマニフェストのエクスポート リンクのコピーリンクがクリップボードにコピーされました!
1 つ以上のサブスクリプションがあるサブスクリプション割り当てを表示し、以下のいずれかからマニフェストをエクスポートできます。
- [詳細] タブの [サブスクリプ ション] セクションで、[マニフェストのエクスポート] ボタンをクリックします。
- [サブスクリプション] タブから、[マニフェストのエクスポート] ボタンをクリックします。
マニフェストがエクスポートされると、カスタマーポータルは選択したサブスクリプション証明書をエンコードし、.zip アーカイブを作成します。これは、Satellite Server にアップロードできるサブスクリプションマニフェストです。
2.2.7. Satellite Server へのサブスクリプションマニフェストのインポート リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Satellite 6 Web UI と CLI は、マニフェストをインポートする手段を提供します。
Web UI をご利用の場合
- コンテキストが、使用する組織に設定されていることを確認します。
- コンテンツ > Red Hat サブスクリプション に移動します。
- マニフェストの管理 をクリックすると、組織のマニフェストページが表示されます。
- [ファイルの選択] をクリックし、サブスクリプションマニフェストを選択して、[アップロード] を クリックします。
CLI をご利用の場合
Red Hat Satellite 6 CLI では、マニフェストが Satellite Server 上に存在している必要があります。ローカルクライアントシステムで、マニフェストを Satellite Server にコピーします。
scp ~/manifest_file.zip root@satellite.example.com:~/.
[user@client ~]$ scp ~/manifest_file.zip root@satellite.example.com:~/.
次に、以下のコマンドを使用してインポートします。
hammer subscription upload \ --file ~/manifest_file.zip \ --organization "organization_name"
[root@satellite ~]# hammer subscription upload \
--file ~/manifest_file.zip \
--organization "organization_name"
数分後、CLI により、マニフェストのインポートに成功したことが報告されます。
このセクションを完了すると、リポジトリーを有効にして Red Hat コンテンツをインポートできるようになります。これは、次の手順の一部を実行するための前提条件です。詳細は、Red Hat Satellite コンテンツ管理ガイド の Red Hat コンテンツのインポートを 参照してください。
第3章 Satellite Server での追加設定の実行 リンクのコピーリンクがクリップボードにコピーされました!
3.1. Satellite Tools リポジトリーのインストール リンクのコピーリンクがクリップボードにコピーされました!
Satellite Tools リポジトリーは、Satellite Server に登録されたクライアントに katello-agent および Puppet パッケージを提供します。クライアントのリモート更新を可能にするには、katello エージェントをインストールすることを推奨します。Capsule Server のベースシステムは Satellite Server のクライアントであるため、katello エージェントもインストールする必要があります。
Web UI を使用した Satellite Tools リポジトリーのインストール手順:
- Satellite Web UI で、Content > Red Hat Repositories に移動します。
- 検索フィールドを使用して、次のリポジトリー名を入力します: Red Hat Satellite Tools 6.4 (for RHEL 7 Server) (RPMs)。
[利用可能なリポジトリー] ペインで、Red Hat Satellite Tools 6.4 (for RHEL 7 Server) (RPMs) をクリックしてリポジトリーセットを展開します。
Red Hat Satellite Tools 6.4 項目が表示されない場合は、カスタマーポータルから取得したサブスクリプションマニフェストにその項目が含まれていないことが原因となっている可能性があります。この問題を修正するには、カスタマーポータルにログインし、これらのリポジトリーを追加し、サブスクリプションマニフェストをダウンロードして、Satellite にインポートします。
-
x86_64エントリーでは、有効化 アイコンをクリックして、リポジトリーを有効にします。
ホスト上で実行されている Red Hat Enterprise Linux のサポートされているすべてのメジャーバージョンに対して、Satellite Tools リポジトリーを有効にします。Red Hat リポジトリーの有効後に、このリポジトリーの製品が自動的に作成されます。
CLI をご利用の場合
Satellite Tools リポジトリーを追加します。
hammer repository-set enable --organization "initial_organization_name" \ --product 'Red Hat Enterprise Linux Server' \ --basearch='x86_64' \ --name 'Red Hat Satellite Tools 6.4 (for RHEL 7 Server) (RPMs)'
# hammer repository-set enable --organization "initial_organization_name" \
--product 'Red Hat Enterprise Linux Server' \
--basearch='x86_64' \
--name 'Red Hat Satellite Tools 6.4 (for RHEL 7 Server) (RPMs)'
Web UI を使用した Satellite Tools リポジトリーの同期手順:
コンテンツ > 同期ステータス に移動します。
同期可能な製品リポジトリーのリストが表示されます。
- 製品コンテンツの横にある矢印をクリックして利用可能なコンテンツを表示します。
- 同期するコンテンツを選択します。
- Synchronize Now をクリックします。
CLI をご利用の場合
Satellite Tools リポジトリーを同期します。
hammer repository synchronize --organization "initial_organization_name" \ --product 'Red Hat Enterprise Linux Server' \ --name 'Red Hat Satellite Tools 6.4 for RHEL 7 Server RPMs x86_64' \ --async
$ hammer repository synchronize --organization "initial_organization_name" \
--product 'Red Hat Enterprise Linux Server' \
--name 'Red Hat Satellite Tools 6.4 for RHEL 7 Server RPMs x86_64' \
--async
除く
3.2. HTTP プロキシーを使用した Satellite Server の設定 リンクのコピーリンクがクリップボードにコピーされました!
ネットワークで HTTP プロキシーを使用している場合は、Red Hat コンテンツ配信ネットワーク (CDN) または別のコンテンツソースへの要求に HTTP プロキシーを使用するように Satellite Server を設定できます。ネットワークの変更が原因で接続が失われるのを回避するために、可能な限り IP の代わりに FQDN を使用します。
以下の手順では、Satellite のコンテンツダウンロード専用のプロキシーを設定します。
認証方法
基本認証のみがサポートされています。ユーザー名とパスワード情報を --katello-proxy-url オプションに追加するか、--katello-proxy-username および --katello-proxy-password オプションを使用します。
HTTP プロキシーを使用した Satellite Server の設定
http_proxy、https_proxy、no_proxy変数が設定されていないことを確認します。unset http_proxy unset https_proxy unset no_proxy
# unset http_proxy # unset https_proxy # unset no_proxyCopy to Clipboard Copied! Toggle word wrap Toggle overflow HTTP プロキシーオプションを使用して
satellite-installerを実行します。satellite-installer --scenario satellite \ --katello-proxy-url=http://myproxy.example.com \ --katello-proxy-port=8080 \ --katello-proxy-username=proxy_username \ --katello-proxy-password='proxy_password'
# satellite-installer --scenario satellite \ --katello-proxy-url=http://myproxy.example.com \ --katello-proxy-port=8080 \ --katello-proxy-username=proxy_username \ --katello-proxy-password='proxy_password'Copy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite Server が Red Hat CDN に接続し、リポジトリーを同期できることを確認します。
ネットワークゲートウェイと HTTP プロキシーで、以下のホスト名に対して TCP を有効にします。
Expand ホスト名 ポート プロトコル subscription.rhsm.redhat.com
443
HTTPS
cdn.redhat.com
443
HTTPS
*.akamaiedge.net
443
HTTPS
cert-api.access.redhat.com (Red Hat Insights を使用している場合)
443
HTTPS
api.access.redhat.com (Red Hat Insights を使用している場合)
443
HTTPS
Satellite Server は、SSL 経由で Red Hat CDN と安全に通信します。SSL インターセプションプロキシーを使用すると、この通信を干渉します。これらのホストはプロキシーでホワイトリスト化する必要があります。
Red Hat CDN (cdn.redhat.com) で使用されている IP アドレスのリストは、Red Hat カスタマーポータルのナレッジベース記事 Public CIDR Lists for Red Hat を参照してください。
Satellite Server で、
/etc/rhsm/rhsm.confファイルに次の詳細を入力します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
カスタムポートに関する SELinux の考慮事項
SELinux は、Red Hat Satellite 6 および Red Hat Subscription Manager が特定のポートにのみアクセスできるようにします。HTTP キャッシュの場合には、TCP ポートは 8080、8118、8123、および 10001 - 10010 を使用できます。SELinux タイプ http_cache_port_t を 持たないポートを使用する場合は、次の手順を実行します。
以下のコマンドを実行して、SELinux で HTTP キャッシュに許可されているポートを確認します。
semanage port -l | grep http_cache
# semanage port -l | grep http_cache http_cache_port_t tcp 8080, 8118, 8123, 10001-10010 [output truncated]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを実行して、SELinux が HTTP キャッシュにポート (たとえば、8088) を許可するよう設定します。
semanage port -a -t http_cache_port_t -p tcp 8088
# semanage port -a -t http_cache_port_t -p tcp 8088Copy to Clipboard Copied! Toggle word wrap Toggle overflow
SELinux ポート設定の詳細は、以下を参照してください。「デフォルトの SELinux ポートの変更」。
3.3. 全 Satellite HTTP 要求での HTTP プロキシーの使用 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server は、HTTP および HTTPS をブロックするファイアウォールの内側に設定する必要がある場合に、コンピュートリソースなどの外部システムとの通信に使用するプロキシーを設定してください。
プロビジョニングにコンピュートリソースを使用し、コンピュートリソースと、異なる HTTP プロキシーを併用する場合には、コンピュートリソースに設定したプロキシーではなく、Satellite 通信すべてに設定したプロキシーが優先されます。
Satellite からの HTTP 送信接続すべてに、HTTP プロキシーを設定するには、以下の手順を実行します。
- Satellite Web UI で、Administer > Settings に移動します。
- HTTP(S) プロキシー 行で、隣接する Value 列を選択し、プロキシー URL を入力します。
- チェックのアイコンをクリックして変更を保存します。
プロキシー化された要求を受信しないようにホストを除外する手順
Satellite HTTP または HTTPS 要求に HTTP プロキシーを使用する場合は、プロキシー経由で通信しないように、特定のホストを除外できます。
プロキシー経由の通信を使用しないように、ホスト 1 つまたは複数を除外するには、以下の手順を実行します。
- Satellite Web UI で、Administer > Settings に移動します。
- HTTP(S) proxy except hosts の行で、隣接する Value の列を選択して、プロキシー要求から除外する、1 つまたは複数のホストの名前を入力します。
- チェックのアイコンをクリックして変更を保存します。
3.4. マネージドホスト上での電源管理の有効化 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server でベースボード管理コントローラー (BMC) を有効にすると、IPMI (Intelligent Platform Management Interface) または類似したプロトコルを使用して、マネージドホストで電源管理コマンドを使用できます。
BMC サービスを使用すると、さまざまな電源管理タスクを実行できます。この機能の基礎となるプロトコルは IPMI (BMC 機能とも呼ばれます) です。IPMI は、ホストの CPU とは独立して実行される専用プロセッサーに接続された管理対象ハードウェア上の特別なネットワークインターフェイスを使用します。多くの場合、BMC 機能はシャーシ管理 (シャーシ内の専用モジュール) の一部としてシャーシベースのシステムに組み込まれています。
BMC サービスの詳細は、ホストの管理 の 追加のネットワークインターフェイスの設定を 参照してください。
作業開始前の準備
- すべての管理対象ホストには、タイプ BMC のネットワークインターフェイスが必要です。Satellite はこの NIC を使用して適切な認証情報をホストに渡します。
マネージドホスト上での電源管理の有効化
オプションを使用してインストーラーを実行し、BMC を有効にします。
satellite-installer --foreman-proxy-bmc "true" \ --foreman-proxy-bmc-default-provider "freeipmi"
# satellite-installer --foreman-proxy-bmc "true" \ --foreman-proxy-bmc-default-provider "freeipmi"Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.5. Satellite Server で DNS、DHCP、および TFTP の設定 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server では、DNS、DHCP、および TFTP を設定できます。
外部サービスを設定する場合は、4章外部サービスの設定。
これらのサービスを手動で管理するために Satellite で無効にしたい場合は、「マネージド外ネットワークに対する DNS、DHCP、および TFTP の無効化」。
設定可能なオプションの全リストを表示するには、satellite-installer --scenario satellite --help コマンドを入力します。
作業開始前の準備
- ネットワーク管理者に連絡して正しい設定が行われていることを確認する。
以下の情報を用意する必要があります。
- DHCP IP アドレス範囲
- DHCP ゲートウェイ IP アドレス
- DHCP ネームサーバー IP アドレス
- DNS 情報
- TFTP サーバー名
- ネットワークの変更の場合は、可能な限り、IP アドレスの代わりに FQDN を使用します。
Satellite Server での DNS、DHCP、および TFTP の設定
環境に適したオプションを使用して
satellite-installerを実行します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow DHCP、DNS、および TFTP サービスの設定の詳細は、プロビジョニングガイド の ネットワークサービスの設定 セクションを参照してください。
このスクリプトは、進捗を表示し、
/var/log/foreman-installer/satellite.logにログを記録します。admin_passwordパラメーターを含む、使用されている設定は、/etc/foreman-installer/scenarios.d/Satellite-answers.yaml ファイルで確認できます。
設定を変更する場合は 、satellite-installer を再度実行する必要があります。スクリプトを複数回実行すると、変更された値ですべての設定ファイルが更新されます。
3.6. マネージド外ネットワークに対する DNS、DHCP、および TFTP の無効化 リンクのコピーリンクがクリップボードにコピーされました!
TFTP、DHCP および DNS サービスを手動で管理する場合には、Satellite がオペレーティングシステム上でこれらのサービスを管理しないようにし、オーケストレーションを無効にして、DHCP および DNS バリデーションエラーを回避する必要があります。ただし、Satellite ではオペレーティングシステムのバックエンドサービスは削除されません。
手順
オペレーティングシステム上で Satellite による DHCP、DNS、および TFTP サービスを管理を回避し、オーケストレーションを無効にするには、次の手順を実行します。
Satellite Server で以下のコマンドを入力します。
satellite-installer --foreman-proxy-dhcp false \ --foreman-proxy-dns false \ --foreman-proxy-tftp false
# satellite-installer --foreman-proxy-dhcp false \ --foreman-proxy-dns false \ --foreman-proxy-tftp falseCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Satellite Web UI で、Infrastructure > Subnets に移動し、サブネットを選択します。
- Capsules タブで、DHCP Capsule、TFTP Capsule、および 逆引き DNS Capsule を選択します。
- インフラストラクチャー > ドメイン に移動し、ドメインを選択します。
- DNS Capsule フィールドの内容を消去します。
オプション: サードパーティーが提供する DHCP サービスを使用する場合は、以下のオプションを渡すように DHCP サーバーを設定します。
Option 66: IP_address_of_Satellite_or_Capsule Option 67: /pxelinux.0
Option 66: IP_address_of_Satellite_or_Capsule Option 67: /pxelinux.0Copy to Clipboard Copied! Toggle word wrap Toggle overflow DHCP オプションの詳細は RFC 2132 を参照してください。
特定のサブネットとドメインに対して Capsule が設定されていない場合、Satellite 6 はオーケストレーションを実行しません。Capsule の関連付けを有効または無効にした場合に、想定のレコードと設定ファイルが存在しないと、既存のホストのオーケストレーションコマンドが失敗することがあります。オーケストレーションを有効にするために Capsule を関連付ける場合は、今後、ホストの削除に失敗しないように、既存の Satellite ホストに対して必要な DHCP レコード、DNS レコード、TFTP ファイルが所定の場所にあることを確認します。
3.7. Satellite Server で送信メールの設定 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server からメールメッセージを送信するには、SMTP サーバーまたは sendmail コマンドのいずれかを使用できます。
前提条件
前回のリリースからアップグレードしている場合は、設定ファイル /usr/share/foreman/config/email.yaml の名前を変更するか削除して、httpd サービスを再起動しておく。以下に例を示します。
mv /usr/share/foreman/config/email.yaml \ /usr/share/foreman/config/email.yaml-backup systemctl restart httpd
# mv /usr/share/foreman/config/email.yaml \
/usr/share/foreman/config/email.yaml-backup
# systemctl restart httpd
Satellite Server で送信メールの設定
- Satellite Web UI で、管理 → 設定 に移動します。
Email タブをクリックして、希望する配信方法に一致する設定オプションを設定します。変更は即座に反映されます。
以下の例は、SMTP サーバーを使用する場合の設定オプションの例を示しています。
Expand 表3.1 配信方法に SMTP サーバーを使用する例 名前 値例 配信方法
SMTP
SMTP アドレス
smtp.example.com
SMTP 認証
ログイン
SMTP HELO/EHLO ドメイン
example.com
SMTP パスワード
パスワード
SMTP ポート
25
SMTP ユーザー名
衛星 @example.com
SMTP ユーザー名とSMTP パスワードでは、SMTP サーバーのログイン認証情報を指定します。以下の例では、gmail.com が SMTP サーバーとして使用されています。
Expand 表3.2 gmail.com を SMTP サーバーとして使用する例 名前 値例 配信方法
SMTP
SMTP アドレス
smtp.gmail.com
SMTP 認証
plain
SMTP HELO/EHLO ドメイン
smtp.gmail.com
SMTP enable StartTLS auto
Yes
SMTP パスワード
パスワード
SMTP ポート
587
SMTP ユーザー名
user@gmail.com
以下の例では、
sendmailコマンドが配信方法として使用されています。Expand 表3.3 配信方法に sendmail を使用する例 名前 値例 配信方法
Sendmail
Sendmail の引数
-i -t -G
Sendmail の引数では、sendmailコマンドに渡すオプションを指定します。デフォルト値は、-i -tです。詳細は、sendmail 1 の man ページを参照してください。
TLS 認証を使用する SMTP サーバーで電子メールを送信する場合は、以下のいずれかの手順を実行してください。
SMTP サーバーの CA 証明書を信頼済みとしてマークします。これを行うには、Satellite Server で次のコマンドを実行します。
cp mailca.crt /etc/pki/ca-trust/source/anchors/ update-ca-trust enable update-ca-trust
# cp mailca.crt /etc/pki/ca-trust/source/anchors/ # update-ca-trust enable # update-ca-trustCopy to Clipboard Copied! Toggle word wrap Toggle overflow ここで、
mailca.crtは SMTP サーバーの CA 証明書です。-
別の方法では、Web UI の
SMTP enable StartTLS autoオプションをNoに設定します。
-
Test email をクリックしてユーザーのメールアドレスにテストメッセージを送信し、設定が機能していることを確認します。メッセージの送信に失敗する場合は、Web UI でエラーが表示されます。詳細は、
/var/log/foreman/production.logのログを確認してください。
個々のユーザーまたはユーザーグループに対するメール通知の設定については、Red Hat Satellite の管理 の メール通知の設定を 参照してください。
3.8. カスタムサーバー証明書を使用した Satellite Server の設定 リンクのコピーリンクがクリップボードにコピーされました!
SSL 証明書は、情報を保護し、安全な通信を可能にするために使用されます。Red Hat Satellite 6 は、Satellite Server、外部の Capsule Server、およびすべてのホスト間の暗号化された通信を可能にするために、自己署名 SSL 証明書を作成します。これらの自己署名証明書を使用する代わりに、外部の信頼できる企業である認証局によって発行されたカスタム SSL 証明書をインストールできます。たとえば、SSL 証明書は認証局から取得する必要があるというセキュリティーポリシーが会社にあるとします。証明書を取得するには、証明書署名要求を作成し、認証局に送信します。「Satellite Server 向けの SSL 証明書の取得」。代わりに、署名された SSL 証明書を受け取ります。
Satellite サーバーでカスタム証明書を使用するには、これらの手順を完了します。
- 「Satellite Server 向けの SSL 証明書の取得」
- 「Satellite Server の SSL 証明書の検証」
- 「カスタム証明書パラメーターを使用した Satellite インストーラーの実行」
- 「Satellite Server に接続されたすべてのホストへの新しい証明書のインストール」
- Satellite Server に外部の Capsule Server が登録されている場合は、Capsule Server のインストールガイドのカスタムサーバー証明書を使用した Capsule Server の 設定に進み、カスタム証明書を使用するように Capsule Server を設定します。
3.8.1. Satellite Server 向けの SSL 証明書の取得 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server 向けのカスタム SSL 証明書がすでにある場合は、この手順を省略します。
SSL 証明書には、PEM エンコードを使用してください。
手順
Satellite Server の カスタム SSL 証明書を取得するには、次の手順を実行します。
すべてのソース証明書ファイルを保存するディレクトリーを作成します。このディレクトリーは
rootユーザーのみがアクセスできます (例:/root/sat_cert)。mkdir /root/sat_cert
# mkdir /root/sat_certCopy to Clipboard Copied! Toggle word wrap Toggle overflow Certificate Signing Request (CSR) を署名する秘密鍵を作成します。
注記Satellite Server 向けの秘密鍵がすでにある場合は、この手順を省略します。
openssl genrsa -out /root/sat_cert/satellite_cert_key.pem 4096
# openssl genrsa -out /root/sat_cert/satellite_cert_key.pem 4096Copy to Clipboard Copied! Toggle word wrap Toggle overflow 証明書署名要求 (CSR) の
/root/sat_cert/openssl.cnf設定ファイルを作成し、次のコンテンツを含めます。[ req_distinguished_name ]セクションに、貴社の組織の情報を入力します。注記証明書のコモンネーム (CN) とサブジェクト代替名 (SAN) DNS.1 は、証明書が使用されるサーバーの完全修飾ドメイン名 (FQDN) と一致する必要があります。Satellite Server の証明書を要求している場合、これは Satellite Server の FQDN です。Capsule Server の証明書をリクエストしている場合、これは Capsule Server の FQDN になります。
サーバーの FQDN を確認するには、そのサーバー上で次のコマンドを入力します:
hostname -f。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 証明書署名要求 (CSR) を作成します。
openssl req -new \ -key /root/sat_cert/satellite_cert_key.pem \ -out /root/sat_cert/satellite_cert_csr.pem \ -config /root/sat_cert/openssl.cnf
# openssl req -new \ -key /root/sat_cert/satellite_cert_key.pem \ -out /root/sat_cert/satellite_cert_csr.pem \ -config /root/sat_cert/openssl.cnfCopy to Clipboard Copied! Toggle word wrap Toggle overflow 証明局に証明書署名要求を送信します。Satellite Server と Capsule Server の証明書には同じ認証局が署名する必要があります。
要求を送信する場合は、証明書の有効期限を指定してください。証明書要求を送信する方法は異なるため、推奨される方法について認証局にお問い合わせください。リクエストに応じて、認証局バンドルと署名された証明書が別々のファイルで受信されることが予想されます。
3.8.2. Satellite Server の SSL 証明書の検証 リンクのコピーリンクがクリップボードにコピーされました!
次の例に従って、必要なパラメーターを指定して katello-certs-check コマンドを入力します。これにより、カスタム証明書に必要な入力ファイルが検証され、Satellite Server、すべての Capsule Server、および Satellite で管理されているホストに証明書をインストールするために必要なコマンドが出力されます。
カスタムの SSL 証明書入力ファイルを検証します。ファイルに合わせてファイル名を変更します。
katello-certs-checkコマンドが正しく機能するには、証明書のコモンネーム (CN) が Satellite Server の FQDN と一致している必要があることに注意してください。katello-certs-check \ -c /root/sat_cert/satellite_cert.pem \ -k /root/sat_cert/satellite_cert_key.pem \ -b /root/sat_cert/ca_cert_bundle.pem
# katello-certs-check \ -c /root/sat_cert/satellite_cert.pem \1 -k /root/sat_cert/satellite_cert_key.pem \2 -b /root/sat_cert/ca_cert_bundle.pem3 Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.8.3. カスタム証明書パラメーターを使用した Satellite インストーラーの実行 リンクのコピーリンクがクリップボードにコピーされました!
この時点で SSL 証明書が作成され、Red Hat Satellite 6 で使用できることが確認されました。次の手順は、カスタム SSL 証明書を Satellite Server とそのすべてのホストにインストールすることです。
この手順は、Satellite Server がすでにインストールされているかどうかに応じて若干異なります。すでにインストールされている場合は、既存の証明書を証明書アーカイブ内の証明書に 更新する 必要があります。
このセクションのコマンドは 、katello-certs-check コマンドによって出力されます。詳細は、「Satellite Server の SSL 証明書の検証」、ターミナルにコピーして貼り付けることができます。
状況に応じて、
satellite-installerコマンドを入力します。Satellite がすでにインストールされている場合は、Satellite サーバーで以下のコマンドを実行します。
satellite-installer --scenario satellite \ --certs-server-cert /root/sat_cert/satellite_cert.pem \ --certs-server-key /root/sat_cert/satellite_cert_key.pem \ --certs-server-ca-cert /root/sat_cert/ca_cert_bundle.pem \ --certs-update-server --certs-update-server-ca
# satellite-installer --scenario satellite \ --certs-server-cert /root/sat_cert/satellite_cert.pem \ --certs-server-key /root/sat_cert/satellite_cert_key.pem \ --certs-server-ca-cert /root/sat_cert/ca_cert_bundle.pem \ --certs-update-server --certs-update-server-caCopy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドの重要なパラメーターには、サーバーの SSL 証明書と認証局を更新することを指定する
--certs-update-serverと--certs-update-server-caが含まれます。インストーラーのすべてのパラメーターの簡単な説明については、コマンドsatellite-installer --scenario satellite --helpを入力してください。注記satellite-installerコマンド内のすべてのファイルには、相対パス名ではなく、完全パス名を使用します。インストーラーはすべてのファイルのパスと名前を記録するため、別のディレクトリーからインストーラーを再度実行すると、元のファイルが見つからないため失敗する可能性があります。Satellite がまだインストールされて いない 場合は、Satellite サーバーで次のコマンドを入力します。
satellite-installer --scenario satellite \ --certs-server-cert /root/sat_cert/satellite_cert.pem \ --certs-server-key /root/sat_cert/satellite_cert_key.pem \ --certs-server-ca-cert /root/sat_cert/ca_cert_bundle.pem
# satellite-installer --scenario satellite \ --certs-server-cert /root/sat_cert/satellite_cert.pem \ --certs-server-key /root/sat_cert/satellite_cert_key.pem \ --certs-server-ca-cert /root/sat_cert/ca_cert_bundle.pemCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注記satellite-installerコマンド内のすべてのファイルには、相対パス名ではなく、完全パス名を使用します。インストーラーはすべてのファイルのパスと名前を記録するため、別のディレクトリーからインストーラーを再度実行すると、元のファイルが見つからないため失敗する可能性があります。
-
証明書をホストにインストールする前に、証明書が Satellite Server に正常にインストールされていることを確認します。Satellite Server へのネットワークアクセス権を持つコンピューターで Web ブラウザーを起動し、URL
https://satellite.example.comに移動して証明書の詳細を表示します。
3.8.4. Satellite Server に接続されたすべてのホストへの新しい証明書のインストール リンクのコピーリンクがクリップボードにコピーされました!
カスタム SSL 証明書が Satellite Server にインストールされたので、Satellite Server に登録されているすべてのホストにもインストールする必要があります。
BZ#1683835 が解決されるまで、katello-ca-consumer パッケージをアップグレードすることはできません。古いパッケージを削除して、新しいパッケージをインストールする必要があります。katello-ca-consumer パッケージのアップグレードは、rhsm.conf の baseurl 設定が subscription.rhsm.redhat.com に戻されるため失敗します。
手順
該当するすべてのホストで次のコマンドを入力します。
ホスト上の現在の
katello-ca-consumerパッケージを削除します。yum remove 'katello-ca-consumer*'
# yum remove 'katello-ca-consumer*'Copy to Clipboard Copied! Toggle word wrap Toggle overflow ホストにカスタム SSL 証明書をインストールします。
yum localinstall http://satellite.example.com/pub/katello-ca-consumer-latest.noarch.rpm
# yum localinstall http://satellite.example.com/pub/katello-ca-consumer-latest.noarch.rpmCopy to Clipboard Copied! Toggle word wrap Toggle overflow
3.9. Satellite での外部データベースの使用 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Satellite のインストールプロセスの一環として、satellite-installer コマンドは、Satellite と同じサーバーに MongoDB および PostgreSQL データベースをインストールします。特定の Satellite デプロイメントでは、外部データベースを使用するとサーバーの負荷を軽減できます。ただし、Satellite Server のパフォーマンスに影響を与える可能性のある要因は多数あります。外部データベースに移動しても、特定の問題は解決されない可能性があります。
外部データベースに MongoDB と PostgreSQL のどちらのデータベースが使用できるか (または両方使用できるか) については、要件によって異なります。
Red Hat では、外部データベースのメンテナンスのサポートやそのためのツールは提供していません。これにはバックアップ、アップグレード、データベースのチューニングが含まれます。外部データベースを使用するお客様には、データベースをサポートおよび保守するための独自のデータベース管理者が必要です。
お使いの Satellite デプロイメントで外部データベースを必要とする場合は、以下の情報を使用して、Satellite から外部データベースに参照するように設定します。
3.9.1. 外部データベースとして MongoDB を使用する際の注意点 リンクのコピーリンクがクリップボードにコピーされました!
Pulp は MongoDB データベースを使用します。MongoDB を外部データベースとして使用する場合、次の情報はこのオプションが Satellite 設定に適しているかどうかを判断するのに役立ちます。
外部 MongoDB の利点
- Satellite 上の空きメモリーと空き CPU が増えます。
- Satellite 操作にマイナスの影響をもたらすことなく MongoDB サーバーのシステムを調整する柔軟性が得られます。
外部 MongoDB のマイナス点
- デプロイメントの複雑性が増し、問題解決がより困難になります。
- 外部 MongoDB サーバーの場合は、パッチおよびメンテナンス対象に新たなシステムが加わることになります。
- Satellite または Mongo データベースサーバーのいずれかにハードウェアまたはストレージ障害が発生すると、Satellite が機能しなくなります。
- Satellite と外部データベースサーバーの間でレイテンシーが発生すると、パフォーマンスに影響が出る可能性があります。
Mongo データベースが遅いと思われる場合は、Red Hat サポートに問い合わせてトラブルシューティングを行うことができます。Satellite 6 で設定上の問題または既存のパフォーマンス上の問題が発生している可能性があり、外部データベースサーバーに移行しても解決しない可能性があります。Red Hat サポートは、既存の既知の問題を調査し、Satellite エンジニアリングチームと協力して根本原因を特定することができます。
3.9.2. 外部データベースとして PostgreSQL を使用する際の注意点 リンクのコピーリンクがクリップボードにコピーされました!
Foreman、Katello、および Candlepin は PostgreSQL データベースを使用します。PostgreSQL を外部データベースとして使用する場合、次の情報はこのオプションが Satellite 設定に適しているかどうかを判断するのに役立ちます。
外部 PostgreSQL の利点
- Satellite 上の空きメモリーと空き CPU が増えます。
-
PostgreSQL データベースで
shared_buffersを高い値に設定しても、Satellite 上の他のサービスの妨げるリスクがありません。 - Satellite 操作にマイナスの影響をもたらすことなく PostgreSQL サーバーのシステムを調整する柔軟性が得られます。
外部 PostgreSQL のマイナス点
- デプロイメントの複雑性が増し、問題解決がより困難になります。
- 外部 PostgreSQL サーバーの場合は、パッチおよびメンテナンス対象に新たなシステムが加わることになります。
- Satellite または PostgreSQL データベースサーバーのいずれかにハードウェアまたはストレージ障害が発生すると、Satellite が機能しなくなります。
- Satellite Server とデータベースサーバーの間でレイテンシーが発生すると、パフォーマンスに影響が出ます。
お使いの Satellite 上の PostgreSQL データベースが原因でパフォーマンスの低下が生じている可能性がある場合は、Satellite 6: How to enable postgres query logging to detect slow running queries を参照して時間のかかっているクエリーがあるかどうか判定します。1 秒以上かかるクエリーがある場合は、通常、大規模インストールのパフォーマンスが原因であることが多く、外部データベースに移行しても問題解決が期待できません。時間のかかっているクエリーがある場合は、Red Hat サポートチームまでお問い合わせください。
3.9.3. 概要 リンクのコピーリンクがクリップボードにコピーされました!
Satellite 用にリモートデータベースを作成して使用するには、以下の手順を実行します。
- 使用「ストレージの要件とガイドライン」外部データベースのストレージ要件を計画する
- PostgreSQL で Foreman および Candlepin 用のデータベースを準備し、Foreman と Candlepin の所有権を持つ専用ユーザーを作成します。
-
pulp_databaseを所有するpulpユーザーで MongoDB を準備します。 - 最初の手順に従い、Satellite をインストールし、データベースが Satellite からアクセスできることを確認します。
-
新しいデータベースを指すように
satellite-installerのパラメーターを編集し、satellite-installerを実行します。
データベースをインストールするための Red Hat Enterprise Linux Server 7 の準備
最新の Red Hat Enterprise Linux Server 7 を搭載し、ストレージ要件を満たす新規にプロビジョニングされたシステムが必要です。「ストレージの要件とガイドライン」。
Red Hat Software Collections および Red Hat Enterprise Linux のサブスクリプションでは、外部データベースと Satellite を併用する場合に、正しいサービスレベルアグリーメントが提供されません。外部データベースに使用するベースシステムに Satellite サブスクリプションを接続する必要もあります。
- Satellite サブスクリプションの識別とホストへの接続 の手順に従って、Satellite サブスクリプションをサーバーに接続します。
MongoDB および PostgreSQL サーバーを Red Hat Enterprise Linux Server 7 にインストールするには、すべてのリポジトリーを無効にし、以下のリポジトリーのみを有効にする必要があります。
subscription-manager repos --disable '*' subscription-manager repos --enable=rhel-server-rhscl-7-rpms \ --enable=rhel-7-server-rpms
# subscription-manager repos --disable '*' # subscription-manager repos --enable=rhel-server-rhscl-7-rpms \ --enable=rhel-7-server-rpmsCopy to Clipboard Copied! Toggle word wrap Toggle overflow
3.9.4. MongoDB のインストール リンクのコピーリンクがクリップボードにコピーされました!
インストール可能な MongoDB は、内部データベースのインストール中に satellite-installer ツールでインストールされたものと同じバージョンの MongoDB のみになります。MongoDB はサポート対象のバージョンであれば、Red Hat Software Collections (RHSCL) リポジトリーからまたは外部ソースからインストールすることが可能です。Satellite は MongoDB バージョン 3.4 をサポートしています。
MongoDB をインストールするには、以下のコマンドを入力します。
yum install rh-mongodb34 rh-mongodb34-syspaths
# yum install rh-mongodb34 rh-mongodb34-syspathsCopy to Clipboard Copied! Toggle word wrap Toggle overflow rh-mongodb34 サービスを起動して有効にします。
systemctl start rh-mongodb34-mongod systemctl enable rh-mongodb34-mongod
# systemctl start rh-mongodb34-mongod # systemctl enable rh-mongodb34-mongodCopy to Clipboard Copied! Toggle word wrap Toggle overflow pulp_database データベース用に、MongoDB に Pulp ユーザーを作成します。
mongo pulp_database \ --eval "db.createUser({user:'pulp',pwd:'pulp_password',roles:[{role:'dbOwner', db:'pulp_database'},{ role: 'readWrite', db: 'pulp_database'}]})"# mongo pulp_database \ --eval "db.createUser({user:'pulp',pwd:'pulp_password',roles:[{role:'dbOwner', db:'pulp_database'},{ role: 'readWrite', db: 'pulp_database'}]})"Copy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/opt/rh/rh-mongodb34/mongod.confファイルでバインド IP を指定します。bindIp: your_mongodb_server_bind_IP,::1
bindIp: your_mongodb_server_bind_IP,::1Copy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/opt/rh/rh-mongodb34/mongod.confファイルを編集してsecurityセクションの認証を有効にします。security: authorization: enabled
security: authorization: enabledCopy to Clipboard Copied! Toggle word wrap Toggle overflow rh-mongodb34-mongodサービスを再起動します。systemctl restart rh-mongodb34-mongod
# systemctl restart rh-mongodb34-mongodCopy to Clipboard Copied! Toggle word wrap Toggle overflow MongoDB にポート 27017 を開きます。
firewall-cmd --add-port=27017/tcp firewall-cmd --runtime-to-permanent
# firewall-cmd --add-port=27017/tcp # firewall-cmd --runtime-to-permanentCopy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite Server から、データベースにアクセスできることをテストします。接続が成功すると、コマンドから
1が返ります。scl enable rh-mongodb34 " mongo --host mongo.example.com \ -u pulp -p pulp_password --port 27017 --eval 'ping:1' pulp_database"
# scl enable rh-mongodb34 " mongo --host mongo.example.com \ -u pulp -p pulp_password --port 27017 --eval 'ping:1' pulp_database"Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.9.5. PostgreSQL のインストール リンクのコピーリンクがクリップボードにコピーされました!
インストール可能な PostgreSQL は、内部データベースのインストール中に satellite-installer ツールでインストールされたものと同じバージョンの PostgreSQL のみになります。Satellite は、Red Hat Enterprise Linux Server 7 リポジトリーを通じて利用可能な特定のバージョンの PostgreSQL のみをサポートします。バージョンがサポートされている限り、rhel-7-server-rpms リポジトリーまたは外部ソースを使用して PostgreSQL をインストールできます。サポートされているバージョンの PostgreSQL が含まれているリポジトリーと、サポートされているバージョンの詳細は、パッケージマニフェスト を参照してください。
PostgreSQL をインストールするには、以下のコマンドを入力します。
yum install postgresql-server
# yum install postgresql-serverCopy to Clipboard Copied! Toggle word wrap Toggle overflow PostgreSQL サービスを初期化して起動し、有効にするには、以下のコマンドを実行します。
postgresql-setup initdb systemctl start postgresql systemctl enable postgresql
# postgresql-setup initdb # systemctl start postgresql # systemctl enable postgresqlCopy to Clipboard Copied! Toggle word wrap Toggle overflow /var/lib/pgsql/data/postgresql.confファイルで以下を行います。vi /var/lib/pgsql/data/postgresql.conf
# vi /var/lib/pgsql/data/postgresql.confCopy to Clipboard Copied! Toggle word wrap Toggle overflow #を削除して、着信接続をリッスンするようにします。listen_addresses = '*'
listen_addresses = '*'Copy to Clipboard Copied! Toggle word wrap Toggle overflow /var/lib/pgsql/data/pg_hba.confファイルを編集します。vi /var/lib/pgsql/data/pg_hba.conf
# vi /var/lib/pgsql/data/pg_hba.confCopy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の行をファイルに追加します。
host all all satellite_server_ip/24 md5
host all all satellite_server_ip/24 md5Copy to Clipboard Copied! Toggle word wrap Toggle overflow PostgreSQL サービスを再起動して、変更を適用します。
systemctl restart postgresql
# systemctl restart postgresqlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 外部 PostgreSQL サーバーで postgresql ポートを開きます。
firewall-cmd --add-service=postgresql firewall-cmd --runtime-to-permanent
# firewall-cmd --add-service=postgresql # firewall-cmd --runtime-to-permanentCopy to Clipboard Copied! Toggle word wrap Toggle overflow postgresユーザーに切り替え、PostgreSQL クライアントを起動します。su - postgres -c psql
$ su - postgres -c psqlCopy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite と Candlepin 用にそれぞれ、データベース、および専用ロールを作成します。
CREATE USER "foreman" WITH PASSWORD 'Foreman_Password'; CREATE USER "candlepin" WITH PASSWORD 'Candlepin_Password'; CREATE DATABASE foreman OWNER foreman; CREATE DATABASE candlepin OWNER candlepin;
CREATE USER "foreman" WITH PASSWORD 'Foreman_Password'; CREATE USER "candlepin" WITH PASSWORD 'Candlepin_Password'; CREATE DATABASE foreman OWNER foreman; CREATE DATABASE candlepin OWNER candlepin;Copy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite Server から、データベースにアクセスできることをテストします。接続に成功した場合には、コマンドは
1を返します。PGPASSWORD='Foreman_Password' psql -h postgres.example.com -p 5432 -U foreman -d foreman -c "SELECT 1 as ping" PGPASSWORD='Candlepin_Password' psql -h postgres.example.com -p 5432 -U candlepin -d candlepin -c "SELECT 1 as ping"
# PGPASSWORD='Foreman_Password' psql -h postgres.example.com -p 5432 -U foreman -d foreman -c "SELECT 1 as ping" # PGPASSWORD='Candlepin_Password' psql -h postgres.example.com -p 5432 -U candlepin -d candlepin -c "SELECT 1 as ping"Copy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite 用にリモートデータベースをインストールして設定するには以下のコマンドを入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
データベースのステータスを照会できます。たとえば、--only を指定して次のコマンドを入力し、postgresql または rh-mongodb34-mongod を追加します。
PostgreSQL の場合は、以下のコマンドを実行します。
foreman-maintain service status --only postgresql
# foreman-maintain service status --only postgresql
MongoDB の場合は、以下のコマンドを実行します。
foreman-maintain service status --only rh-mongodb34-mongod
# foreman-maintain service status --only rh-mongodb34-mongod
3.10. mongod へのアクセスの制限 リンクのコピーリンクがクリップボードにコピーされました!
データ損失のリスクを軽減するには、MongoDB データベースデーモン mongod へのアクセスを apache ユーザーと root ユーザーのみに許可する必要があります。
次のコマンドを使用して、Satellite Server および Capsule Server 上の mongod へのアクセスを制限します。
ファイヤーウォールを設定します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 変更を永続化します。
firewall-cmd --runtime-to-permanent
# firewall-cmd --runtime-to-permanentCopy to Clipboard Copied! Toggle word wrap Toggle overflow
第4章 外部サービスの設定 リンクのコピーリンクがクリップボードにコピーされました!
一部の環境では、DNS、DHCP、および TFTP サービスがすでに存在するため、これらのサービスを提供するために Satellite Server を使用する必要はありません。DNS、DHCP、または TFTP を提供するために外部サーバーを使用する場合は、それらを Satellite Server で使用するように設定できます。
これらのサービスを手動で管理するために Satellite で無効にする場合は、詳細は 管理対象外ネットワークの DNS、DHCP、および TFTP の無効化を 参照してください。
4.1. 外部 DNS を使用した Satellite の設定 リンクのコピーリンクがクリップボードにコピーされました!
DNS サービスを提供するために Satellite が外部サーバーを使用するよう設定できます。
Red Hat Enterprise Linux Server をデプロイし、ISC DNS サービスをインストールします。
yum install bind bind-utils
# yum install bind bind-utilsCopy to Clipboard Copied! Toggle word wrap Toggle overflow ドメインの設定ファイルを作成します。
次の例では、ドメイン
virtual.lan を1 つのサブネット 192.168.38.0/24 として設定し、セキュリティーキーをCapsuleに設定し、フォワーダーを Google のパブリック DNS アドレス (8.8.8.8 と 8.8.4.4) に設定します。192.168.38.2 は DNS サーバーの IP アドレスであり、192.168.38.1 は Satellite Server または Capsule Server の IP アドレスです。Copy to Clipboard Copied! Toggle word wrap Toggle overflow inet行は、設定ファイル内に 1 行として入力する必要があります。キーファイルを作成します。
ddns-confgen -k capsule
# ddns-confgen -k capsuleCopy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドが完了するまで、しばらく時間がかかることがあります。
キーセクションの出力をコピーして、
/etc/rndc.keyという別のファイルに貼り付けます。cat /etc/rndc.key key "capsule" { algorithm hmac-sha256; secret "GeBbgGoLedEAAwNQPtPh3zP56MJbkwM84UJDtaUS9mw="; };# cat /etc/rndc.key key "capsule" { algorithm hmac-sha256; secret "GeBbgGoLedEAAwNQPtPh3zP56MJbkwM84UJDtaUS9mw="; };Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要これは、DNS サーバーの設定を変更するために使用されるキーです。読み取りと書き込みは root ユーザーのみが実行できます。
ゾーンファイルを作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 逆引きゾーンファイルを作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ASCII 以外の他の文字は使用しないでください。
4.2. DNS サービスの開始と起動 リンクのコピーリンクがクリップボードにコピーされました!
構文を検証します。
named-checkconf -z /etc/named.conf
# named-checkconf -z /etc/named.confCopy to Clipboard Copied! Toggle word wrap Toggle overflow サービスを起動します。
systemctl restart named
# systemctl restart namedCopy to Clipboard Copied! Toggle word wrap Toggle overflow 新しいホストを追加します。
次の例では、ホスト 192.168.38.2 を使用します。環境に合わせてこれを変更する必要があります。
echo -e "server 192.168.38.2\n \ update add aaa.virtual.lan 3600 IN A 192.168.38.10\n \ send\n" | nsupdate -k /etc/rndc.key
# echo -e "server 192.168.38.2\n \ update add aaa.virtual.lan 3600 IN A 192.168.38.10\n \ send\n" | nsupdate -k /etc/rndc.keyCopy to Clipboard Copied! Toggle word wrap Toggle overflow DNS サービスが新しいホストを解決できることを確認します。
nslookup aaa.virtual.lan 192.168.38.2
# nslookup aaa.virtual.lan 192.168.38.2Copy to Clipboard Copied! Toggle word wrap Toggle overflow 必要な場合は、新しいエントリーを削除します。
echo -e "server 192.168.38.2\n \ update delete aaa.virtual.lan 3600 IN A 192.168.38.10\n \ send\n" | nsupdate -k /etc/rndc.key
# echo -e "server 192.168.38.2\n \ update delete aaa.virtual.lan 3600 IN A 192.168.38.10\n \ send\n" | nsupdate -k /etc/rndc.keyCopy to Clipboard Copied! Toggle word wrap Toggle overflow DNS サービスへの外部アクセスのためにファイアウォールを設定します (ポート 53 上の UDP および TCP)。
firewall-cmd --add-port="53/udp" --add-port="53/tcp" \ && firewall-cmd --runtime-to-permanent
# firewall-cmd --add-port="53/udp" --add-port="53/tcp" \ && firewall-cmd --runtime-to-permanentCopy to Clipboard Copied! Toggle word wrap Toggle overflow
4.3. Satellite Server での外部 DHCP の設定 リンクのコピーリンクがクリップボードにコピーされました!
本セクションでは、 Red Hat Satellite Server が外部 DHCP サーバーをを使用する設定について説明します。
DHCP サーバーの設定、DHCP 設定およびリースファイルの共有
Red Hat Enterprise Linux Server をデプロイし、ISC DHCP サービスおよび BIND (Berkeley Internet Name Domain) をインストールします。
yum install dhcp bind
# yum install dhcp bindCopy to Clipboard Copied! Toggle word wrap Toggle overflow 空のディレクトリーでセキュリティートークンを生成します。
dnssec-keygen -a HMAC-MD5 -b 512 -n HOST omapi_key
# dnssec-keygen -a HMAC-MD5 -b 512 -n HOST omapi_keyCopy to Clipboard Copied! Toggle word wrap Toggle overflow 上記のコマンドが完了するまで、しばらく時間がかかることがあります。安全性が高くない概念実証のデプロイメントでは、非ブロック型乱数ジェネレーターを使用できます。
dnssec-keygen -r /dev/urandom -a HMAC-MD5 -b 512 -n HOST omapi_key
# dnssec-keygen -r /dev/urandom -a HMAC-MD5 -b 512 -n HOST omapi_keyCopy to Clipboard Copied! Toggle word wrap Toggle overflow これにより、キーペアが現行ディレクトリーに 2 つのファイルで作成されます。
キーからシークレットハッシュをコピーします。
cat Komapi_key.+*.private |grep ^Key|cut -d ' ' -f2
# cat Komapi_key.+*.private |grep ^Key|cut -d ' ' -f2Copy to Clipboard Copied! Toggle word wrap Toggle overflow すべてのサブネットの
dhcpd設定ファイルを編集し、例のようにキーを追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 2 つのキーファイルを、それらを作成したディレクトリーから削除します。
Satellite Server で各サブネットを定義します。
競合を防ぐために、リース範囲と予約範囲を別々に設定することを推奨します。たとえば、リース範囲は 192.168.38.10 - 192.168.38.100 なので、予約範囲 (Satellite Web UI で定義) は 192.168.38.101 - 192.168.38.250 になります。定義済みのサブネットに DHCP Capsule は設定しないでください。
ファイアウォールで DHCP サーバーへの外部アクセスを設定します。
firewall-cmd --add-service dhcp \ && firewall-cmd --runtime-to-permanent
# firewall-cmd --add-service dhcp \ && firewall-cmd --runtime-to-permanentCopy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite Server の foreman ユーザーの UID 番号と GID 番号を確認します。
id -u foreman id -g foreman
# id -u foreman 993 # id -g foreman 990Copy to Clipboard Copied! Toggle word wrap Toggle overflow ユーザー ID とグループ ID が同じユーザーとグループを、DHCP サーバーに作成します。
groupadd -g 990 foreman useradd -u 993 -g 990 -s /sbin/nologin foreman
# groupadd -g 990 foreman # useradd -u 993 -g 990 -s /sbin/nologin foremanCopy to Clipboard Copied! Toggle word wrap Toggle overflow 設定ファイルを読み取り可能にするために、読み取りおよび実行フラグを復元します。
chmod o+rx /etc/dhcp/ chmod o+r /etc/dhcp/dhcpd.conf chattr +i /etc/dhcp/ /etc/dhcp/dhcpd.conf
# chmod o+rx /etc/dhcp/ # chmod o+r /etc/dhcp/dhcpd.conf # chattr +i /etc/dhcp/ /etc/dhcp/dhcpd.confCopy to Clipboard Copied! Toggle word wrap Toggle overflow DHCP サービスを起動します。
systemctl start dhcpd
# systemctl start dhcpdCopy to Clipboard Copied! Toggle word wrap Toggle overflow NFS を使用して DHCP 設定およびリースファイルをエクスポートします。
yum install nfs-utils systemctl enable rpcbind nfs-server systemctl start rpcbind nfs-server nfs-lock nfs-idmapd
# yum install nfs-utils # systemctl enable rpcbind nfs-server # systemctl start rpcbind nfs-server nfs-lock nfs-idmapdCopy to Clipboard Copied! Toggle word wrap Toggle overflow NFS を使用して、エクスポートする DHCP 設定およびリースファイルを作成します。
mkdir -p /exports/var/lib/dhcpd /exports/etc/dhcp
# mkdir -p /exports/var/lib/dhcpd /exports/etc/dhcpCopy to Clipboard Copied! Toggle word wrap Toggle overflow 新しく作成されたディレクトリーのマウントポイントを作成するには、
/etc/fstabファイルに次の行を追加します。/var/lib/dhcpd /exports/var/lib/dhcpd none bind,auto 0 0 /etc/dhcp /exports/etc/dhcp none bind,auto 0 0
/var/lib/dhcpd /exports/var/lib/dhcpd none bind,auto 0 0 /etc/dhcp /exports/etc/dhcp none bind,auto 0 0Copy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/fstab内のファイルシステムをマウントします。mount -a
# mount -aCopy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/exports に以下の行が存在することを確認します。
/exports 192.168.38.1(rw,async,no_root_squash,fsid=0,no_subtree_check) /exports/etc/dhcp 192.168.38.1(ro,async,no_root_squash,no_subtree_check,nohide) /exports/var/lib/dhcpd 192.168.38.1(ro,async,no_root_squash,no_subtree_check,nohide)
/exports 192.168.38.1(rw,async,no_root_squash,fsid=0,no_subtree_check) /exports/etc/dhcp 192.168.38.1(ro,async,no_root_squash,no_subtree_check,nohide) /exports/var/lib/dhcpd 192.168.38.1(ro,async,no_root_squash,no_subtree_check,nohide)Copy to Clipboard Copied! Toggle word wrap Toggle overflow NFS サーバーをリロードします。
exportfs -rva
# exportfs -rvaCopy to Clipboard Copied! Toggle word wrap Toggle overflow ファイアウォールで Satellite Server 向けの DHCP omapi ポート 7911 を設定します。
firewall-cmd --add-port="7911/tcp" \ && firewall-cmd --runtime-to-permanent
# firewall-cmd --add-port="7911/tcp" \ && firewall-cmd --runtime-to-permanentCopy to Clipboard Copied! Toggle word wrap Toggle overflow 必要な場合は、ファイアウォールで NFS への外部アクセスを設定します。
クライアントは NFSv3 を使用して設定します。
ファイアウォールを設定するには、
firewalldデーモンの NFS サービスを使用します。firewall-cmd --zone public --add-service mountd \ && firewall-cmd --zone public --add-service rpc-bind \ && firewall-cmd --zone public --add-service nfs \ && firewall-cmd --runtime-to-permanent
# firewall-cmd --zone public --add-service mountd \ && firewall-cmd --zone public --add-service rpc-bind \ && firewall-cmd --zone public --add-service nfs \ && firewall-cmd --runtime-to-permanentCopy to Clipboard Copied! Toggle word wrap Toggle overflow
Satellite Server の設定
NFS クライアントをインストールします。
yum install nfs-utils
# yum install nfs-utilsCopy to Clipboard Copied! Toggle word wrap Toggle overflow NFS 用の DHCP ディレクトリーを作成します。
mkdir -p /mnt/nfs/etc/dhcp /mnt/nfs/var/lib/dhcpd
# mkdir -p /mnt/nfs/etc/dhcp /mnt/nfs/var/lib/dhcpdCopy to Clipboard Copied! Toggle word wrap Toggle overflow ファイルの所有者を変更します。
chown -R foreman-proxy /mnt/nfs
# chown -R foreman-proxy /mnt/nfsCopy to Clipboard Copied! Toggle word wrap Toggle overflow NFS サーバーとの通信と RPC 通信パスを検証します。
showmount -e your_DHCP_server_FQDN rpcinfo -p your_DHCP_server_FQDN
# showmount -e your_DHCP_server_FQDN # rpcinfo -p your_DHCP_server_FQDNCopy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/fstabファイルに以下の行を追加します。your_DHCP_server_FQDN:/exports/etc/dhcp /mnt/nfs/etc/dhcp nfs ro,vers=3,auto,nosharecache,context="system_u:object_r:dhcp_etc_t:s0" 0 0 your_DHCP_server_FQDN:/exports/var/lib/dhcpd /mnt/nfs/var/lib/dhcpd nfs ro,vers=3,auto,nosharecache,context="system_u:object_r:dhcpd_state_t:s0" 0 0
your_DHCP_server_FQDN:/exports/etc/dhcp /mnt/nfs/etc/dhcp nfs ro,vers=3,auto,nosharecache,context="system_u:object_r:dhcp_etc_t:s0" 0 0 your_DHCP_server_FQDN:/exports/var/lib/dhcpd /mnt/nfs/var/lib/dhcpd nfs ro,vers=3,auto,nosharecache,context="system_u:object_r:dhcpd_state_t:s0" 0 0Copy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/fstabにファイルシステムをマウントします。mount -a
# mount -aCopy to Clipboard Copied! Toggle word wrap Toggle overflow 関連するファイルを読み取ります。
su foreman-proxy -s /bin/bash
# su foreman-proxy -s /bin/bash bash-4.2$ cat /mnt/nfs/etc/dhcp/dhcpd.conf bash-4.2$ cat /mnt/nfs/var/lib/dhcpd/dhcpd.leases bash-4.2$ exitCopy to Clipboard Copied! Toggle word wrap Toggle overflow satellite-installerスクリプトを実行して、/etc/foreman-proxy/settings.d/dhcp.yml ファイルに次の永続的な変更を加えます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow foreman-proxy サービスを再起動します。
systemctl restart foreman-proxy
# systemctl restart foreman-proxyCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Satellite Server Web UI にログインします。
- インフラストラクチャー > カプセル に移動します。適切な Capsule Server を見つけて、アクション ドロップダウンリストから 更新 を選択します。DHCP 機能が表示されます。
- DHCP サービスに適切なサブネットとドメインを関連付けます。
4.4. 外部 TFTP での Satellite Server の設定 リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、外部の TFTP サービスを使用して Satellite Server を設定します。
NAT 経由で TFTP サービスを使用できます。詳細は、プロビジョニング ガイドの NAT 経由の TFTP サービスの使用を 参照してください。
作業開始前の準備
- NFS への外部アクセス用に、NFS とファイアウォールをすでに設定しておく必要があります。外部 DHCP を使用した Satellite Server の設定を 参照してください。
Satellite Server での外部 TFTP の設定
TFTP サーバーをインストールし、有効にします。
yum install tftp-server syslinux
# yum install tftp-server syslinuxCopy to Clipboard Copied! Toggle word wrap Toggle overflow tftp.socketユニットを有効にしてアクティブ化します。systemctl enable tftp.socket systemctl start tftp.socket
# systemctl enable tftp.socket # systemctl start tftp.socketCopy to Clipboard Copied! Toggle word wrap Toggle overflow PXELinux 環境を設定します。
mkdir -p /var/lib/tftpboot/{boot,pxelinux.cfg,grub2} cp /usr/share/syslinux/{pxelinux.0,menu.c32,chain.c32} \ /var/lib/tftpboot/# mkdir -p /var/lib/tftpboot/{boot,pxelinux.cfg,grub2} # cp /usr/share/syslinux/{pxelinux.0,menu.c32,chain.c32} \ /var/lib/tftpboot/Copy to Clipboard Copied! Toggle word wrap Toggle overflow SELinux ファイルコンテキストを復元します。
restorecon -RvF /var/lib/tftpboot/
# restorecon -RvF /var/lib/tftpboot/Copy to Clipboard Copied! Toggle word wrap Toggle overflow NFS を使用してエクスポートする TFTP ディレクトリーを作成します。
mkdir -p /exports/var/lib/tftpboot
# mkdir -p /exports/var/lib/tftpbootCopy to Clipboard Copied! Toggle word wrap Toggle overflow 新しく作成されたマウントポイントを /etc/fstab ファイルに追加します。
/var/lib/tftpboot /exports/var/lib/tftpboot none bind,auto 0 0
/var/lib/tftpboot /exports/var/lib/tftpboot none bind,auto 0 0Copy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/fstab内のファイルシステムをマウントします。mount -a
# mount -aCopy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/exportsに以下の行があることを確認します。/exports 192.168.38.1(rw,async,no_root_squash,fsid=0,no_subtree_check)
/exports 192.168.38.1(rw,async,no_root_squash,fsid=0,no_subtree_check)Copy to Clipboard Copied! Toggle word wrap Toggle overflow /exports/var/lib/tftpboot 192.168.38.1(rw,async,no_root_squash,no_subtree_check,nohide)
/exports/var/lib/tftpboot 192.168.38.1(rw,async,no_root_squash,no_subtree_check,nohide)Copy to Clipboard Copied! Toggle word wrap Toggle overflow 最初の行は DHCP 設定に共通で、このシステムで以前の手順を完了すると作成されます。
NFS サーバーをリロードします。
exportfs -rva
# exportfs -rvaCopy to Clipboard Copied! Toggle word wrap Toggle overflow
4.4.1. TFTP に外部アクセスできるようにファイアウォールを設定する手順 リンクのコピーリンクがクリップボードにコピーされました!
ファイアウォールを設定します (ポート 69 上の UDP)。
firewall-cmd --add-port="69/udp" \ && firewall-cmd --runtime-to-permanent
# firewall-cmd --add-port="69/udp" \ && firewall-cmd --runtime-to-permanentCopy to Clipboard Copied! Toggle word wrap Toggle overflow
4.5. Satellite または Capsule での外部 IdM DNS の設定 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Satellite は、Red Hat Identity Management (IdM) サーバーを使用して DNS サービスを提供するように設定できます。ここでは、トランザクションキーを使用する、これを実現するための 2 つの方法について説明します。Red Hat Identity Management の詳細は、Linux ドメインアイデンティティー、認証、およびポリシーガイド を参照してください。
最初の方法は、RFC3645 で定義されている シークレットキートランザクションの汎用セキュリティーサービスアルゴリズム (GSS-TSIG) テクノロジーを使用してプロセスを自動化する IdM クライアントをインストールすることです。この方法では、Satellite Server または Capsule のベースシステムに IdM クライアントをインストールし、Satellite 管理者が使用するために IdM サーバー管理者によってアカウントが作成されている必要があります。見る「GSS-TSIG 認証を使用した動的 DNS 更新の設定」この方法を使用します。
2 番目の方法で ある DNS のシークレットキートランザクション認証 (TSIG) では、認証に rndc.key を使用します。バインド設定ファイルを編集し、Satellite Server のベースシステムに バインド ユーティリティーをインストールし、システム間で rndc.key を コピーするには、IdM サーバーへのルートアクセスが必要です。この技術は RFC2845 で定義されています。見る「TSIG 認証を使用した動的 DNS 更新の設定」この方法を使用します。
DNS を管理するために Satellite を使用する必要はありません。プロビジョニングされたホストが IdM に自動的に登録される Satellite のレルム登録機能を使用している場合は、ipa-client-install スクリプトによってクライアントの DNS レコードが作成されます。したがって、次の手順とレルム登録は相互に排他的になります。レルム登録の設定に関する詳細は、Red Hat Satellite の管理 の プロビジョニングされたホストの外部認証を 参照してください。
IdM クライアントのインストール先
Satellite Server がホストの DNS レコードを追加する場合、まずどの Capsule がそのドメインに DNS を提供しているかを判断します。次に、Capsule と通信してレコードを追加します。ホスト自体はこのプロセスには関与しません。つまり、IdM サーバーを使用して管理するドメインに DNS サービスを提供するように現在設定されている Satellite または Capsule に IdM クライアントをインストールして設定する必要があります。
4.5.1. GSS-TSIG 認証を使用した動的 DNS 更新の設定 リンクのコピーリンクがクリップボードにコピーされました!
この例では、Satellite Server の設定は以下のようになります。
| ホスト名 |
|
| ネットワーク |
|
IdM サーバーの設定は以下のようになります。
| ホスト名 |
|
| ドメイン名 |
|
作業開始前の準備
- IdM サーバーがデプロイされ、ホストベースのファイアウォールが正しく設定されていることを確認します。詳細はLinux ドメイン ID、認証、およびポリシーガイドの ポート要件 を参照してください。
- IdM サーバーに、IdM サーバーにゾーンを作成するパーミッションのあるアカウントを作成します。
- Satellite または外部 Capsule がドメインの DNS を管理していることを確認します。
- Satellite または外部 Capsule が正常に機能していることを確認します。
- 新しくインストールしたシステムの場合は、まずこのガイドのインストール手順を完了してください。特に、DNS と DHCP の設定が完了している必要があります。
- 変更を元に戻す必要がある場合に備えて、応答ファイルのバックアップを作成してください。詳細は、インストールオプションの指定を 参照してください。
IdM サーバー上で Kerberos プリンシパルの作成
Kerberos チケットがあることを確認します。
kinit idm_user
# kinit idm_userCopy to Clipboard Copied! Toggle word wrap Toggle overflow ここで、idm_user は IdM 管理者によって作成されたアカウントです。
IdM サーバーに認証する際に使用する Satellite または Capsule 用の新規 Kerberos プリンシパルを作成します。
ipa service-add capsule/satellite.example.com
# ipa service-add capsule/satellite.example.comCopy to Clipboard Copied! Toggle word wrap Toggle overflow
IdM クライアントのインストールと設定
以下の手順は、ドメインの DNS サービスを管理している Satellite または Capsule サーバーで行います。
IdM クライアントパッケージをインストールします。
yum install ipa-client
# yum install ipa-clientCopy to Clipboard Copied! Toggle word wrap Toggle overflow インストールスクリプトとそれに続くプロンプトを実行して、IdM クライアントを設定します。
ipa-client-install
# ipa-client-installCopy to Clipboard Copied! Toggle word wrap Toggle overflow Kerberos チケットがあることを確認します。
kinit admin
# kinit adminCopy to Clipboard Copied! Toggle word wrap Toggle overflow 既存の keytab を削除します。
rm /etc/foreman-proxy/dns.keytab
# rm /etc/foreman-proxy/dns.keytabCopy to Clipboard Copied! Toggle word wrap Toggle overflow このシステム用に作成された keytab を取得します。
ipa-getkeytab -p capsule/satellite.example.com@EXAMPLE.COM \ -s idm1.example.com -k /etc/foreman-proxy/dns.keytab
# ipa-getkeytab -p capsule/satellite.example.com@EXAMPLE.COM \ -s idm1.example.com -k /etc/foreman-proxy/dns.keytabCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注記サービス中の元のシステムと同じホスト名を持つスタンバイシステムに keytab を追加する際には、
rオプションを追加します。これにより、新規の認証情報が生成されることを防ぎ、元のシステムの認証情報が無効になります。次のように、keytab ファイルのグループと所有者を
foreman-proxyに設定します。chown foreman-proxy:foreman-proxy /etc/foreman-proxy/dns.keytab
# chown foreman-proxy:foreman-proxy /etc/foreman-proxy/dns.keytabCopy to Clipboard Copied! Toggle word wrap Toggle overflow 必要に応じて、keytab が有効か確認します。
kinit -kt /etc/foreman-proxy/dns.keytab \ capsule/satellite.example.com@EXAMPLE.COM
# kinit -kt /etc/foreman-proxy/dns.keytab \ capsule/satellite.example.com@EXAMPLE.COMCopy to Clipboard Copied! Toggle word wrap Toggle overflow
IdM Web UI での DNS ゾーンの設定
管理するゾーンを作成して、設定します。
- Network Services > DNS > DNS Zones に移動します。
-
Add を選択し、ゾーン名を入力します。この例では、
example.com です。 - Add and Edit をクリックします。
[設定] タブの [バインド更新ポリシー] ボックスで、セミコロンで区切られたリストに次のエントリーを追加します。
grant capsule\047satellite.example.com@EXAMPLE.COM wildcard * ANY;
grant capsule\047satellite.example.com@EXAMPLE.COM wildcard * ANY;Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 動的更新 が True に設定されていることを確認します。
- Allow PTR sync を有効にします。
- 変更を保存するには、[保存] を選択します。
逆引きゾーンを作成、設定します。
- Network Services > DNS > DNS Zones に移動します。
- Add を選択します。
- Reverse zone IP network を選択して、CIDR 形式でネットワークアドレスを追加し、逆引き参照を有効にします。
- Add and Edit をクリックします。
[設定] タブの [バインド更新ポリシー] ボックスで、セミコロンで区切られたリストに次のエントリーを追加します。
grant capsule\047satellite.example.com@EXAMPLE.COM wildcard * ANY;
grant capsule\047satellite.example.com@EXAMPLE.COM wildcard * ANY;Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 動的更新 が True に設定されていることを確認します。
- 変更を保存するには、[保存] を選択します。
ドメインの DNS サービスを管理する Satellite または Capsule Server の設定
Satellite Server のベースシステムでは、以下を実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Capsule Server のベースシステムでは、以下を実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Satellite または Capsule のプロキシーサービスを再起動します。
systemctl restart foreman-proxy
# systemctl restart foreman-proxy
Satellite Web UI での設定更新
インストールスクリプトを実行して Capsule に変更を加えた後に、Satellite が該当する各 Capsule の設定をスキャンするようにします。
- Infrastructure > Capsules に移動します。
- 更新する各 Capsule について、アクション ドロップダウンメニューから 更新を 選択します。
ドメインを設定します。
- インフラストラクチャー > ドメイン に移動し、ドメイン名を選択します。
- Domain タブで、DNS Capsule が、サブネットが接続されている Capsule に設定されていることを確認します。
サブネットを設定します。
- [インフラストラクチャー] > [サブネット] に移動し、サブネット名を選択します。
- [サブネット] タブで、IPAM を[なし] に設定します。
- [ドメイン] タブで、IdM サーバーによって管理されるドメインが選択されていることを確認します。
- Capsules タブで、Reverse DNS Capsule が サブネットが接続されている Capsule に設定されていることを確認します。
- Submit をクリックして変更を保存します。
4.5.2. TSIG 認証を使用した動的 DNS 更新の設定 リンクのコピーリンクがクリップボードにコピーされました!
この例では、Satellite Server の設定は以下のようになります。
| IP アドレス |
|
| ホスト名 |
|
IdM サーバーの設定は以下のようになります。
| ホスト名 |
|
| IP アドレス |
|
| ドメイン名 |
|
作業開始前の準備
- IdM サーバーがデプロイされ、ホストベースのファイアウォールが正しく設定されていることを確認します。詳細はLinux ドメイン ID、認証、およびポリシーガイドの ポート要件 を参照してください。
-
IdM サーバー上で
rootユーザー特権を取得します。 - Satellite または外部 Capsule がドメインの DNS を管理していることを確認します。
- Satellite または外部 Capsule が正常に機能していることを確認します。
- 新しくインストールしたシステムの場合は、まずこのガイドのインストール手順を完了してください。特に、DNS と DHCP の設定が完了している必要があります。
- 変更を元に戻す必要がある場合に備えて、応答ファイルのバックアップを作成してください。詳細は、インストールオプションの指定を 参照してください。
IdM サーバーの DNS ゾーンに対する外部更新の有効化
IdM サーバーで、
/etc/named.confファイルの先頭に次の行を追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 変更を有効にするには、
namedを再ロードします。systemctl reload named
# systemctl reload namedCopy to Clipboard Copied! Toggle word wrap Toggle overflow IdM Web UI で、[ネットワークサービス] > [DNS] > [DNS ゾーン] に移動します。ゾーンの名前を選択します。[設定] タブで次の操作を行います。
バインド更新ポリシーボックスに次の内容を追加します。grant "rndc-key" zonesub ANY;
grant "rndc-key" zonesub ANY;Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 動的更新 が True に設定されていることを確認します。
- Update をクリックして変更を保存します。
次のように
、/etc/rndc.key ファイルを IdM サーバーから Satellite のベースシステムにコピーします。scp /etc/rndc.key root@satellite.example.com:/etc/rndc.key
# scp /etc/rndc.key root@satellite.example.com:/etc/rndc.keyCopy to Clipboard Copied! Toggle word wrap Toggle overflow 所有者、パーミッション、SELinux コンテキストが正しいことを確認します。
restorecon -v /etc/rndc.key chown -v root:named /etc/rndc.key chmod -v 640 /etc/rndc.key
# restorecon -v /etc/rndc.key # chown -v root:named /etc/rndc.key # chmod -v 640 /etc/rndc.keyCopy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite Server で以下のようにインストールスクリプトを実行し、外部 DNS サーバーを使用します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
IdM サーバーの DNS ゾーンに対する外部更新のテスト
nsupdateを使用してテストするためにバインド -utilsをインストールします。yum install bind-utils
# yum install bind-utilsCopy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite Server の
/etc/rndc.keyファイル内のキーが IdM サーバーで使用されているキーと同じであることを確認します。key "rndc-key" { algorithm hmac-md5; secret "secret-key=="; };key "rndc-key" { algorithm hmac-md5; secret "secret-key=="; };Copy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite Server で、ホストのテスト DNS エントリーを作成します。(例:
192.168.25.1の IdM サーバーに、192.168.25.20の A レコードを指定したtest.example.comホストなど)echo -e "server 192.168.25.1\n \ update add test.example.com 3600 IN A 192.168.25.20\n \ send\n" | nsupdate -k /etc/rndc.key
# echo -e "server 192.168.25.1\n \ update add test.example.com 3600 IN A 192.168.25.20\n \ send\n" | nsupdate -k /etc/rndc.keyCopy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite Server で、DNS エントリーをテストします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - IdM Web UI でエントリーを表示するには、[ネットワークサービス] > [DNS] > [DNS ゾーン] に移動します。ゾーンの名前を選択し、名前でホストを検索します。
正常に解決されたら、テスト DNS エントリーを削除します。
echo -e "server 192.168.25.1\n \ update delete test.example.com 3600 IN A 192.168.25.20\n \ send\n" | nsupdate -k /etc/rndc.key
# echo -e "server 192.168.25.1\n \ update delete test.example.com 3600 IN A 192.168.25.20\n \ send\n" | nsupdate -k /etc/rndc.keyCopy to Clipboard Copied! Toggle word wrap Toggle overflow DNS エントリーが削除されたことを確認します。
nslookup test.example.com 192.168.25.1
# nslookup test.example.com 192.168.25.1Copy to Clipboard Copied! Toggle word wrap Toggle overflow 上記の
nslookupコマンドは、レコードが正常に削除された場合は失敗し、SERVFAIL エラーメッセージを出力します。
4.5.3. 内部 DNS サービス使用への復元 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server と Capsule Server を DNS プロバイダーとして使用するように戻すには、以下の手順に従います。
ドメインの DNS を管理する Satellite または Capsule Server
外部 DNS への変更前に応答ファイルをバックアップした場合は、応答ファイルを復元して、インストールスクリプトを実行します。
satellite-installer
# satellite-installerCopy to Clipboard Copied! Toggle word wrap Toggle overflow 応答ファイルのバックアップがない場合は、現行の応答ファイルでバックアップを作成し、以下にあるように Satellite および Capsules でインストールスクリプトを実行します。
応答ファイルの詳細は、インストールオプションの指定を 参照してください。
応答ファイルを使用せずに Satellite または Capsule を DNS サーバーとして設定
詳細は 、Capsule Server での DNS、DHCP、および TFTP の設定を 参照してください。
Satellite Web UI での設定更新
インストールスクリプトを実行して Capsule に変更を加えた後に、Satellite が該当する各 Capsule の設定をスキャンするようにします。
- Infrastructure > Capsules に移動します。
- 更新する各 Capsule について、アクション ドロップダウンメニューから 更新を 選択します。
ドメインを設定します。
- インフラストラクチャー > ドメイン に移動し、ドメイン名を選択します。
- Domain タブで、DNS Capsule が、サブネットが接続されている Capsule に設定されていることを確認します。
サブネットを設定します。
- [インフラストラクチャー] > [サブネット] に移動し、サブネット名を選択します。
- [サブネット] タブで、IPAM をDHCP または 内部 DB に設定します。
- ドメイン タブで、Satellite または Capsule によって管理されるドメインが選択されていることを確認します。
- Capsules タブで、Reverse DNS Capsule が サブネットが接続されている Capsule に設定されていることを確認します。
- Submit をクリックして変更を保存します。
第5章 Satellite Server のアンインストール リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server または Capsule Server は、不要になったらアンインストールできます。
Satellite Server をアンインストールすると、ターゲットシステムで使用されているすべてのアプリケーションが消去されます。Satellite Server 以外の目的でアプリケーションまたはアプリケーションデータを使用する場合は、削除プロセスの前に情報をバックアップする必要があります。
作業開始前の準備
katello-remove スクリプトは 2 つの警告を発行し、システム内のすべてのパッケージと設定ファイルを削除する前に確認を求めます。
このスクリプトは、以下の重要なパッケージを含む、多くのパッケージおよび設定ファイルを削除します。
- httpd (apache)
- mongodb
- tomcat
- puppet
- Ruby
- rubygems
- すべての Katello および Foreman パッケージ
Satellite Server のアンインストール
Satellite Server をアンインストールします。
katello-remove
# katello-removeCopy to Clipboard Copied! Toggle word wrap Toggle overflow
第6章 Amazon Web Services 上での Red Hat Satellite の実行 リンクのコピーリンクがクリップボードにコピーされました!
本章では、Red Hat Satellite Server および Capsules を Amazon Web Services (AWS) Elastic Compute Cloud (Amazon EC2) にインストールする準備について説明します。
デプロイメントシナリオ セクションを使用して、AWS での Satellite および Capsule のインストールに使用できるさまざまなアーキテクチャー設定を理解します。
前提条件 セクションを使用して、Red Hat Satellite のインストール用に Red Hat および Amazon Web リソースを準備します。
サブスクリプション
すべてのサブスクリプションがパブリッククラウド環境で実行できるわけではありません。サブスクリプションの資格の詳細は、クラウドアクセスページ を参照してください。新たな組織を作成して、その組織に新たなマニフェストをインポートすることもできます。詳細は、コンテンツ管理ガイド の 組織の作成を 参照してください。
6.1. ユースケースにおける留意点 リンクのコピーリンクがクリップボードにコピーされました!
Amazon Web Services はイメージのみのサービスであるため、Satellite のユースケースによっては、Amazon Web Services 環境では動作しない、または追加設定が必要な場合があります。Amazon Web Services で Satellite を使用する予定がある場合は、使用するユースケースのシナリオが Amazon Web Services 環境で利用可能であることを確認してください。
6.1.1. 機能するユースケース リンクのコピーリンクがクリップボードにコピーされました!
以下の Red Hat Satellite ユースケースは、AWS で機能することがわかっています。
マルチホームの Satellite および Capsule
Satellite で異なるホスト名を持つ複数のインターフェイスを使用する場合は、Satellite Server および Satellite Capsule Server CA 証明書の追加設定を実行する必要があります。この設定で Satellite をデプロイする場合は、Red Hat にお問い合わせください。
Satellite Server または Capsule Server の内部および外部 DNS ホスト名が異り、かつ Satellite Server と Capsule Server を配置するロケーション間にサイト間 VPN 接続がない場合は、この設定を実行する必要があります。
オンデマンドのコンテンツソース
オンデマンド ダウンロードポリシーを使用すると、Satellite を実行する Red Hat Enterprise Linux サーバーのストレージフットプリントを削減できます。ダウンロードポリシーを On Demand に設定すると、コンテンツホストが要求したときにコンテンツが Satellite Server または Capsule Server に同期されます。
詳細は、コンテンツ管理ガイド の Red Hat コンテンツのインポートを 参照してください。
6.1.2. 機能しないユースケース リンクのコピーリンクがクリップボードにコピーされました!
AWS では、DHCP を管理できません。このため、Satellite Server のキックスタートおよび PXE プロビジョニングモデルのほとんどは使用できなくなります。ここでは、以下の点を説明します。
- PXE プロビジョニング
- 検出および検出ルール
ISO プロビジョニングメソッド
- PXE-Less Discovery (iPXE) (PXE を使用しない検出)
- Per-host ISO
- Generic ISO
- Full-host ISO
6.2. デプロイメントシナリオ リンクのコピーリンクがクリップボードにコピーされました!
Amazon Web Services では、以下の 3 つの Red Hat Satellite デプロイメントシナリオがあります。
- 単一領域設定
- オンプレミスと AWS リージョンの接続
- 異なるリージョンの接続
シナリオ 1: 単一領域設定
Amazon Web Services における最もシンプルな Satellite Server 設定は、Satellite Server とコンテンツホストの両方が同一領域内でかつ仮想プライベートクラウド (VPC) 内にあるという設定です。
別のアベイラビリティーゾーンを使用することもできます。
シナリオ 2: オンプレミスと AWS リージョンの接続
この場合は、オンプレミスのロケーションと Capsule を設置する AWS 領域の間に VPN 接続を作成します。
Capsule Server を実行するインスタンスを登録すれば、Satellite Server の外部のホスト名を使用することも可能です。
オプション 1: AWS リージョンとオンプレミスデータセンターをつなぐサイト間 VPN 接続
オプション 2: 外部 DNS ホスト名を使用した直接接続
シナリオ 3: 異なるリージョンの接続
この場合は、別の領域をつなぐサイト間 VPN 接続を作成し、Capsule Server を実行するインスタンスを Satellite Server に登録する際に、内部 DNS ホスト名を使用できるようにします。
サイト間 VPN 接続を確立しない場合には、Capsule Server を実行するインスタンスを Satellite Server に登録する際に、外部 DNS ホスト名を使用します。
ほとんどのパブリッククラウドプロバイダーでは、リージョンへのデータ転送や、単一リージョン内のアベイラビリティーゾーン間でのテータ転送には課金されませんが、リージョンからインターネットへのデータ転送には課金されます。
オプション 1: AWS 領域間をつなぐサイト間 VPN 接続
オプション 2: 外部 DNS ホスト名を使用した直接接続
6.3. 前提条件 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Satellite および Capsule のインストールと登録前には、Amazon Web Services (AWS) でアカウントを設定し、AWS 上で Red Hat Enterprise Linux インスタンスを作成して起動する必要がある。
6.3.1. Amazon Web Service の前提条件 リンクのコピーリンクがクリップボードにコピーされました!
このガイドを使用するには、Amazon Web Services の次の側面に関する実践的な知識が必要です。
- AWS での Red Hat Enterprise Linux イメージの作成とアクセス。
- AWS セキュリティーにおけるネットワークアクセスの編集。
- EC2 インスタンスの作成と EBS ボリュームの作成。
- インスタンスの開始。
- AWS での仮想マシンのインポートおよびエクスポート。
- AWS Direct Connect の使用。
AWS 環境に Satellite と Capsule をインストールするには、AWS の設定が以下の要件を満たしていることを確認する必要があります。「システム要件」Satellite および Capsule 用。
Amazon Web Services と関連用語の詳細は、Amazon Elastic Compute Cloud ドキュメント を参照してください。
Amazon Web Services Direct Connect の詳細は、What is AWS Direct Connect? を参照してください。
6.3.2. Red Hat Cloud の前提条件 リンクのコピーリンクがクリップボードにコピーされました!
このガイドを使用するには、次の手順を完了する必要があります。
- Red Hat Cloud Access での登録。
- 使用する Red Hat サブスクリプションの移行。
- AWS インスタンスを作成し、Red Hat Enterprise Linux 仮想マシンをそのインスタンスにデプロイすること。
- お使いのサブスクリプションが Red Hat Cloud に移行可能であることを確認。詳細は Red Hat Cloud Access プログラムの詳細 を参照してください。
Red Hat Enterprise Linux の AWS でのデプロイに関する情報は、How to Locate Red Hat Cloud Access Gold Images on AWS EC2 を参照してください。
6.3.3. Red Hat Satellite 固有の前提条件 リンクのコピーリンクがクリップボードにコピーされました!
- Amazon EC2 インスタンスタイプがシステム要件とストレージ要件を満たしているか、それを超えていることを確認します。1章インストールのための環境準備。最高のパフォーマンスを得るには、AWS Storage Optimized インスタンスを使用してください。
- 使用1章インストールのための環境準備AWS EBS ボリュームに適切なストレージを理解して割り当てます。
- ブートボリュームとは別の EBS ボリューム上に同期コンテンツを保存する。
- 同期した EBS ボリュームをオペレーティングシステム内で個別にマウントする。
- オプションで、mongodb ディレクトリーなどの他のデータを別個の EBS ボリュームに保存する。
- Satellite Server と Capsule Server が外部 DNS ホスト名を使用して通信するには、インスタンスに関連付けられた AWS セキュリティーグループで、通信用に必要なポートを開く。
6.3.4. Red Hat Satellite のインストール準備 リンクのコピーリンクがクリップボードにコピーされました!
お使いの AWS 環境で、以下の手順を実行します。
- Red Hat Enterprise Linux AMI の EC2 インスタンスを起動します。
- 新規作成のインスタンスに接続します。
Red Hat Gold Image を使用している場合は、以下のように RHUI クライアントを削除して、product-id.conf の enabled パラメーターを 1 に設定します。
6.4. AWS での Satellite Server のインストール リンクのコピーリンクがクリップボードにコピーされました!
お使いの AWS 環境で、以下の手順を実行します。
- 新規インスタンスに接続します。
- Satellite Server をインストールする には、Satellite Server のインストールを使用します。
6.5. AWS での Capsule のインストール リンクのコピーリンクがクリップボードにコピーされました!
お使いの AWS 環境で、以下の手順を実行します。
- 新規インスタンスに接続します。
- Capsule Server をインストールします。詳細は、Capsule Server のインストールを 参照してください。
6.6. ブートストラップスクリプトを使ったホストの Satellite への登録 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server および Capsule Server をインストールしたら、ブートストラップスクリプトを使用して、EC2 インスタンス上のコンテンツホストを Satellite に登録する必要があります。
ブートストラップスクリプトの使用に関する詳細は、ユーザーガイド の ブートストラップスクリプトを使用した Satellite へのホストの登録を 参照してください。
Katello エージェントをインストールします。詳細は、katello エージェントのインストールを 参照してください。
付録A 大規模デプロイメントに関する考慮事項 リンクのコピーリンクがクリップボードにコピーされました!
Apache 向けファイル記述子の最大数の増加
登録されているコンテンツホストが 800 を超えると、Apache がいくつかのシステムレベルの制限に達し、新しいコンテンツホストの登録が失敗する可能性があります。これを回避するには、多数のコンテンツホストを展開する前に、ファイル記述子の制限を増やす必要があります。
/etc/systemd/system/httpd.service.d/limits.confファイルを作成し、次のテキストを挿入します。[Service] LimitNOFILE=65536
[Service] LimitNOFILE=65536Copy to Clipboard Copied! Toggle word wrap Toggle overflow 変更をユニットに適用します。
systemctl daemon-reload
# systemctl daemon-reloadCopy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite のサービスを再起動します。
foreman-maintain service restart
# foreman-maintain service restartCopy to Clipboard Copied! Toggle word wrap Toggle overflow
qpid 向けファイル記述子の最大数の増加
1100 台を超えるコンテンツホストで goferd が実行され、エラータ更新が実行されると、qpid がシステムレベルの制限に達し、登録が失敗します。これを回避するには、多数のコンテンツホストを展開する前に、ファイル記述子の制限を増やす必要があります。
qpid 向けファイル記述子の最大数の増加
/etc/systemd/system/qpidd.service.d/limits.confファイルを作成し、次のテキストを挿入します。[Service] LimitNOFILE=65536
[Service] LimitNOFILE=65536Copy to Clipboard Copied! Toggle word wrap Toggle overflow 変更をユニットに適用します。
systemctl daemon-reload systemctl restart qpidd.service
# systemctl daemon-reload # systemctl restart qpidd.serviceCopy to Clipboard Copied! Toggle word wrap Toggle overflow
共有バッファーと作業メモリーの増加
shared_buffer と work_mem を それぞれ 256M と 4M に増やすことができます。
Red Hat Enterprise Linux 7 では、
/var/lib/pgsql/data/postgresql.conf ファイルを作成し、次のテキストを挿入します。work_mem = 4MB shared_buffers = 256MB
work_mem = 4MB shared_buffers = 256MBCopy to Clipboard Copied! Toggle word wrap Toggle overflow postgresql サービスを再起動します。
systemctl restart postgresql
# systemctl restart postgresqlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
同時コンテンツホスト登録の増加
システムレベルの制限への到達を回避するために、最大 250 の同時コンテンツホストを処理するようグローバルパッセンジャーキュー制限を増加できます。
グローバルパッセンジャーキューの上限を増やすには、以下の手順を実行します。
最大パッセンジャープールサイズを、Satellite Server で利用可能な物理 CPU コアの 1.5 倍に調整します。
たとえば、16 個のコアを持つ Satellite Server がある場合、最大乗客プールサイズは 24 になります。この番号は例として参照されており、ご使用の環境に該当する番号を使用する必要があります。
/etc/httpd/conf.d/passenger.confファイルを編集し、IfModule スタンザを次のテキストと一致するように更新します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow Foreman Passenger アプリケーション設定ファイル
/etc/httpd/conf.d/05-foreman-ssl.confを編集し、PassengerAppRoot で始まるスタンザを次のテキストと一致するように更新します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow Puppet Passenger アプリケーション設定ファイル
/etc/httpd/conf.d/25-puppet.confを編集し、仮想ホスト定義の末尾に次のテキストを追加します。PassengerMinInstances 6 PassengerStartTimeout 90 PassengerMaxPreloaderIdleTime 0 PassengerMaxRequests 10000 PassengerPreStart https://example.com:8140
PassengerMinInstances 6 PassengerStartTimeout 90 PassengerMaxPreloaderIdleTime 0 PassengerMaxRequests 10000 PassengerPreStart https://example.com:8140Copy to Clipboard Copied! Toggle word wrap Toggle overflow /var/lib/pgsql/data/postgresql.confファイルで最大接続数を変更します。max_connections = 500
max_connections = 500Copy to Clipboard Copied! Toggle word wrap Toggle overflow postgresql サービスを再起動します。
systemctl restart postgresql
# systemctl restart postgresqlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
qdrouterd 向けオープンファイルの最大数の増加
登録されているコンテンツホストが 1,000 を超えると、qdrouterd は 開いているファイルのデフォルトの最大数に達する可能性があります。これを回避するには、Satellite Server およびすべての外部 Capsule Server で開いているファイルの最大数を増やします。
以下の式を使用して、オープンファイルの必要な最大数を計算します。
(3 x number of content hosts) + 100
(3 x number of content hosts) + 100Copy to Clipboard Copied! Toggle word wrap Toggle overflow たとえば、1020 のコンテンツホストの場合、新しい最大数は 3160 ((3 x 1020) + 100) に設定します。
ファイル
/etc/systemd/system/qdrouterd.service.d/limits.confを作成し、次のテキストを追加します。[Service] LimitNOFILE=maximum_number_of_files
[Service] LimitNOFILE=maximum_number_of_filesCopy to Clipboard Copied! Toggle word wrap Toggle overflow 変更をユニットに適用します。
systemctl daemon-reload
# systemctl daemon-reloadCopy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite のサービスを再起動します。
foreman-maintain service restart
# foreman-maintain service restartCopy to Clipboard Copied! Toggle word wrap Toggle overflow
ホスト登録の遅れを減少
Satellite と各登録ホスト間の通信は、証明書の使用によって保護されます。ホストが登録されると、Satellite はアイデンティティー証明書と Puppet 証明書の 2 つの証明書を作成します。各証明書の作成に使用されるアルゴリズムには、Red Hat Enterprise Linux カーネルからのランダムデータが必要です。ホストの登録時に十分なエントロピーが利用できない場合は、適切なレベルのエントロピーが利用できるようになるまで遅延が発生します。10,000 台を超えるホストがある非常に大規模な環境では、エントロピー不足によりホスト登録の速度が低下する可能性があります。Linux カーネルへのエントロピーの可用性を向上させ、Satellite のパフォーマンスに対するリスクを軽減するために、いくつかの方法を使用できます。
デフォルトでは、Linux カーネルは乱数のソースとして /dev/random デバイスを使用します。これはブロッキングデバイスであり、適切にランダムな出力を生成するためのエントロピーの量が不十分であると判断された場合、数字の供給を停止します。この待機時間により、ホストの登録が遅れることになります。この問題を解決するには、非ブロッキングデバイスである /dev/urandom デバイスを使用します。
一部のハードウェアサーバーには、ハードウェア乱数ジェネレーターを含むプロセッサーが搭載されています。Red Hat Enterprise Linux カーネルでサポートされているものについては、それを乱数のソースとして使用できます。詳細は、ハードウェアベンダーのドキュメントを参照してください。
Satellite が仮想マシン上でホストされている場合、一部のハイパーバイザーでは、ハードウェアサーバーの乱数ジェネレーターを、ホストする仮想マシンで使用できるようにすることに注意してください。Red Hat Virtualization には、KVM 仮想マシンに Red Hat Virtualization Host からのエントロピーへのアクセスを提供する virtio RNG (乱数ジェネレーター) デバイスが搭載されています。Red Hat Enterprise Linux 7.0 を実行しているゲストでは、rngd をインストールして設定する必要があります。Red Hat Enterprise Linux 7.1 以降を実行しているゲストでは、ゲストカーネルは必要に応じてホストからエントロピーを取得します。ホストの乱数ジェネレータをゲストが共有する場合は、ハードウェア乱数ジェネレータの使用を推奨します。
ゲストの乱数ジェネレーターの詳細は、Red Hat Enterprise Linux 7 仮想化デプロイメントおよび管理ガイド の 乱数ジェネレーターデバイスを 参照してください。その他のハイパーバイザーについては、ベンダーのドキュメントを参照してください。
乱数ジェネレーターデーモン rngd の詳細は、Red Hat Enterprise Linux 7 セキュリティーガイド の 乱数ジェネレーターの使用を 参照してください。
付録B Red Hat Satellite へのカスタム設定の適用 リンクのコピーリンクがクリップボードにコピーされました!
satellite-installer を使用して初めて Satellite をインストールし、設定する場合には、--foreman-proxy-dns-managed=false と --foreman-proxy-dhcp-managed=false のインストーラーフラグを使用して、DNS および DHCP 設定ファイルが Puppet で管理されないように指定してください。これらのフラグがインストーラーの初回実行時に指定されていない場合には、アップグレードの目的で再実行する場合など、インストーラーを再実行すると、手動で変更した内容がすべて上書きされます。変更が上書きされた場合には、復元の手順を実行して手動の変更を復元する必要があります。詳細は、接続されたネットワークからの Satellite Server のインストール の Puppet 実行によって上書きされた手動変更を復元する方法を 参照してください。
カスタム設定に利用可能なすべてのインストーラーフラグを表示するには、satellite-installer --scenario satellite --full-help を実行します。Puppet クラスには、Satellite インストーラーに公開されていないものもあります。これらのクラスを手動で管理して、インストーラーが値を上書きしないようにするには、設定ファイル /etc/foreman-installer/custom-hiera.yaml にエントリーを追加して設定値を指定します。この設定ファイルは YAML 形式で、<puppet class>::<parameter name>: <value> という形式を 1 行あたり 1 エントリーで記入します。このファイルで指定した設定値は、インストーラーを再起動しても維持されます。
一般的な例を示します。
Apache で ServerTokens ディレクティブが製品名のみを返すように設定するには、以下のようにします。
apache::server_tokens: Prod
apache::server_tokens: ProdCopy to Clipboard Copied! Toggle word wrap Toggle overflow Apache サーバー署名をオフにするには、以下のようにします。
apache::server_signature: Off
apache::server_signature: OffCopy to Clipboard Copied! Toggle word wrap Toggle overflow Pulp で pulp ワーカーの数を設定するには、以下のようにします。
pulp::num_workers: 8
pulp::num_workers: 8Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Satellite インストーラー用の Puppet モジュールは、/usr/share/foreman-installer/modules に保存されています。クラス、パラメーター、および値を調べるには、.pp ファイル (例: moduleName/manifests/example.pp) を確認してください。別の方法では、grep コマンドでキーワード検索を実行します。
値の設定によっては、Red Hat Satellite のパフォーマンスや機能に影響が出る意図しない結果がもたらされる場合があります。設定を適用する前に変更の影響を考慮して、実稼働以外の環境で最初に変更をテストしてください。実稼働以外の Satellite 環境がない場合は、Satellite インストーラーを --noop と --verbose のオプションを追加して実行します。変更によって問題が発生する場合は、該当箇所を custom-hiera.yaml から削除し、Satellite インストーラーを再実行します。特定の値を変更することが安全かどうかを確認する場合は、Red Hat サポートにお問い合わせください。
B.1. Puppet 実行で上書きされた手動変更の復元 リンクのコピーリンクがクリップボードにコピーされました!
Puppet 実行で手動による設定が上書きされた場合でも、ファイルを元の状態に戻すことができます。以下の例では、Puppet 実行で上書きされた DHCP 設定ファイルを復元します。
復元するファイルをコピーします。こうすることで、アップグレードに必要な変更があるか、ファイル間で比較できます。これは DNS や DHCP サービスでは一般的ではありません。
cp /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.backup
# cp /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.backupCopy to Clipboard Copied! Toggle word wrap Toggle overflow ログファイルを確認して、上書きされたファイルの md5sum をメモします。以下に例を示します。
journalctl -xe
# journalctl -xe ... /Stage[main]/Dhcp/File[/etc/dhcp/dhcpd.conf]: Filebucketed /etc/dhcp/dhcpd.conf to puppet with sum 622d9820b8e764ab124367c68f5fa3a1 ...Copy to Clipboard Copied! Toggle word wrap Toggle overflow 上書きされたファイルを復元します。
puppet filebucket restore --local --bucket \ /var/lib/puppet/clientbucket /etc/dhcp/dhcpd.conf \ 622d9820b8e764ab124367c68f5fa3a1
# puppet filebucket restore --local --bucket \ /var/lib/puppet/clientbucket /etc/dhcp/dhcpd.conf \ 622d9820b8e764ab124367c68f5fa3a1Copy to Clipboard Copied! Toggle word wrap Toggle overflow - バックアップしたファイルと復元されたファイルを比べます。復元されたファイルに、アップグレードに必要な変更を追加します。