第4章 ネットワークの設定
それぞれのプロビジョニングタイプには、なんらかのネットワーク設定が必要です。新規ホストが Capsule Server にアクセスできるよう確認します。Capsule Server は、Satellite Server の統合 Capsule または外部 Capsule Server のいずれかになります。必要なホストが分離したネットワーク上にあり、Satellite Server に直接接続できない場合、またはコンテンツが Capsule Server と同期している場合、外部 Capsule Server からのホストのプロビジョニングを選択することができます。また、外部 Capsule Server を使用したプロビジョニングは、ネットワークの帯域幅を節約できます。
Capsule Server の設定には、基本的な要件が 2 つあります。
ネットワークサービスの設定には、以下が含まれます。
- コンテンツ配信サービス
- ネットワークサービス (DHCP、DNS、および TFTP)
- Puppet 設定
- Satellite Server でネットワークリソースデータを定義し、新規ホストでのネットワークインターフェースの設定をサポートします。
本章では、Satellite Server の統合 Capsule でネットワークサービスを設定する方法を重点的に説明します。しかし、これらの方法は、特定のネットワークを管理するスタンドアロン Capsule Server の設定にも同様に当てはまります。Satellite を設定して外部の DHCP、DNS、および TFTP サービスを使用するには、『Red Hat Satellite インストールガイド』 の 「外部サービスの設定」 を参照してください。
この例では、ACME にはホストをプロビジョニングするためのプライベートネットワークがあります。このプライベートネットワークの詳細は以下のようになります。
サブネット |
192.168.140.0/24 | |
外部ゲートウェイ |
192.168.140.1 | |
Satellite Server |
192.168.140.2 | |
Discovered ホストおよび管理対象外のホストの DHCP 割り当てプール |
192.168.140.10 - 192.168.140.110 | |
ホストプロビジョニングの DHCP 割り当てプール |
192.168.140.111 - 192.168.140.250 |
Satellite Server では、Discovered システムおよびプロビジョニングシステムの両方に同じ DHCP 範囲を定義することはできますが、それぞれのサービスに同じサブネット内の別々の範囲を使用することが推奨されます。
4.1. イメージベースのプロビジョニングの検討
ブート後の設定方法
finish ブート後設定スクリプトを使用するイメージは、Satellite の 統合 Capsule または外部 Capsule などの管理された DHCP サーバーが必要です。ホストは DHCP Capsule と関連付けされたサブネットで作成される必要があり、ホストの IP アドレスは、DHCP 範囲の有効な IP アドレスでなければなりません。外部の DHCP サービスを使用することは可能ですが、IP アドレスは手動で入力する必要があります。イメージの設定に対応する SSH 認証情報は、ブート後の設定を実行できるように Satellite に設定しなければなりません。
設定後スクリプトに依存するイメージからブートした仮想マシンのトラブルシューティングの際、以下の項目を確認する必要があります。
- ホストには、Satellite Server に割り当てられたサブネットがあります。
- サブネットには、Satellite Server に割り当てられた DHCP Capsule があります。
- ホストには、Satellite Server に割り当てられた有効な IP アドレスがあります。
- DHCP を使用した仮想マシンが取得した IP アドレスは、Satellite Server に設定されたアドレスと一致します。
- イメージから作成された仮想マシンは、SSH リクエストに応答します。
- イメージから作成された仮想マシンは、SSH を介してユーザーとパスワードを承認します。ユーザーとパスワードは、デプロイされたイメージと関連付けされます。
ブート前の初期化の設定方法
cloud-init スクリプトを使用するイメージは通常、イメージに IP アドレスを含むことを回避するため、DHCP サーバーを必要とします。管理された DHCP Capsule が推奨されます。イメージは、システムがブートされた時に開始し、設定完了時に使用するスクリプトまたは設定データを取得するための cloud-init サービスを設定する必要があります。
イメージに含まれる初期スクリプトに依存するイメージからブートした仮想マシンのトラブルシューティングの際、以下の項目を確認する必要があります。
- サブネット上に DHCP サーバーがあります。
- 仮想マシンには、cloud-init サービスがインストールされ、有効化されています。
仮想マシンイメージの finish および cloud-init スクリプトに対する異なるレベルのサポートに関する詳細は、Red Hat カスタマーポータルの Red Hat ナレッジベースソリューション What are the supported compute resources for the finish and cloud-init scripts を参照してください。
4.2. ネットワークサービスの設定
一部のプロビジョニング方法では、Capsule Server サービスを各種の目的で使用します。たとえば、ネットワークが Capsule Server に対して DHCP サーバーとして機能するよう要求する場合があります。また、 オペレーティングシステムを新規ホストにインストールする手段として PXE ブートサービスを必要とするネットワークもあります。この場合には、主な PXE ブートサービスである DHCP、DNS および TFTP を使用するよう Capsule Server を設定する必要があります。これを実現するには、Satellite Server にこれらのサービスを設定するオプションと共に satellite-installer
スクリプトを実行します。外部 Capsule Server にこれらのサービスを設定するには、satellite-installer --scenario capsule
を実行します。
この例では、ACME は Satellite Server の統合 Capsule をプロビジョニングネットワークに接続し、PXE ブートサービスを提供します。Satellite Server は以下の NIC 設定を使用します。
# ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 52:54:00:33:e3:1c brd ff:ff:ff:ff:ff:ff inet 192.168.125.35/24 brd 192.168.125.255 scope global dynamic ens3 valid_lft 3042sec preferred_lft 3042sec inet6 fe80::5054:ff:fe33:e31c/64 scope link valid_lft forever preferred_lft forever 3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 52:54:00:fd:24:ae brd ff:ff:ff:ff:ff:ff inet 192.168.140.2/24 brd 192.168.140.255 scope global ens8 valid_lft forever preferred_lft forever inet6 fe80::5054:ff:fefd:24ae/64 scope link valid_lft forever preferred_lft forever
Satellite Server は、Red Hat の CDN への接続など、外部との通信に eth0
を使用します。ACME は eth1
インターフェースを使用して、192.168.140.0/24
サブネットを使用するホスト向けにプライベートプロビジョニングネットワークに接続します。ここでの目的は、Satellite Server の統合 Capsule が、このネットワークの新規ホストに対して DHCP、DNS、および TFTP サーバーとして機能することです。
Satellite Server の統合 Capsule は、上記のサービスを提供します。これらのサービスは、他のネットワークの追加の Satellite Capsule にも設定することができます。
satellite-installer
スクリプトは、以下のオプションを使用してネットワークサービスを設定します。
DHCP オプション
- --foreman-proxy-dhcp
-
DHCP サービスを有効にします。このオプションを
true
に設定します。 - --foreman-proxy-dhcp-managed
-
DHCP サービスを管理するため Foreman を有効にします。このオプションを
true
に設定します。 - --foreman-proxy-dhcp-gateway
-
この例では、DHCP プールゲートウェイを
192.168.140.1
に設定します。これは、ACME のプライベートネットワーク上のホスト向け外部ゲートウェイのアドレスです。 - --foreman-proxy-dhcp-interface
-
要求をリッスンするために DHCP サービスのインターフェースを設定します。この例では、
eth1
に設定します。 - --foreman-proxy-dhcp-nameservers
-
DHCP を介してクライアントに提供されたネームサーバーのアドレスを設定します。この例では、
eth1
の Satellite Server のアドレス192.168.140.1
に設定します。 - --foreman-proxy-dhcp-range
-
Discovered サービスおよび管理対象外サービス用のスペースで区切られた DHCP プールの範囲です。この例では、
192.168.140.10 192.168.140.110
に設定します。これにより、100 個のアドレスを含むプールが提供されます。 - --foreman-proxy-dhcp-server
-
管理する DHCP サーバーのアドレスを設定します。この例では、
192.168.140.2
になります。
DNS オプション
- --foreman-proxy-dns
-
DNS サービスを有効にします。このオプションを
true
に設定します。 - --foreman-proxy-dns-forwarders
-
DNS フォワーダーを設定します。この例では、これを
8.8.8.8; 4.4.4.4
に設定し、2 つのパブリック DNS サーバーを使用します。個人用としては独自の DNS サーバーを代わりに使用してください。 - --foreman-proxy-dns-interface
-
DNS 要求をリッスンするためのインターフェースを設定します。この場合、
eth1
に設定します。 - --foreman-proxy-dns-reverse
-
DNS 逆引きゾーン名です。この例では
140.168.192.in-addr.arpa
を使用します。 - --foreman-proxy-dns-server
-
管理する DNS サーバーのアドレスを設定します。この例では
192.168.140.2
になります。 - --foreman-proxy-dns-zone
-
DNS ゾーン名を設定します。この例では
example.com
を使用します。
TFTP オプション
- --foreman-proxy-tftp
-
TFTP サービスを有効にします。このオプションを
true
に設定します。
satellite-installer --scenario capsule --help
を実行し、DHCP、DNS、TFTP およびその他の Satellite Capsule サービスに関するさらなるオプションを表示します。
ネットワークサービスの設定
satellite-installer
コマンドを入力し、必要なネットワークサービスを設定します。# satellite-installer --foreman-proxy-dhcp true \ --foreman-proxy-dhcp-managed true \ --foreman-proxy-dhcp-gateway "192.168.140.1" \ --foreman-proxy-dhcp-interface "eth1" \ --foreman-proxy-dhcp-nameservers "192.168.140.2" \ --foreman-proxy-dhcp-range "192.168.140.10 192.168.140.110" \ --foreman-proxy-dhcp-server "192.168.140.2" \ --foreman-proxy-dns true \ --foreman-proxy-dns-forwarders "8.8.8.8; 4.4.4.4" \ --foreman-proxy-dns-interface "eth1" \ --foreman-proxy-dns-reverse "140.168.192.in-addr.arpa" \ --foreman-proxy-dns-server "192.168.140.2" \ --foreman-proxy-dns-zone "example.com" \ --foreman-proxy-tftp true
この例では、Satellite Server の統合 Capsule Server を設定します。外部 Capsule Server でこのコマンドを実行する場合は、
satellite-installer --scenario capsule
を使用します。Satellite Server の CLI で、Capsule Server の機能をリフレッシュして変更を表示します。
設定する Capsule Server を決定します。
# hammer proxy list
Capsule Server の機能をリフレッシュします。
# hammer proxy refresh-features --name "satellite.example.com"
Capsule Server に設定されたサービスを確認します。
# hammer proxy info --name "satellite.example.com"
4.3. Satellite Server へのドメインの追加
Satellite Server はネットワーク上の各ホストのドメイン名を定義します。これは、Satellite Server がドメインとドメイン名を割り当てる Capsule Server を認識する必要があることを意味します。この例では、ACME の内部ネットワーク用に example.com
ドメインを作成します。
Satellite Server には、Satellite Server のインストールの一環として関連するドメインがすでに作成されている可能性があります。コンテキストを 任意の組織
および 任意のロケーション
に切り替えてから、ドメインの一覧でこれが存在するかどうかを確認します。存在する場合は、このドメインエントリーを修正して DNS Capsule を定義し、組織を設定してからロケーションを設定します。
Web UI を使用する場合
インフラストラクチャー > ドメイン に移動して、新規ドメイン をクリックします。この UI には、ドメインの詳細を入力できるフィールドがあります。
ドメイン タブ:
-
DNS Domain - ドメイン名。
example.com
はこの例になります。 -
Description (フルネーム): ドメインのテキスト形式の説明。この例では
ACME's example domain
を使用しています。 - DNS Capsule - DNS の割り当てに使用するカプセル。この例では、Satellite Server の統合 Capsule を使用します。
-
DNS Domain - ドメイン名。
ロケーション タブ:
-
このドメインを使用する場所を選択します。たとえば、
New York
などのロケーションを選択します。
-
このドメインを使用する場所を選択します。たとえば、
組織 タブ:
-
ACME
など、このドメインを使用する組織を選択します。
-
CLI を使用する場合
以下のコマンドでドメインを作成します。
# hammer domain create --name "example.com" \ --description "ACME's example domain" --dns_id 1 \ --locations "New York" --organizations "ACME"
この例では --dns-id
オプションは 1 を使用しています。1 は、Satellite Server の統合 Capsule の ID です。
4.4. Satellite Server へのサブネットの追加
Satellite Server は新規ホストのインターフェースを設定します。そのため、Satellite Server はこれらのインターフェースを接続するネットワークを認識する必要があります。これは、各サブネットの情報を Satellite Server に追加する必要があることを意味します。これにはゲートウェイ、DHCP、および DNS などの情報が含まれます。この例では、Satellite Server の統合 Capsule が管理する ‘192.168.140.0/24’ ネットワークのサブネットのマッピングを作成します。
Web UI を使用する場合
インフラストラクチャー > サブネット に移動して、新規サブネット をクリックします。UI には、サブネットの詳細を入力できる一連のフィールドがあります。
サブネット タブ:
-
名前: サブネットのテキスト形式の名前。例:
ACME's Internal Network
-
ネットワークアドレス: サブネットのネットワークアドレス。例:
192.168.140.0
-
ネットワークプレフィックス - サブネット用のネットワークプレフィックスです。例:
24
-
ネットワークマスク: サブネットのネットワークマスク。例:
255.255.255.0
-
ゲートウェイアドレス: サブネットの外部ゲートウェイ。例:
192.168.140.1
-
プライマリー DNS サーバー: サブネットのプライマリー DNS。例:
192.168.140.2
-
セカンダリー DNS サーバー: サブネットのセカンダリー DNS。例:
8.8.8.8
IPAM: IP アドレス管理 (IPAM) に使用するメソッド:
- DHCP: サブネットには DHCP サーバーが含まれます。
- 内部 DB - サブネットには DHCP サーバーは含まれませんが、Satellite で IP アドレスの割り当てを管理し、内部データベースに IP アドレスを記録することが想定されます。
なし: IP アドレス管理がありません。
この例では、Satellite Server は DHCP サーバーとして機能するため、
DHCP
を使用します。
-
開始アドレス (Start of IP range): プロビジョニングサービスの IP 割り当て範囲の開始を定義します。例:
192.168.140.111
-
終了アドレス (End of IP range): プロビジョニングサービスの IP 割り当ての終了を定義します。例:
192.168.140.250
- VLAN ID - ブロードキャストを分離するためのサブネットの VLAN ID 番号。この例では VLAN を使用しないため、このフィールドを空白にします。
ブートモード - このネットワークのネットワークインターフェースのデフォルトブートモードを定義します。
- 静的 ブートモードとは、このサブネットに割り当てられたネットワークインターフェースは、IP アドレスおよびネットワークマスクを設定ファイルに直接設定することを意味し、DHCP を使用してこれらを取得することを回避します。ゲートウェイおよび DNS サーバーは、DHCP から取得できないことに注意してください。したがって、これらを設定したい場合は、ゲートウェイアドレス および プライマリー DNS サーバー のフィールドに、正しい値を入力します。これらを省略できるのは、ネットワーク外にトラフィックをルーティングせず (インストールメディアはローカル)、DNS 解決なしに IP アドレスを直接使用する場合だけです。
- DHCP ブートモードとは、このサブネットに割り当てられたネットワークインターフェースは、DHCP に設定されることを意味します。
-
名前: サブネットのテキスト形式の名前。例:
リモート実行 タブ:
- リモート実行を制御する Capsule を選択します。この例では Satellite Server 自体がこれに該当します。
ドメイン タブ:
- このサブネットに適用されるドメインを選択します。
Capsule タブ:
- DHCP、TFTP、および逆引き DNS サービスを含む、サブネットの各サービスに適用される Capsule を選択します。この例では、各サービスに Satellite Server の統合 Capsule を使用します。
- パラメーター タブでは、任意のサブネットレベルのパラメーターを設定し、このサブネットに割り当てられたホストに適用します。たとえば、テンプレートで使用できるユーザー定義ブール値またはストリングパラメーターなどです。
ロケーション タブ:
-
この capsule を使用するロケーションを選択します。たとえば、
New York
というロケーションを選択します。
-
この capsule を使用するロケーションを選択します。たとえば、
組織 タブ:
-
この capsule を使用する組織を選択します。たとえば、
ACME
を選択します。
-
この capsule を使用する組織を選択します。たとえば、
送信 をクリックしてサブネットの情報を保存します。
CLI を使用する場合
以下のコマンドでサブネットを作成します。
# hammer subnet create --name "ACME's Internal Network" \ --network "192.168.140.0" --mask "255.255.255.0" \ --gateway "192.168.140.1" --dns-primary "192.168.140.2" \ --dns-secondary "8.8.8.8" --ipam "DHCP" \ --from "192.168.140.111" --to "192.168.140.250" --boot-mode "DHCP" \ --domains "example.com" --dhcp-id 1 --dns-id 1 --tftp-id 1 \ --locations "New York" --organizations "ACME"
この例では、--dhcp-id
、--dns-id
、および --tftp-id
オプションは 1 を使用します。1 は Satellite Server の統合 Capsule の ID です。
4.5. プロビジョニング時間を削減するための iPXE の設定
Red Hat Satellite 6.3 では、PXELinux を設定して iPXE をチェーンブートし、HTTP プロトコルを使用してブートすることができます。これは、高レイテンシーのネットワークにおいて TFTP よりも迅速で、信頼性も高まります。
Red Hat Satellite 6.3 で iPXE を使用する方法は 3 つあります。
- iPXE をプライマリーファームウェアとして使用するハイパーバイザーを使った仮想マシンのチェーンブート
- TFTP を介して PXELinux を使用し、iPXE を直接ベアメタルホストにチェーンロードします。
- UNDI を介して PXELinux を使用します。UNDI は、HTTP を使用してカーネルとベアメタルホストの初期 RAM ディスクを移動します。
前提条件
開始する前に、以下の条件を満たしていることを確認してください。
- 使用する Red Hat Satellite にホストが存在します。
- プロビジョニングインターフェースの MAC アドレスが、ホスト設定と一致します。
- ホストのプロビジョニングインターフェースには、有効な DHCP 予約があります。
- NIC は、PXE ブートが可能です。詳細は http://ipxe.org/appnote/hardware_drivers を参照してください。
- NIC は、iPXE と互換性があります。
4.5.1. 仮想マシンのチェーンブート
仮想化ハイパーバイザーの多くは、PXE ブートのプライマリーファームウェアとして iPXE を使用します。このため、TFTP および PXELinux なしでチェーンブートが可能です。
仮想マシンワークフローのチェーンブート
仮想化ハイパーバイザーを使用することで、 TFTP および PXELinux の必要性がなくなります。仮想化ハイパーバイザーのワークフローは、以下の通りです。
- 仮想マシンが起動します。
- iPXE が DHCP を使用してネットワークの認証情報を取得します。
- iPXE が DHCP を使用して HTTP アドレスを取得します。
- iPXE が Red Hat Satellite から iPXE テンプレートをチェーンロードします。
- iPXE が、インストーラーのカーネルおよび初期 RAM ディスクをロードします。
使用したいハイパーバイザーが iPXE をサポートしていることを確認します。以下の仮想化ハイパーバイザーは、iPXE をサポートします。
- libvirt
- oVirt
- RHEV
iPXE を使うための Red Hat Satellite Server の設定
デフォルトのテンプレートを使用して、ホストの iPXE ブーティングを設定できます。テンプレートのデフォルトの値を変更したい場合は、テンプレートをクローンし、そのクローンを編集します。
-
Satellite Web UI で、ホスト > プロビジョニングテンプレート に移動し、
Kickstart default iPXE
を入力後、検索 をクリックします。 - オプション: テンプレートを変更したい場合は、クローン をクリックして独自の名前を入力し、送信 をクリックします。
- 使用したいテンプレートの名前をクリックします。
- テンプレートをクローンした場合、変更が必要な時は テンプレート タブで実施できます。
- 関連付け タブをクリックし、ホストが使用するオペレーティングシステムを選択します。
- ロケーション タブをクリックして、ホストの所在を追加します。
- 組織 タブをクリックして、ホストが属する組織を追加します。
- 送信 をクリックして変更を保存します。
- ホスト > オペレーティングシステム に移動し、ホストのオペレーティングシステムを選択します。
- テンプレート タブをクリックします。
- iPXE テンプレート リストから、使用したいテンプレートを選択します。
- 送信 をクリックして変更を保存します。
- ホスト > すべてのホスト に移動します。
- ホスト のページで、使用したいホストを選択します。
- テンプレート タブを選択します。
- iPXE テンプレート リストから、レビュー を選択し、Kickstart default iPXE テンプレートが正しいテンプレートであることを確認します。
iPXE ファームウェアのチェーンブートの無限ループを回避するには、
/etc/dhcp/dhcpd.conf
ファイルを編集し、以下の例に一致させます。分離したネットワークを使用する場合は、Satellite Server の URL ではなく、TCP port 8000 を伴う Capsule Server の URL を使用します。/etc/dhcp/dhcpd.conf
ファイルの Bootfile Handoff セクションで、以下の行を見つけます。} else { filename "pxelinux.0"; }
else ステートメントの前に、以下に示す別の
elsif
ステートメントを追加します。elsif exists user-class and option user-class = "iPXE" { filename "http://satellite.example.com/unattended/iPXE"; }
if セクションが、以下の例と一致することを確認します。
if option architecture = 00:06 { filename "grub2/shim.efi"; } elsif option architecture = 00:07 { filename "grub2/shim.efi"; } elsif option architecture = 00:09 { filename "grub2/shim.efi"; } elsif exists user-class and option user-class = "iPXE" { filename "http://satellite.example.com/unattended/iPXE"; } else { filename "pxelinux.0"; }
注記http://satellite.example.com/unattended/iPXE
では、Red Hat Satellite Capsulehttp://capsule.example.com:8000/unattended/iPXE
を使用することもできます。アップグレードごとに/etc/dhcp/dhcpd.conf
ファイルを更新する必要があります。/etc/dhcp/dhcpd.conf
ファイルのコンテンツは大文字と小文字を区別します。
4.5.2. iPXE ディレクトリーのチェーンブート
この手順を使用すると、ネットワーク通信のビルトインドライバーを使って iPXE を直接チェーンブートできます。Red Hat Satellite Capsule および Server を設定して iPXE を使用するには、別の手順があります。
この手順を使用できるのは、ベアメタルホストのみです。
直接または UNDI ワークフローと共に iPXE をチェーンブート
- ホストの電源をオンにします。
- PXE ドライバーは、DHCP を使用してネットワークの認証情報を取得します。
-
PXE ドライバーは、TFTP を使用して PXELinux ファームウェア
pxelinux.0
を取得します。 - PXELinux は、TFTP サーバーの設定ファイルを検索します。
-
PXELinux は、iPXE
ipxe.lkrn
またはundionly-ipxe.0
をチェーンロードします。 - iPXE は、再び DHCP を使用してネットワークの認証情報を取得します。
- iPXE は、DHCP を使用して HTTP アドレスを取得します。
- iPXE が Red Hat Satellite から iPXE テンプレートをチェーンロードします。
- iPXE が、インストーラーのカーネルおよび初期 RAM ディスクをロードします。
iPXE を使用するための Red Hat Satellite Capsule の設定
この手順を使用して、iPXE を使用するために Capsule を設定することができます。
この手順は、すべての Capsule で実行する必要があります。
Capsule を設定して iPXE をチェーンブートするには、以下を実行します。
ipxe-bootimgs
RPM パッケージをインストールします。# yum install ipxe-bootimgs
iPXE ファームウェアを TFTP サーバーのルートディレクトリーにコピーします。
# cp /usr/share/ipxe/ipxe.lkrn /var/lib/tftpboot/
TFTP は
chroot
環境で実行するので、シンボリックリンクは使用しません。ファイルのコンテンツを修正します。
# restorecon -RvF /var/lib/tftpboot/
iPXE を使うための Red Hat Satellite Server の設定
デフォルトのテンプレートを使用して、ホストの iPXE ブーティングを設定できます。テンプレートのデフォルトの値を変更したい場合は、テンプレートをクローンし、そのクローンを編集します。
-
Satellite Web UI で、ホスト > プロビジョニングテンプレート に移動し、
PXELinux chain iPXE
を入力後、検索 をクリックします。 - オプション: テンプレートを変更したい場合は、クローン をクリックして独自の名前を入力し、送信 をクリックします。
- 使用したいテンプレートの名前をクリックします。
- テンプレートをクローンした場合、変更が必要な時は テンプレート タブで実施できます。
- 関連付け タブをクリックし、ホストが使用するオペレーティングシステムを選択します。
- ロケーション タブをクリックして、ホストの所在を追加します。
- 組織 タブをクリックして、ホストが属する組織を追加します。
- 送信 をクリックして変更を保存します。
-
プロビジョニングテンプレート ページの検索フィールドに
Kickstart default iPXE
を入力し、検索 をクリックします。 - オプション: テンプレートを変更したい場合は、クローン をクリックして独自の名前を入力し、送信 をクリックします。
- 使用したいテンプレートの名前をクリックします。
- テンプレートをクローンした場合、変更が必要な時は テンプレート タブで実施できます。
- 関連付け タブをクリックし、テンプレートをホストが使用するオペレーティングシステムに関連付けします。
- ロケーション タブをクリックして、ホストの所在を追加します。
- 組織 タブをクリックして、ホストが属する組織を追加します。
- 送信 をクリックして変更を保存します。
- ホスト > オペレーティングシステム に移動し、ホストのオペレーティングシステムを選択します。
- テンプレート タブをクリックします。
- PXELinux テンプレート リストから、使用したいテンプレートを選択します。
- iPXE テンプレート リストから、使用したいテンプレートを選択します。
- 送信 をクリックして変更を保存します。
- ホスト > すべてのホスト に移動し、使用したいホストを選択します。
- テンプレート タブを選択し、PXELinux テンプレート リストから レビュー を選択して、そのテンプレートが正しいテンプレートであることを確認します。
iPXE テンプレート リストから レビュー を選択し、そのテンプレートが正しいテンプレートであることを確認します。
注記PXELinux のエントリーがない場合、または新しいテンプレートが見つからない場合は、ホスト > すべてのホスト に移動し、ホスト上で 編集 をクリックします。オペレーティングシステム タブをクリックし、続いてプロビジョニングテンプレート 解決 ボタンをクリックして、テンプレートのリストをリフレッシュします。
4.5.3. UNDI を使用した iPXE のチェーンブート
この手順を使用すると、UNDI を使って iPXE をチェーンブートできます。Red Hat Satellite Capsule および Server を設定して iPXE を使用するには、別の手順があります。
この手順を使用できるのは、ベアメタルホストのみです。
直接または UNDI ワークフローと共に iPXE をチェーンブート
- ホストの電源をオンにします。
- PXE ドライバーは、DHCP を使用してネットワークの認証情報を取得します。
-
PXE ドライバーは、TFTP を使用して PXELinux ファームウェア
pxelinux.0
を取得します。 - PXELinux は、TFTP サーバーの設定ファイルを検索します。
-
PXELinux は、iPXE
ipxe.lkrn
またはundionly-ipxe.0
をチェーンロードします。 - iPXE は、再び DHCP を使用してネットワークの認証情報を取得します。
- iPXE は、DHCP を使用して HTTP アドレスを取得します。
- iPXE が Red Hat Satellite から iPXE テンプレートをチェーンロードします。
- iPXE が、インストーラーのカーネルおよび初期 RAM ディスクをロードします。
iPXE を使用するための Red Hat Satellite Capsule の設定
この手順を使用して、iPXE を使用するために Capsule を設定することができます。
この手順は、すべての Capsule で実行する必要があります。
Capsule を設定して iPXE をチェーンブートするには、以下を実行します。
ipxe-bootimgs
RPM パッケージをインストールします。# yum install ipxe-bootimgs
iPXE ファームウェアを TFTP サーバーのルートディレクトリーにコピーし、ファイル名を変更します。
# cp /usr/share/ipxe/undionly.kpxe /var/lib/tftpboot/undionly-ipxe.0
TFTP は
chroot
環境で実行するので、シンボリックリンクは使用しません。ファイルのコンテンツを修正します。
# restorecon -RvF /var/lib/tftpboot/
iPXE を使うための Red Hat Satellite Server の設定
デフォルトのテンプレートを使用して、ホストの iPXE ブーティングを設定できます。テンプレートのデフォルトの値を変更したい場合は、テンプレートをクローンし、そのクローンを編集します。
-
Satellite Web UI で、ホスト > プロビジョニングテンプレート に移動し、
PXELinux chain iPXE UNDI
を入力後、検索 をクリックします。 - オプション: テンプレートを変更したい場合は、クローン をクリックして独自の名前を入力し、送信 をクリックします。
- 使用したいテンプレートの名前をクリックします。
- テンプレートをクローンした場合、変更が必要な時は テンプレート タブで実施できます。
- 関連付け タブをクリックし、ホストが使用するオペレーティングシステムを選択します。
- ロケーション タブをクリックして、ホストの所在を追加します。
- 組織 タブをクリックして、ホストが属する組織を追加します。
- 送信 をクリックして変更を保存します。
-
プロビジョニングテンプレート ページの検索フィールドに
Kickstart default iPXE
を入力し、検索 をクリックします。 - オプション: テンプレートを変更したい場合は、クローン をクリックして独自の名前を入力し、送信 をクリックします。
- 使用したいテンプレートの名前をクリックします。
- テンプレートをクローンした場合、変更が必要な時は テンプレート タブで実施できます。
- 関連付け タブをクリックし、テンプレートをホストが使用するオペレーティングシステムに関連付けします。
- ロケーション タブをクリックして、ホストの所在を追加します。
- 組織 タブをクリックして、ホストが属する組織を追加します。
- 送信 をクリックして変更を保存します。
- ホスト > オペレーティングシステム に移動し、ホストのオペレーティングシステムを選択します。
- テンプレート タブをクリックします。
- PXELinux テンプレート リストから、使用したいテンプレートを選択します。
- iPXE テンプレート リストから、使用したいテンプレートを選択します。
- 送信 をクリックして変更を保存します。
- ホスト > すべてのホスト に移動し、使用したいホストを選択します。
- テンプレート タブを選択し、PXELinux テンプレート リストから レビュー を選択して、そのテンプレートが正しいテンプレートであることを確認します。
iPXE テンプレート リストから レビュー を選択し、そのテンプレートが正しいテンプレートであることを確認します。
注記PXELinux のエントリーがない場合、または新しいテンプレートが見つからない場合は、ホスト > すべてのホスト に移動し、ホスト上で 編集 をクリックします。オペレーティングシステム タブをクリックし、続いてプロビジョニングテンプレート 解決 ボタンをクリックして、テンプレートのリストをリフレッシュします。
iPXE ファームウェアのチェーンブートの無限ループを回避するには、
/etc/dhcp/dhcpd.conf
ファイルを編集し、以下の例に一致させます。分離したネットワークを使用する場合は、Satellite Server の URL ではなく、TCP port 8000 を伴う Capsule Server の URL を使用します。/etc/dhcp/dhcpd.conf
ファイルの Bootfile Handoff セクションで、以下の行を見つけます。} else { filename "pxelinux.0"; }
else ステートメントの前に、以下に示す別の
elsif
ステートメントを追加します。elsif exists user-class and option user-class = "iPXE" { filename "http://satellite.example.com/unattended/iPXE"; }
if セクションが、以下の例と一致することを確認します。
if option architecture = 00:06 { filename "grub2/shim.efi"; } elsif option architecture = 00:07 { filename "grub2/shim.efi"; } elsif option architecture = 00:09 { filename "grub2/shim.efi"; } elsif exists user-class and option user-class = "iPXE" { filename "http://satellite.example.com/unattended/iPXE"; } else { filename "pxelinux.0"; }
注記http://satellite.example.com/unattended/iPXE
では、Red Hat Satellite Capsulehttp://capsule.example.comf:8000/unattended/iPXE
も使用できます。アップグレードごとに/etc/dhcp/dhcpd.conf
ファイルを更新する必要があります。/etc/dhcp/dhcpd.conf
ファイルのコンテンツは大文字と小文字を区別します。
4.6. 本章のまとめ
本章では、Satellite Server の統合 Capsule で特定のネットワークサービスを設定する方法や、Satellite Server が制御するドメインおよびサブネットの詳細をマップする方法を説明しました。これで、新規ホストのネットワークが提供され、また PXE ブートやネットワーク設定などの主なサービスがホストに提供されます。
次章では、新規ホストおよびホストグループを作成する方法を含む、基本的なプロビジョニングのワークフローについて扱います。