9.3. プロビジョニング設定の設定
このセクションでは、プロビジョニング環境の要素を作成し、それらを設定する方法を示します。
9.3.1. ドメイン リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Satellite には、Red Hat Satellite Capsule Server DNS でドメイン名を割り当てる機能があります。これにより、ユーザーは特定のドメイン内のホストをグループ化し、名前を付ける手段が提供されます。
手順9.6 ドメインを作成するには、以下を実行します。
をクリックします。 - 新規ドメイン を ます。Domain タブで、以下の設定を指定します。
- Domain の Name を指定します。これは、必要な DNS ドメイン名です。
- Domain の Description を入力します。
- DNS で有効にされた Capsule Server を選択します。
- Parameters タブで、ドメインパラメーターを指定します。
- Locations タブで、ドメインのロケーションを選択します。
- 組織 タブで、ドメインの組織を選択します。重要ロケーションと組織はデバッグ作業に役立つため、これらが設定されていることを確認します。
- をクリックします。
9.3.2. サブネット リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Satellite には、システムのグループのネットワークを作成する機能があります。サブネットは、標準 IP アドレス設定を使用してネットワークを定義し、Red Hat Satellite Capsule Server の DHCP 機能を使用して、サブネット内のシステムに IP アドレスを割り当てます。
9.3.2.1. サブネットの作成 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下の手順は、サブネットを作成する方法を示しています。
手順9.7 サブネットを作成するには、以下を実行します。
- インフラストラクチャーサブネット を
ます。 - 新規サブネット を クリックし ます。サブネット タブで、以下の設定を指定します。
- サブネットの Name、Network address (IP アドレス)、および Network mask を指定します。これらの設定は必須です。
- 必要に応じて、ゲート ウェイアドレス、プライマリー DNS サーバー、セカンダリー DNS サーバー、および VLAN ID を指定します。ゲートウェイアドレスおよび DNS サーバーの設定は、オプションで、IPAM および Boot モードの DHCP (デフォルト)に設定されている場合のみであることに注意してください。これらのデフォルトモードを変更する場合は、ゲートウェイと DNS も指定する必要があります。IPAM モード(DHCP、Internal DB、または None)を選択し、IP 範囲の 開始 フィールドと 終了 フィールドで IP 割り当ての範囲 を定義することもできます。
- サブネットのデフォルトの ブートモード (DHCP または Static)を選択します。
- Domains タブで、サブネットの該当するドメインを選択します。
- Capsule タブ で、DHCP プロキシー、TFTP プロキシー、DNS プロキシー、および Discovery Proxy サービスのホストに使用する Capsule Server を選択します。
- Locations タブで、サブネットのロケーションを選択します。
- 組織 タブで、サブネットの組織を選択します。重要ロケーションと組織はデバッグ作業に役立つため、これらが設定されていることを確認します。
- をクリックします。
9.3.3. アーキテクチャー リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Satellite 内のアーキテクチャーはホストおよびオペレーティングシステムの論理グループを表します。アーキテクチャーは、ホストが Puppet に接続する際に Satellite によって自動的に作成されます。ただし、デフォルトのインストールには存在しないため、作成が必要です。
手順9.8 アーキテクチャーを作成するには、以下を実行します。
をクリックしてから、New Architecture をクリックします。 - アーキテクチャーの 名前 を指定します。
- このアーキテクチャーが 含まれるオペレーティングシステム を選択します。利用できる
オペレーティングシステム の下に割り当てることができます。 - をクリックします。
9.3.4. コンピュートリソース リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
コンピュートリソースは、仮想化およびクラウドプロバイダーからのハードウェア抽象化です。Satellite は、コンピュートリソースを使用して仮想マシンとコンテナーをプロビジョニングします。サポート対象のプライベートプロバイダーには、Red Hat Enterprise Virtualization、oVirt、OpenStack、VMware、Libvirt、および Docker が含まれます。サポートされるパブリッククラウドプロバイダーには、Amazon EC2、Google Compute Engine、Rackspace が含まれます。
手順9.9 コンピュートリソースを追加するには、以下を実行します。
- します。
- New Compute Resource をクリックします。Compute Resource タブで、以下の設定を指定します。
- コンピュートリソースの Name および Provider タイプを指定します。必要に応じて、Description を挿入します。
- 選択したプロバイダータイプに応じて、次のいくつかのフィールドで認証とデータセンターの詳細を要求します。各プロバイダータイプの詳細は、以下の表を参照してください。
Expand 表9.2 プロバイダーの設定 型説明RHEVRed Hat Enterprise Virtualization 環境に適しています。コンピュートリソースを抽象化するために、Manager API の URL 、 有効な ユーザー名と パスワード、およびシステム上の Datacenter が必要です。データセンターのロード をクリックして、ドロップダウンメニューに入力します。オプションで、Quota ID を指定し、X509 認証局 フィールドに 1 つ以上の認証局 を指定できます。LibvirtLibvirt ベースの環境に適しています。仮想マシンの URL が必要です。Display type を選択します。 をクリックして、仮想マシンが利用可能かどうかをテストします。Console passwords を選択して、ディスプレイ接続にランダムに生成されたパスワードを設定します。VMwareVMware ベースの環境に適しています。VCenter/Server のホスト名、有効な VMware ユーザー名 と パスワード、およびコンピュートリソースを抽象化するための Datacenter が必要です。データセンターのロード をクリックして、ドロップダウンメニューに入力します。証明書 Fingerprint を指定し、Console password を選択して、 表示接続でランダムに生成されたパスワードを設定できます。RHEL OpenStack PlatformOpenStack ベースの環境に適しています。コンピュートリソースを抽象化するには、OpenStack サーバーの URL、有効な OpenStack ユーザー名 と パスワード、および Tenant が必要です。テナントの読み込み をクリックしてドロップダウンメニューに入力します。RackspaceRackspace のパブリッククラウドアカウントに適しています。コンピュートリソースを抽象化するには、Rackspace API の URL、有効な Rackspace Username および API Key、および リージョン が必要です。 をクリックして、選択したリージョンへの接続が有効であることを確認します。EC2Amazon EC2 パブリッククラウドアカウントに適しています。有効な Amazon EC2 アカウントから 利用可能な アクセス キーとシークレットキー が必要です。リソースの抽象化のデータセンターとして機能する リージョン が必要です。 をクリックして、選択したドロップダウンメニューを入力します。GoogleGoogle Compute Engine のパブリッククラウドアカウントに適しています。Google プロジェクト ID (有効な クライアント電子メール、および p12 ファイルへの 証明書パス )が必要です。コンピュートリソースを抽象化する ゾーン を指定することもできます。 をクリックしてドロップダウンメニューに入力します。Dockerコンテナーレジストリーに適しています。内部または外部のコンピュートリソースの URL が必要です。必要に応じて、Username、Password、および contact Email を指定します。 をクリックして、接続が利用可能かどうかをテストします。
- ロケーション タブで、選択し たアイテム リストに追加するロケーションを選択します。
- 組織 タブで、選択し たアイテム 一覧に追加する組織を選択します。重要ロケーションと組織はデバッグ作業に役立つため、これらが設定されていることを確認します。
- をクリックします。
9.3.5. コンピュートリソースとしての Libvirt の設定 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Libvirt ハイパーバイザーが使用されるシステムで、以下のパッケージがインストールされていることを確認します。
# yum install qemu-kvm libvirt virt-manager
ハイパーバイザーマシンおよび Satellite Server が実行されているベースシステムで、ハイパーバイザーホストの FQDN が正常に解決されていることを確認します。
- Web UI ブラウザーが virt-manager とは別のシステムで実行されている場合は、手順9.11「Libvirt への SSH アクセスを設定するには、以下を実行します。」 に進みます。
- Web UI ブラウザーが virt-manager と同じシステムで実行されている場合は、以下の手順を実行して Libvirt コンピュートリソースを追加します。
手順9.10 Libvirt コンピュートリースを追加するには、以下を実行します。
- インフラストラクチャーコンピュートリソース に
。 - New Compute Resource をクリックします。Compute Resource タブで、以下の設定を指定します。
- Name を指定し、Provider ドロップダウンメニューから、コンピュートリソースのタイプとして Libvirt を選択します。必要に応じて、Description を挿入します。
- フィールドに、次のように文字列を入力します。
qemu:///system - ドロップダウンメニューから、 を選択します。
- このコンピューティングリソースが新しい Libvirt ゲストにのみ使用する場合は、オプションとして チェックボックスを選択します。このオプションは、以前に設定した Libvirt ゲストと組み合わせて使用することはできません。
- をクリックします。接続に成功すると、ボタンが緑色になります。
- をクリックして設定を保存します。
- タブを選択します。以前に設定された Libvirt ゲストが表示されます。
手順9.11 Libvirt への SSH アクセスを設定するには、以下を実行します。
他に指定がない限り、Red Hat Satellite が実行されているシステムで以下の手順を実行します。
foremanユーザーの SSH ファイルのパーミッションと SELinux コンテキストが正しいことを確認します。# ls -Zd /usr/share/foreman/.ssh drwx------. foreman foreman system_u:object_r:ssh_home_t:s0 /usr/share/foreman/.sshforemanユーザーの SSH 鍵を作成します。# su - foreman -s /bin/bash -bash-4.2$ ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/usr/share/foreman/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /usr/share/foreman/.ssh/id_rsa. Your public key has been saved in /usr/share/foreman/.ssh/id_rsa.pub. The key fingerprint is: 07:47:a9:23:d2:fe:2f:07:fb:55:75:46:3e:8e:6e:69 foreman@satellite.example.com The key's randomart image is: +--[ RSA 2048]----+ | .. .| | .. o | | . ... .=| | . o oo ooo| | o .S.. ... | | . .. ... | | . o .E | | + ..o | | =o | +-----------------+SSH公開鍵をリモートハイパーバイザーシステムにコピーします。たとえば、Libvirt ホストが kvm.example.com の場合は、以下のコマンドを実行します。-bash-4.2$ ssh-copy-id root@kvm.example.com The authenticity of host 'kvm.example.com (192.168.1.2)' can't be established. ECDSA key fingerprint is 78:79:41:d0:b8:40:d5:4a:6d:7f:22:03:bd:cd:a0:dd. Are you sure you want to continue connecting (yes/no)? yes /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys foreman@192.168.1.2's password: Number of key(s) added: 1 Now try logging into the machine, with: "ssh 'root@kvm.example.com'" and check to make sure that only the key(s) you wanted were added.- リモートシステムに
SSH接続して、パスワードプロンプトが表示されていないことを確認します。-bash-4.2$ ssh root@kvm.example.comパスワードの入力を求められること はありません。公開鍵は、リモートシステムの.ssh/authorized_keysファイルにあります。正常にログインしてキーを確認した後、終了します。-bash-4.2$ exit - Web UI で
をクリックします。 - 名前 フィールドに 適切な名前を入力します。
- メニューから を選択します。
- フィールドに、次の形式で文字列を入力します。Where kvm.example.com は、Libvirt ホストの FQDN です。
qemu+ssh://root@kvm.example.com/system - ドロップダウンメニューから、 を選択します。
- このコンピューティングリソースが新しい Libvirt ゲストにのみ使用する場合は、オプションとして チェックボックスを選択します。このオプションは、以前に設定した Libvirt ゲストと組み合わせて使用することはできません。
- をクリックします。接続に成功すると、ボタンが緑色になります。
- をクリックして設定を保存します。
- タブを選択します。以前に設定された Libvirt ゲストが表示されます。
手順9.12 noVNC コンソールを設定するには、以下を実行します。
前提条件:
- SSH キーは、Satellite Server のベースシステムで
foremanユーザー用に設定する必要があります(前述のとおり)。 - 既存の Libvirt ゲストは、表示タイプとして VNC サーバーを使用するように、表示タイプとしてポート設定を設定し、VNC パスワードを選択しないように設定する必要があります。
- ハイパーバイザーホストシステムで、
VNCサービスがポート5900 から 5930 まで許可されるようにファイアウォールを設定します。- Red Hat Enterprise Linux 6 の場合:
# iptables -A INPUT -p tcp --dport 5900:5930 -j ACCEPT # service iptables save - Red Hat Enterprise Linux 7 の場合
# firewall-cmd --add-port=5900-5930/tcp # firewall-cmd --add-port=5900-5930/tcp --permanent
- Web UI に使用されるブラウザーで、以下のように Satellite Server 証明書を信頼します。
- Satellite Server のパブリックダウンロードページ(例:
https://satellite.example.com/pub/)に移動し、証明書ファイルkatello-server-ca.crtをクリックします。 - Web サイトを特定するために証明書を信頼する選択をします。
- Web UI に使用するブラウザーで、HTTP 厳密なトランスポートセキュリティー (HSTS)を無効にします。HSTS は RFC 6797 で説明されています。たとえば、Firefox で、ブラウザーアドレスバーに
About:Configと入力し、以下のブール値をTrueに設定します。network.websocket.allowInsecureFromHTTPS - Web UI のブラウザーで FQDN を使用していることを確認します。URL のドメイン名が証明書の CN 値に一致しない場合、noVNC は機能しません。これは FQDN と同じである必要があります。以下のコマンドを使用して CN 値を確認します。
# openssl x509 -text -noout -in /etc/pki/katello/certs/katello-apache.crt | grep CN Issuer: C=US, ST=North Carolina, L=Raleigh, O=Katello, OU=SomeOrgUnit, CN=satellite.example.com Subject: C=US, ST=North Carolina, O=Katello, OU=SomeOrgUnit, CN=satellite.example.com output truncated - します。Libvirt リソースの名前を選択します。 で、Libvirt ゲストの名前を選択します。マシンの電源がオンになっていることを確認してから、。コンソールウィンドウは noVNC ハンドシェイクが完了すると表示されます。
9.3.6. ハードウェアモデル リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
ハードウェアモデルは、Scalable Processor Architecture (SPARC) ベースのシステムに無人インストールを実行する際に役立ちます。
手順9.13 ハードウェアモデルを作成するには、以下を実行します。
をクリックします。 - をクリックします。
- ハードウェアモデルの Name を指定します。
- SPARC ビルドの場合は、CPU ハードウェアモデル と Vendor クラス を挿入します。他のアーキテクチャーでは、これらのフィールドに値は必要ありません。
- 情報 フィールドにハードウェアモデルの詳細を入力します。
- をクリックします。
9.3.7. インストールメディア リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Satellite は、インストールメディア(ISO イメージ)をキックスタートツリーおよび新規ホストインストールのコンテンツとして使用します。
手順9.14 インストールメディアを追加するには、以下を実行します。
をクリックします。 - New Medium をクリックします。[ 中 ] タブで、次の設定を指定します。
- インストールメディアの 名前 を入力します。この設定は必須です。
- インストールメディア へ のパスを入力します。オプションは、URL または有効な NFS サーバーのいずれかです。この設定は必須です。
- インストールメディアのタイプを定義する オペレーティングシステムファミリー を選択します。
- ロケーション タブで、選択し たアイテム リストに追加するロケーションを選択します。
- 組織 タブで、選択し たアイテム 一覧に追加する組織を選択します。重要ロケーションと組織はデバッグ作業に役立つため、これらが設定されていることを確認します。
- をクリックします。
9.3.8. パーティションテーブル リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
パーティションテーブルは、システムのプロビジョニング時に新規インストール用のパーティションとファイルシステムのレイアウトを定義します。Satellite ユーザーは、ホストのディスクレイアウトをパーティションの明示的なシーケンスとして指定するか、動的ディスクレイアウトスクリプトを使用します。
手順9.15 パーティションテーブルを作成するには、以下を実行します。
をクリックします。 - をクリックします。
- パーティションテーブルの 名前 を入力してください。
- 必要に応じて、Default を選択します。このチェックボックスは、パーティションが新しい組織またはロケーションに自動的に関連付けられるかどうかを定義します。
- 必要に応じて、Snippet を選択します。このチェックボックスは、パーティションが他のパーティションテーブルレイアウトで再利用可能なスニペットであるかどうかを定義します。
- Operating system family ドロップダウンリストからオペレーティングシステムを選択します。
- パーティションテーブルの Layout を指定します。Template editor のテキストフィールドにレイアウトを入力するか、Choose File をクリックしてテンプレートファイルをアップロードできます。注記レイアウトのフォーマットは、オペレーティングシステムのフォーマットと一致する必要があります。Red Hat Enterprise Linux 7.2 にはキックスタートファイルに一致するレイアウトが必要です。
- 監査コメント を使用して、パーティションレイアウトへの変更の概要を追加します。
- をクリックします。
新しいパーティションテーブルは、の説明に従って、オペレーティングシステムと関連付ける必要があります。 「オペレーティングシステム」
9.3.9. Provisioning Templates リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
テンプレートをプロビジョニングすると、無人インストールを実行するための体系的な手段が提供されます。プロビジョニングテンプレートは、bash スクリプト、キックスタートスクリプト、PXE ベースのインストールなど、複数の方法で実行できます。
手順9.16 プロビジョニングテンプレートの作成:
をクリックします。 - New Template をクリックします。Provisioning Template タブで、以下の設定を指定します。
- テンプレートの Name を指定します。
- テンプレート エディター フィールドにテンプレートを挿入します。または、 をクリックしてテンプレートをアップロードします。これにより、Template editor フィールドのコンテンツが選択したファイルの内容に置き換えられます。
- 必要に応じて、Audit Comment フィールドにコメントを入力します。Satellite は、変更を追跡するためのコメントをテンプレート履歴に追加します。History タブでテンプレートの履歴を表示します。
- Type タブで Snippet を選択し、特定のスクリプトやテンプレートタイプとして定義せずにテンプレートコードを保存するか、Type ドロップダウンメニューからタイプを選択します。
- 関連付け タブ で、テンプレートに関連付けるホストグループ、環境、およびオペレーティングシステムを選択します。適用 可能なオペレーティングシステム リストからオペレーティングシステムを選択します。 をクリックして、Hostgroup と Environment を選択し、テンプレートの使用を制限します。タイプスニペットのテンプレートでは関連付けは利用できません。
- 関連付け タブ では、既存のテンプレートの履歴を表示できます。新しいテンプレートの作成時に履歴は利用できません。
- ロケーション タブで、テンプレートの場所を選択します。
- 組織 タブで、テンプレートの組織を選択します。重要ロケーションと組織はデバッグ作業に役立つため、これらが設定されていることを確認します。
- をクリックします。
プロビジョニングテンプレートの詳細は、『Red Hat Satellite Provisioning Guide』 の Creating Provisioning Templates を参照してください。
9.3.10. プロビジョニング時間を削減するための gPXE の設定 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
PXE ブートファイルをダウンロードする際にプロビジョニング時間を短縮するために、gPXE は
HTTP などの追加プロトコルを使用してダウンロード時間を短縮できます。gPXE を利用するには、以下の手順を実行します。
TFTPサーバーに設定されているシステムで、/usr/share/syslinux/gpxelinuxk.0を/var/lib/tftpbootにコピーします。/etc/dhcp/dhcpd.confのPXE Handoffセクションで、DHCPのfilenameオプションをpxelinux.0からgpxelinuxk.0に変更します。- プロビジョニングテンプレートを以下のように作成してから、それらをデフォルトテンプレートと共にオペレーティングシステムに割り当てます。
手順9.17 gPXE プロビジョニングテンプレートを設定するには、以下を実行します。
をクリックします。 - テンプレートの を見つけて、 を選択します。
- (例:
Kickstart default gPXELinux)の名前を入力します。 - テンプレートエディターで、
@initrdを検索し、@host.url_for_boot (:initrd)に置き換えます。 - テンプレートエディターで、
@kernelを検索して@host.url_for_boot (:kernel)に置き換えます。 - タブを選択します。 ドロップダウンメニューから を選択します。
- 関連付け タブ で、テンプレートに関連付けるホストグループ、環境、およびオペレーティングシステムを選択します。適用 可能なオペレーティングシステム リストからオペレーティングシステムを選択します。 をクリックして、Hostgroup と Environment を選択し、テンプレートの使用を制限します。
- をクリックします。
9.3.11. オペレーティングシステム リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
オペレーティングシステムは、インストール方法とメディアの組み合わせを定義し、ファミリー内でグループ化されます。デフォルトでは、Red Hat Satellite は
RedHat ファミリーを使用します。ファミリーを使用すると、Satellite はホストのプロビジョニング時に特定の動作を変更することができます。
手順9.18 オペレーティングシステムを追加するには、以下を実行します。
をクリックします。 - New Operating system をクリックします。オペレーティングシステム タブで、以下の設定を指定します。
- オペレーティングシステムおよびその メジャーバージョンの 名前 を入力します。これらの設定は必須です。
- オプションで マイナーバージョン を 定義し、OS ファミリー を選択して、オペレーティングシステムの 説明 を追加します。
- Root パスワードハッシュ (MD5、SHA256、SHA512)を選択します。
- 利用可能な アーキテクチャー の一覧からアーキテクチャーを選択します。利用できない場合は、「アーキテクチャー」 の説明に従って、 下に作成して割り当てます。
- Partition tables タブで、一覧から該当するファイルシステムレイアウトを選択します。パーティションテーブルの作成方法は、「パーティションテーブル」 を参照してください。
- インストールメディア タブで、一覧から適切なインストールメディアを選択します。インストールメディアの追加に関する詳細は、「インストールメディア」 を参照してください。
- テンプレート タブでは、既存のオペレーティングシステムの編集時にプロビジョニングテンプレートを割り当てることができます。このオプションは、新しいオペレーティングシステムを作成する場合は利用できません。プロビジョニングテンプレートの作成に関する詳細は、「Provisioning Templates」 を参照してください。
- パラメーター タブ で は、オペレーティングシステムのパラメーターを追加できます。
- をクリックします。