ホストのプロビジョニング
プロビジョニングリソースとネットワークの設定、物理マシンのプロビジョニング、クラウドプロバイダーまたは仮想化インフラストラクチャーへの仮想マシンのプロビジョニング、Discovery サービスまたは手動によるホストの作成
概要
Red Hat ドキュメントへのフィードバック (英語のみ) リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ドキュメントに関するご意見やご感想をお寄せください。また、改善点があればお知らせください。
フィードバックを提供するには、Red Hat Jira の Create Issue フォームを使用します。Jira の課題が Red Hat Satellite Jira プロジェクトに作成され、その進捗状況を追跡できます。
前提条件
- Red Hat アカウント が登録されていることを確認する。
手順
- Create Issue にアクセスします。Jira でログインエラーが表示された場合は、フォームにリダイレクトされた後、ログインして続行します。
- Summary フィールドと Description フィールドに入力します。Description フィールドに、ドキュメントの URL、章またはセクション番号、および問題の詳しい説明を入力します。フォーム内の他のフィールドは変更しないでください。
- Create をクリックします。
第1章 プロビジョニングについて リンクのコピーリンクがクリップボードにコピーされました!
プロビジョニングとは、ベアメタルの物理または仮想マシンから、オペレーティングシステムの全設定を行い、使用準備を整えるまでのプロセスを指します。Red Hat Satellite を使用して、多数のホストに対して細かく設定を指定したプロビジョニングを定義し、自動化できます。
1.1. Red Hat Satellite のプロビジョニング方法 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Satellite では、以下の方法でホストをプロビジョニングできます。
- ベアメタルホスト
Satellite は、主に PXE ブートおよび MAC アドレス識別を使用して、ベアメタルホストをプロビジョニングします。Satellite を使用してベアメタルホストをプロビジョニングする場合、以下を実行できます。
- ホストエントリーを作成して、プロビジョニングする物理ホストの MAC アドレスを指定する。
- プロビジョニングの準備が整ったホストのプールを作成する Satellite Discovery サービスを使用するには、空のホストを起動します。
- UEFI セキュアブートでホストをプロビジョニングします。
- クラウドプロバイダー
Satellite はプライベートクラウドプロバイダーとパブリッククラウドプロバイダーに接続し、クラウド環境に保存されているイメージからホストのインスタンスをプロビジョニングします。Satellite を使用してクラウドからプロビジョニングする場合、次の操作を実行できます。
- 使用するハードウェアプロファイルを選択します。
- API を使用して、特定のプロバイダーのクラウドインスタンスをプロビジョニングする。
- 仮想化インフラストラクチャー
Satellite は、Red Hat Virtualization や VMware などの仮想化インフラストラクチャーサービスに接続します。Satellite を使用して仮想マシンをプロビジョニングする場合、次の操作を実行できます。
- 仮想イメージテンプレートから仮想マシンをプロビジョニングする。
- ベアメタルホストのプロビジョニングと同じ PXE ベースのブート方法を使用します。
1.2. プロビジョニングでサポートされているホストプラットフォーム リンクのコピーリンクがクリップボードにコピーされました!
Satellite は、ホストのプロビジョニングに次のオペレーティングシステムとアーキテクチャーをサポートしています。
- サポートされているホストオペレーティングシステム
ホストは、以下のオペレーティングシステムを使用できます。
- Red Hat Enterprise Linux 10、9、および 8
- ELS アドオン を使用する Red Hat Enterprise Linux 7
- サポートされるホストアーキテクチャー
ホストは、次のアーキテクチャーを使用できます。
- AMD アーキテクチャーおよび Intel 64 ビットアーキテクチャー
- 64 ビット ARM アーキテクチャー
- IBM Power Systems (リトルエンディアン)
- 64 ビット IBM Z アーキテクチャー
1.3. サポートされているクラウドプロバイダー リンクのコピーリンクがクリップボードにコピーされました!
次のクラウドプロバイダーをコンピューティングリソースとして Satellite に接続できます。
- Red Hat OpenStack Services on OpenShift
- Amazon EC2
- Google Compute Engine
- Microsoft Azure
1.4. サポートされている仮想化インフラストラクチャー リンクのコピーリンクがクリップボードにコピーされました!
次の仮想化インフラストラクチャーをコンピュートリソースとして Satellite に接続できます。
- KVM (libvirt)
- Red Hat Virtualization (非推奨)
- VMware
- OpenShift Virtualization
1.5. ネットワークブートのプロビジョニングワークフロー リンクのコピーリンクがクリップボードにコピーされました!
プロビジョニングプロセスは、基本的な PXE のワークフローに従います。
- ホストを作成して、ドメインとサブネットを選択します。Satellite は、サブネットに関連付けられている DHCP Capsule Server、または Satellite の PostgreSQL データベースから、利用可能な IP アドレスを要求します。次に、Satellite は、この IP アドレスを Create Host ウィンドウの IP address フィールドに投入します。新しいホストのオプションをすべて入力したら、新しいホストリクエストを送信します。
ホストとそのドメインおよびサブネットの設定仕様に応じて、Satellite は次の設定を作成します。
- サブネットに関連付けられた Capsule Server の DHCP レコード
- ドメインに関連付けられた Capsule Server の正引き DNS レコード
- サブネットに関連付けられた DNS Capsule Server の逆引き DNS レコード
- サブネットが関連付けられた TFTP Capsule Server にあるホストの PXELinux、Grub、Grub2、iPXE 設定ファイル
- 関連する Puppet サーバーの Puppet 証明書
- 関連付けられた ID サーバーのレルム
- ホストは、ネットワークから最初のデバイスとして起動し、HDD を 2 番目のデバイスとして起動するように設定されています。
- 新規ホストが DHCP サーバーから DHCP 予約を要求します。
-
DHCP サーバーは予約要求に応答し、TFTP の
next-server、filenameオプションを返します。 - ホストは、PXELoader の設定をもとに、TFTP サーバーからブートローダーやメニューを要求します。
- ブートローダーは TFTP 経由で返されます。
- ブートローダーはプロビジョニングインターフェイスの MAC アドレスを介してホストの設定を取得します。
- ブートローダーはオペレーティングシステムのインストーラーカーネル、初期 RAM ディスク、およびブートパラメーターを取得します。
- インストーラーは Satellite からプロビジョニングテンプレートを要求します。
- Satellite はプロビジョニングテンプレートをレンダリングし、結果をホストに返します。
インストーラーはオペレーティングシステムをインストールします。
- インストーラーは、Subscription Manager を使用してホストを Satellite に登録します。
-
インストーラーは Satellite に対し、
postinstallスクリプトで正常なビルドを通知します。
- PXE 設定ファイルはローカルブートテンプレートに戻ります。
- ホストは再起動します。
- 新規ホストが DHCP サーバーから DHCP 予約を要求します。
-
DHCP サーバーは予約要求に応答し、TFTP の
next-server、filenameオプションを返します。 - ホストは、PXELoader の設定をもとに、TFTP サーバーからブートローダーやメニューを要求します。
- ブートローダーは TFTP 経由で返されます。
- ブートローダーはプロビジョニングインターフェイスの MAC アドレスを介してホストの設定をフェッチします。
- ブートローダーはローカルドライブから起動を開始します。
- Puppet クラスを使用するようにホストを設定した場合、ホストはモジュールを使用して自身を設定します。
完全にプロビジョニングされたホストは、次のワークフローを実行します。
- ホストは、ネットワークから最初のデバイスとして起動し、HDD を 2 番目のデバイスとして起動するように設定されています。
- 新規ホストが DHCP サーバーから DHCP 予約を要求します。
-
DHCP サーバーは予約要求に応答し、TFTP の
next-server、filenameオプションを返します。 - ホストは、PXELoader の設定をもとに、TFTP サーバーからブートローダーやメニューを要求します。
- ブートローダーは TFTP 経由で返されます。
- ブートローダーは、プロビジョニングインターフェイスの MAC アドレスを介してホストの設定を取得します。
BIOS ホストの場合:
- ブートローダーは起動不可能なデバイスを返すため、BIOS は次のデバイスにスキップします (HDD からの起動)。
EFI ホストの場合:
- ブートローダーは ESP パーティションで Grub2 を見つけ、それをチェーンブートします。
- ホストが Satellite に認識されていない場合は、デフォルトのブートローダー設定が提供されます。Discovery サービスが有効になっている場合は、Discovery で起動します。それ以外の場合は、HDD から起動します。
ワークフローはカスタムのオプションにより異なります。以下に例を示します。
- 検出
- 検出サービスを使用している場合は、Satellite は新規ホストの MAC アドレスを自動的に検出し、要求の送信後にホストを再起動します。Satellite でホストを再起動できるように、ホストのアタッチ先の Capsule から TCP ポート 8443 にアクセスできなければならないことに注意してください。
- PXE なしのプロビジョニング
- 新しいホスト要求を送信した後、Satellite からダウンロードし、外部ストレージデバイスを使用して転送したブートディスクを使用して特定のホストを起動する必要があります。
- Compute Resources
-
Satellite は仮想マシンを作成して、MAC アドレスを取得し、Satellite にその MAC アドレスを保存します。イメージベースのプロビジョニングを使用する場合は、ホストは、標準の PXE ブートやオペレーティングシステムのインストールを行うわけではありません。コンピュートリソースは、使用するホストのイメージのコピーを作成します。Satellite のイメージ設定に合わせて、
cloud-initを使用するなど、シードデータを初期設定用に渡すことができます。Satellite は、SSH を使用してホストに接続し、テンプレートを実行してカスタマイズを完了できます。
1.6. ネットワークブートに必要なブート順序 リンクのコピーリンクがクリップボードにコピーされました!
- 物理または仮想 BIOS ホストの場合
- 最初の起動デバイスをネットワークを使用した起動設定として設定します。
- 2 番目の起動デバイスをハードドライブからの起動として設定します。Satellite は TFTP ブート設定ファイルを管理するため、再起動するだけでホストを簡単にプロビジョニングできます。
- 物理または仮想 EFI ホストの場合
- 最初の起動デバイスをネットワークを使用した起動設定として設定します。
- EFI ファームウェアの種類と設定に応じて、オペレーティングシステムインストーラーは通常、オペレーティングシステムブートローダーを最初のエントリーとして設定します。
-
インストーラーを再起動するには、
efibootmgrユーティリティーを使用して、ネットワークからの起動に切り替えます。
第2章 プロビジョニングリソースの設定 リンクのコピーリンクがクリップボードにコピーされました!
2.1. プロビジョニングコンテキスト リンクのコピーリンクがクリップボードにコピーされました!
プロビジョニングコンテキストは、Satellite コンポーネントに指定する組織やロケーションの組み合わせのことです。コンポーネントが所属する組織やロケーションを使用して、対象のコンポーネントに対する所有権やアクセス権を設定します。
組織は、所有者、目的、コンテンツ、セキュリティーレベルなどの区分に基づいて Red Hat Satellite リソースを論理グループに分割します。Red Hat Satellite では、複数の組織を作成および管理し、コンポーネントをそれぞれの組織に割り当てることができます。これにより、Satellite Server において特定の組織内でホストをプロビジョニングし、その組織に関連付けられたコンポーネントのみを使用できるようになります。組織の詳細は、Red Hat Satellite の管理 の 組織の管理 を参照してください。
ロケーションは組織と同様に機能します。相違点は、ロケーションが物理的な設定または地理的な設定をもとにしている点です。ユーザーは階層でロケーションをネスト化できます。ロケーションの詳細は、Red Hat Satellite の管理 の ロケーションの管理 を参照してください。
2.2. プロビジョニングコンテキストの設定 リンクのコピーリンクがクリップボードにコピーされました!
プロビジョニングコンテキストの設定時に、プロビジョニングホストに使用する組織およびロケーションを定義します。
組織およびロケーションのメニューは、Satellite Web UI の左上のメニューバーにあります。使用する組織またはロケーションを選択していない場合には、メニューには Any Organization および Any Location と表示されます。
手順
- Any Organization タブで、組織を選択します。
- Any Location をクリックして、使用するロケーションを選択します。
各ユーザーはアカウント設定でデフォルトのプロビジョニングコンテキストを設定できます。Satellite Web UI の右上のユーザー名をクリックし、マイアカウント を選択してユーザーアカウントの設定を編集します。
CLI 手順
CLI を使用する場合は、オプションとして、
--organizationまたは--organization-labelと--locationまたは--location-idを追加します。以下に例を示します。hammer host list --organization "My_Organization" --location "My_Location"
$ hammer host list --organization "My_Organization" --location "My_Location"Copy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドは、
My_OrganizationおよびMy_Locationに割り当てられたホストを出力します。
2.3. オペレーティングシステムの作成 リンクのコピーリンクがクリップボードにコピーされました!
オペレーティングシステムは、Satellite Server がホストにベースオペレーティングシステムをインストールする方法を定義するリソースの集合です。オペレーティングシステムのエントリーは、インストールメディアやパーティションテーブル、プロビジョニングテンプレートなどの事前に定義されたリソースを組み合わせます。
Red Hat の CDN からオペレーティングシステムをインポートすると、Hosts > Provisioning Setup > Operating Systems ページに新しいエントリーが作成されます。Red Hat の CDN からオペレーティングシステムをインポートするには、オペレーティングシステムの Red Hat リポジトリーを有効にし、リポジトリーを Satellite に同期します。詳細は、コンテンツの管理 の Red Hat リポジトリーの有効化 および リポジトリーの同期 を参照してください。
以下の手順を使用して、カスタムのオペレーティングシステムも追加できます。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で Hosts > Operating systems に移動して、New Operating system をクリックします。
- Name フィールドには、オペレーティングシステムエントリーの名前を入力します。
- Major フィールドには、オペレーティングシステムのメジャーバージョンに対応する数字を入力します。
- Minor フィールドには、オペレーティングシステムのマイナーバージョンに対応する数字を入力します。
- Description フィールドには、オペレーティングシステムの説明を加えます。
- Family リストから、オペレーティングシステムのファミリーを選択します。
- Root Password Hash リストから、Root パスワードのエンコード方法を選択します。
- Architectures リストから、オペレーティングシステムがシステムが使用するアーキテクチャーを選択します。
- Partition table タブをクリックして、対象のオペレーティングシステムに適用するパーティションテーブルの候補を選択します。
- オプション: Red Hat 以外のコンテンツを使用する場合には、Installation Media タブをクリックして、対象のオペレーティングシステムに適用するインストールメディアを選択します。詳細は、Satellite へのインストールメディアの追加 を参照してください。
- Templates タブをクリックして、オペレーティングシステムで使用する PXELinux template、Provisioning template および Finish template を選択しましす。プロビジョニングに iPXE を使用予定の場合には、iPXE テンプレート など、他のテンプレートを選択してください。
- Submit をクリックしてプロビジョニングテンプレートを保存します。
CLI 手順
hammer os createコマンドを使用してオペレーティングシステムを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.4. 複数のオペレーティングシステムの詳細更新 リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して複数のオペレーティングシステムの詳細を更新します。以下の例では、各オペレーティングシステムに、Kickstart default と呼ばれるパーティションテーブル、Kickstart default PXELinux と呼ばれる設定テンプレート、Kickstart Default と呼ばれるプロビジョニングテンプレートを割り当てる方法を紹介しています。
手順
Satellite Server で以下の Bash スクリプトを実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 更新したオペレーティングシステムの情報を表示して、オペレーティングシステムが正しく更新されたことを確認します。
hammer os info --id 1
$ hammer os info --id 1Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.5. アーキテクチャーの作成 リンクのコピーリンクがクリップボードにコピーされました!
Satellite 内のアーキテクチャーはホストおよびオペレーティングシステムの論理グループを表します。アーキテクチャーは、ホストが Puppet に接続する際に Satellite によって自動的に作成されます。Satellite には、x86_64 アーキテクチャーが事前設定されています。
以下の手順を使用して Satellite のアーキテクチャーを作成します。
サポート対象のアーキテクチャー
PXE、Discovery およびブートディスクを使用したプロビジョニングをサポートするのは Intel x86_64 アーキテクチャーのみです。詳細は、Red Hat ナレッジベースソリューション Supported architectures and provisioning scenarios in Satellite 6 を参照してください。
手順
- Satellite Web UI で、Hosts > Provisioning Setup > Architectures に移動します。
- Create Architecture をクリックします。
- Name フィールドに、アーキテクチャーの名前を入力します。
- Operating Systems リストからオペレーティングシステムを選択します。利用可能なものがない場合は、Hosts > Provisioning Setup > Operating Systems で作成して割り当てることができます。
- Submit をクリックします。
CLI 手順
hammer architecture createコマンドを入力して、アーキテクチャーを作成します。このアーキテクチャーに含める名前とオペレーティングシステムを指定します。hammer architecture create \ --name "My_Architecture" \ --operatingsystems "My_Operating_System"
$ hammer architecture create \ --name "My_Architecture" \ --operatingsystems "My_Operating_System"Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.6. ハードウェアモデルの作成 リンクのコピーリンクがクリップボードにコピーされました!
以下の手順を使用して、Satellite でハードウェアを作成し、ホストが使用するハードウェアモデルを指定できるようにします。
手順
- Satellite Web UI で、Hosts > Provisioning Setup > Hardware Models に移動します。
- Create Model をクリックします。
- Name フィールドに、ハードウェアモデルの名前を入力します。
- 必要に応じて、Hardware Model フィールドと Vendor Class フィールドに、該当するシステムの情報を入力できます。
- Info フィールドに、ハードウェアモデルの説明を入力します。
- Submit をクリックしてハードウェアモデルを保存します。
CLI 手順
hammer model createコマンドを使用して、ハードウェアモデルを作成します。必須となる唯一のパラメーターは、--nameです。オプションで、--hardware-modelオプションにハードウェアモデルを、--vendor-classパラメーターにベンダークラスを、--infoパラメーターに詳細を入力します。hammer model create \ --hardware-model "My_Hardware_Model" \ --info "My_Description" \ --name "My_Hardware_Model_Name" \ --vendor-class "My_Vendor_Class"
$ hammer model create \ --hardware-model "My_Hardware_Model" \ --info "My_Description" \ --name "My_Hardware_Model_Name" \ --vendor-class "My_Vendor_Class"Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.7. 同期したキックスタートリポジトリーの準備 リンクのコピーリンクがクリップボードにコピーされました!
Satellite には、同期済みのキックスタートリポジトリーのセットが含まれています。これは、プロビジョニングしたホストのオペレーティングシステムをインストールするために使用します。リポジトリーの追加の詳細は、コンテンツの管理 の リポジトリーの同期 を参照してください。
この手順を使用して、キックスタートリポジトリーを設定します。
前提条件
プロビジョニングする前に、BaseOS と AppStream Kickstart の両方を有効にする必要があります。
手順
使用する同期済みのキックスタートリポジトリーを既存のコンテンツビューに追加します。または、新しいコンテンツビューを作成してキックスタートリポジトリーを追加します。
Red Hat Enterprise Linux 8 の場合は、Red Hat Enterprise Linux 8 for x86_64 - AppStream Kickstart x86_64 8 と Red Hat Enterprise Linux 8 for x86_64 - BaseOS Kickstart x86_64 8 の両方のリポジトリーが追加されていることを確認します。
オフライン環境をご利用の場合は、Red Hat Enterprise Linux バイナリー DVD からキックスタートリポジトリーをインポートする必要があります。
- キックスタートリポジトリーを追加した新しいバージョンのコンテンツビューを公開し、必要なライフサイクル環境にプロモートします。詳細は、コンテンツの管理 の コンテンツビューの管理 を参照してください。
- ホストの作成時に、Operating System タブの Media Selection で、Synced Content のチェックボックスを選択します。
キックスタートツリーを表示するには、以下のコマンドを入力します。
hammer medium list --organization "My_Organization"
$ hammer medium list --organization "My_Organization"
2.8. Satellite へのインストールメディアの追加 リンクのコピーリンクがクリップボードにコピーされました!
インストールメディアは、Satellite Server が外部リポジトリーからマシンにベースオペレーティングシステムをインストールするために使用するパッケージのソースです。このパラメーターを使用して、サードパーティーのコンテンツをインストールできます。Red Hat コンテンツは、リポジトリーの同期により配信されます。
インストールメディアを表示するには、Hosts > Provisioning Setup > Installation Media に移動します。
インストールメディアは、オペレーティングシステムのインストールツリーの形式で提供され、インストーラーをホストするマシンから HTTP URL 経由でアクセスできる必要があります。
デフォルトでは Satellite には公式な Linux ディストリビューションのインストールメディアが含まれています。これらのインストールメディアは特定のバージョンのオペレーティングシステムを対象としている点に注意してください。たとえば、CentOS mirror (7.x) は CentOS 7 以前に、CentOS mirror (8.x) は CentOS 8 以降に使用する必要がある点に注意してください。
インストールメディアを使用して複数のホストにオペレーティングシステムをインストールする時のダウンロードパフォーマンスを向上させたい場合は、最も近いミラーまたはローカルコピーを参照するようにインストールメディアの パス を変更する必要があります。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Hosts > Provisioning Setup > Installation Media に移動します。
- Create Medium をクリックします。
- Name フィールドには、インストールメディアエントリーの名前を入力します。
Path には、インストールツリーを含む URL を入力します。複数の異なるシステムアーキテクチャーおよびバージョンを表すために以下の変数をパスで使用できます。
-
$arch:-: システムアーキテクチャー -
$version:-: オペレーティングシステムのバージョン -
$major:-: オペレーティングシステムのメジャーバージョン $minor:-: オペレーティングシステムのマイナーバージョンHTTP パスの例:
http://download.example.com/centos/$version/Server/$arch/os/
http://download.example.com/centos/$version/Server/$arch/os/Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
-
Operating system family リストから、メディアのディストリビューションまたはファミリーを選択します。たとえば、CentOS、および Fedora は、
Red Hatファミリーに属します。 - Organizations と Locations タブをクリックして、プロビジョニングコンテキストを変更します。Satellite Server により、設定されたプロビジョニングコンテキストにインストールメディアを追加します。
- Submit をクリックしてインストールメディアを保存します。
CLI 手順
hammer medium createコマンドを使用してインストールメディアを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.9. パーティションテーブルの作成 リンクのコピーリンクがクリップボードにコピーされました!
パーティションテーブルは、テンプレートの一種で、Satellite Server が新規ホストで利用可能なディスクを設定する方法を定義します。パーティションテーブルは、プロビジョニングテンプレートと同じ ERB 構文を使用します。Red Hat Satellite には、Kickstart default などの、デフォルトのパーティションテーブルのセットが含まれます。また、パーティションテーブルのエントリーを編集して、任意のパーティションスキームの設定やパーティションテーブルのエントリー作成を行い、そのエントリーをオペレーティングシステムのエントリーに追加することができます。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Hosts > Templates > Partition Tables に移動します。
- Create Partition Table をクリックします。
- Name フィールドにパーティションテーブルの名前を入力します。
- テンプレートを新しい組織またはロケーションに自動的に関連付けるように設定する場合は、Default チェックボックスをオンにします。
- テンプレートを他のパーティションテーブルで再利用可能なスニペットに指定する場合は、Snippet チェックボックスをオンにします。
- Operating System Family リストから、パーティションレイアウトのディストリビューションまたはファミリーを選択します。たとえば、Red Hat Enterprise Linux、CentOS、および Fedora は、Red Hat ファミリーに属します。
Template editor フィールドに、ディスクパーティションのレイアウトを入力します。
レイアウトのフォーマットは、オペレーティングシステムのフォーマットと一致する必要があります。たとえば、Red Hat Enterprise Linux には、キックスタートファイルと一致するレイアウトが必要です。次に例を示します。
zerombr clearpart --all --initlabel autopart
zerombr clearpart --all --initlabel autopartCopy to Clipboard Copied! Toggle word wrap Toggle overflow 詳細は、「動的パーティションの例」 を参照してください。
テンプレートエディターのファイルブラウザーを使用して、ファイルからレイアウトをインポートすることもできます。
- Audit Comment フィールドに、パーティションレイアウトの変更の概要を追加します。
- Organizations タブと Locations タブをクリックして、パーティションテーブルに関連付ける他のプロビジョニングコンテキストを追加します。Satellite により、現在のプロビジョニングコンテキストに、そのパーティションテーブルが追加されます。
- Submit をクリックしてパーティションテーブルを保存します。
CLI 手順
パーティションレイアウトを含む
~/My_Partition_Tableなどのプレーンテキストファイルを作成します。レイアウトのフォーマットは、オペレーティングシステムのフォーマットと一致する必要があります。たとえば、Red Hat Enterprise Linux には、キックスタートファイルと一致するレイアウトが必要です。次に例を示します。
zerombr clearpart --all --initlabel autopart
zerombr clearpart --all --initlabel autopartCopy to Clipboard Copied! Toggle word wrap Toggle overflow 詳細は、「動的パーティションの例」 を参照してください。
hammer partition-table createコマンドを使用してインストールメディアを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.10. パーティションテーブルとディスク暗号化の関連付け リンクのコピーリンクがクリップボードにコピーされました!
Satellite には、ホストのプロビジョニング中に Linux Unified Key Setup (LUKS) を使用してホストのディスクを暗号化するパーティションテーブルが含まれています。ホスト上の暗号化されたディスクは保存中のデータを保護します。オプションとして、起動時に復号化するために、Clevis を介してディスクを Tang サーバーにバインドすることもできます。
パーティションテーブルをオペレーティングシステムエントリーに関連付けます。次に、パーティションテーブルをホストグループに割り当てるか、プロビジョニング中に手動で選択します。
前提条件
-
ホストはプロビジョニング中に
clevisをインストールするためにAppStreamリポジトリーにアクセスできます。
手順
- Satellite Web UI で、Hosts > Provisioning Setup > Operating Systems に移動します。
- Red Hat Enterprise Linux エントリーを選択します。
-
Partition Table タブで、
Kickstart default encryptedをオペレーティングシステムエントリーに関連付けます。 -
Kickstart default encryptedパーティションテーブルを使用するホストグループを作成します。詳細は、ホストの管理 の ホストグループの作成 を参照してください。 次のいずれかのオプションを使用して、起動時にホストのディスクを復号化します。
-
LUKS 暗号化: ホストパラメーター
disk_enc_passphraseを string 型として追加し、LUKS コンテナーのクリアテキストパスフレーズを値として追加します。 Clevis および Tang: ホストパラメーター
disk_enc_tang_serversを array 型として追加し、さらに Tang サーバーのリストを追加します (例:["1.2.3.4"]または["server.example.com"、"5.6.7.8"])。disk_enc_tang_serversを設定する場合は、プロビジョニング後に LUKS コンテナーからパスフレーズスロットが削除されるため、disk_enc_passphraseを設定しないでください。
-
LUKS 暗号化: ホストパラメーター
2.11. 動的パーティションの例 リンクのコピーリンクがクリップボードにコピーされました!
次のセクションでは、Anaconda キックスタートテンプレートを使用して、ディスク全体を消去し、自動的にパーティションを作成して 1 つのパーティションを最大サイズに拡大してから、プロビジョニングプロセスの次の一連のイベントに進むように Anaconda に指示します。
zerombr
clearpart --all --initlabel
autopart <%= host_param('autopart_options') %>
zerombr
clearpart --all --initlabel
autopart <%= host_param('autopart_options') %>
動的パーティション設定は、インストールプログラムにより実行されます。そのため、独自のルールを記述して、ディスクサイズ、ドライブの数、ベンダー、製造メーカーなど、ノードからのランタイム情報に基づいて、ディスクのパーテション方法を指定できます。
サーバーをプロビジョニングして動的パーティショニングを使用する場合には、以下の例をテンプレートとして追加します。#Dynamic エントリーが追加されると、テンプレートの内容が %pre シェルスクリプトレットに読み込まれ、/tmp/diskpart.cfg が作成され、キックスタートのパーテションのセクションに追加されます。
2.12. プロビジョニングテンプレート リンクのコピーリンクがクリップボードにコピーされました!
プロビジョニングテンプレートは、Satellite Server がホストにオペレーティングシステムをインストールする方法を定義します。
Red Hat Satellite には、多数のテンプレートサンプルが含まれています。Satellite Web UI で、Hosts > Templates > Provisioning Templates に移動してテンプレートを表示します。テンプレートを作成するか、テンプレートのクローンを作成して編集できます。テンプレートのヘルプを確認するには、Hosts > Templates > Provisioning Templates > Create Template > Help に移動します。
Red Hat でサポートされているテンプレートは、Red Hat アイコンで示されます。
サポートされていないテンプレートを非表示にするには、Satellite Web UI で Administer > Settings に移動します。Provisioning タブで、Show unsupported provisioning templates の値を false に設定し、Submit をクリックします。クエリー "supported = true" を作成して、サポートされているテンプレートを除外することもできます。
サポートされているテンプレートを複製すると、複製されたテンプレートはサポートされなくなります。
Embedded Ruby (ERB) 構文を受け入れるテンプレート。詳細は、ホストの管理 の テンプレート作成の参照 を参照してください。
プロビジョニングテンプレートはダウンロードが可能です。ただし、テンプレートのダウンロード前にデバッグ証明書を作成する必要があります。詳細は、Red Hat Satellite の管理 の 組織デバッグ証明書の作成 を参照してください。
Satellite Server と Git リポジトリーまたはローカルディレクトリーの間でテンプレートを同期できます。詳細は、Red Hat Satellite の管理 の テンプレートリポジトリーの同期 を参照してください。
テンプレートに適用された変更の履歴を表示するには、Hosts > Templates > Provisioning Templates に移動し、テンプレートの 1 つを選択して History をクリックします。コンテンツを以前のバージョンでオーバーライドするには、Revert をクリックします。さらに前の変更に戻すこともできます。特定の変更に関する情報を表示するには、Show Diff をクリックします。
- Template Diff タブには、プロビジョニングテンプレートの本文の変更が表示されます。
- Details タブには、テンプレートの説明の変更が表示されます。
- History タブには、テンプレートに変更を加えたユーザーと変更日が表示されます。
2.13. プロビジョニングテンプレートの種類 リンクのコピーリンクがクリップボードにコピーされました!
プロビジョニングテンプレートにはさまざまな種類があります。
- Provision
プロビジョニングプロセスのメインテンプレート。たとえば、キックスタートテンプレートです。キックスタートの構文とコマンドの詳細は、次のリソースを参照してください。
- RHEL 9 の自動インストール の 自動インストールのワークフロー
- RHEL 8 の自動インストール の 自動インストールのワークフロー
- Red Hat Enterprise Linux 7 インストールガイド の キックスタート構文の参考資料
- PXELinux、PXEGrub、PXEGrub2
- 正しいカーネルオプションが指定されたインストーラーをホストで使用されるように、サブネットに関連付けられたテンプレート Capsule にデプロイする PXE ベースのテンプレート。BIOS プロビジョニングの場合は、PXELinux テンプレートを選択します。UEFI プロビジョニングの場合は、PXEGrub2 を選択します。
- 終了
主なプロビジョニングプロセスの完了時に、SSH 接続を使用して実行するプロビジョニング後の設定スクリプト。Finish テンプレートは、user_data をサポートしない仮想またはクラウド環境でのイメージベースのプロビジョニングにのみ使用できます。Foreman Discovery イメージと呼ばれる場合もあるので、Foreman Discovery ISO のイメージと混同しないようにしてください。このコンテキストのイメージは、デプロイメントの簡素化を目指した、仮想化環境でのインストールイメージを指します。
Red Hat Satellite は、終了スクリプトがリターンコード
0で正常に終了すると、このコードが成功したとして処理し、ホストはビルドモードを終了します。終了スクリプトには、call back HTTP 呼び出しを使用するビルドモードを含むものが複数ある点に注意してください。上記のスクリプトは、イメージベースのプロビジョニングには使用されず、Debian、Ubuntu、BSD などのオペレーティングシステムをインストールした後の設定に使用されます。Red Hat は、Red Hat Enterprise Linux 以外のオペレーティングシステムのプロビジョニングをサポートしていません。
- user_data
シードデータとも呼ばれるカスタムデータに対応するプロバイダーのプロビジョニング後の設定スクリプト。user_data テンプレートを使用してクラウドまたは仮想環境のみで仮想マシンをプロビジョニングできます。このテンプレートでは、Satellite がホストに到達できなくても構いません。クラウドまたは仮想化プラットフォームがデータをイメージに配信します。
プロビジョニングするイメージに、データを読み取るためのソフトウェアがインストールされており、そのソフトウェアが起動時に開始されるように設定されていることを確認します。たとえば、
cloud-initは YAML 入力が必要で、また、ignitionは JSON 入力が必要です。- cloud_init
VMWare などの一部の環境ではカスタムデータをサポートしないか、独自のデータ形式を使用しておりカスタマイズ時の機能に制限がある場合があります。このような場合には、
foremanプラグインで cloud-init クライアントを設定し、HTTP または HTTPS で Satellite からのテンプレートの直接ダウンロードを試行します。この手法はどの環境でも利用できますが、仮想化環境での利用を推奨します。cloud_initテンプレートを使用する以下の要件を満たしていることを確認してください。- プロビジョニングするイメージに、データを読み取るためのソフトウェアがインストールされており、そのソフトウェアが起動時に開始されるように設定されていることを確認します。
プロビジョニングされたホストは、ホストのプロビジョニングインターフェイスの IP と一致する IP アドレスから Satellite に到達できます。
cloud-init は NAT の前では機能しないことに注意してください。
- Bootdisk
- PXE 以外の起動方法に使用するテンプレート
- カーネル実行 (kexec)
PXE 以外の起動方法に使用するカーネル実行テンプレート
注記カーネル実行は、テクノロジープレビュー機能です。テクノロジープレビュー機能は、Red Hat サービスレベルアグリーメント (SLA) では完全にサポートされておらず、機能的に完全でない可能性があり、実稼働環境での使用を目的とはしていません。ですが、近々発表予定のプロダクトイノベーションをリリースに先駆けてご提供することで、お客様には機能性をテストし、開発プロセス中にフィードバックをお寄せいただくことができます。
- スクリプト
- デフォルトで使用されないが、カスタムタスクに役立つ任意のスクリプト。
- ZTP
- Zero Touch Provisioning テンプレート。
- POAP
- PowerOn Auto Provisioning テンプレート。
- iPXE
-
PXELinux の代わりに
iPXEまたはgPXE環境で使用するテンプレート。
2.14. プロビジョニングテンプレートの作成 リンクのコピーリンクがクリップボードにコピーされました!
プロビジョニングテンプレートは、Satellite Server がホストにオペレーティングシステムをインストールする方法を定義します。この手順を使用して、新規のプロビジョニングテンプレートを作成します。
手順
- Satellite Web UI で、Hosts > Templates > Provisioning Templates に移動し、Create Template をクリックします。
- Name フィールドに、プロビジョニングテンプレートの名前を入力します。
- 必要に応じて残りのフィールドに入力します。Help タブに、テンプレートの構文に関する情報と、テンプレート内のさまざまな種類のオブジェクトで呼び出すことができる使用可能な関数、変数、メソッドの詳細が表示されます。
CLI 手順
-
テンプレートを含むプレーンテキストファイルを作成してから、CLI でテンプレートを作成します。この例では、
~/my-templateファイルを使用しています。 hammer template createコマンドを使用してテンプレートを作成し、--typeオプションでタイプを指定します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.15. プロビジョニングテンプレートのクローン作成 リンクのコピーリンクがクリップボードにコピーされました!
プロビジョニングテンプレートは、Satellite Server がホストにオペレーティングシステムをインストールする方法を定義します。この手順を使用して、テンプレートのクローンを作成して、更新をこのクローンに追加します。
手順
- Satellite Web UI で、Hosts > Templates > Provisioning Templates に移動します。
- 使用するテンプレートを見つけます。
- Clone をクリックして、テンプレートのクローンを作成します。
- Name フィールドに、プロビジョニングテンプレートの名前を入力します。
- テンプレートを新規の組織またはロケーションに自動的に関連付けられるように設定するには、デフォルト のチェックボックスを選択します。
- Template editor フィールドには、プロビジョニングテンプレートのボディーを入力します。Template ファイルブラウザーを使用してテンプレートファイルをアップロードすることもできます。
- Audit Comment フィールドには、監査を目的とするプロビジョニングテンプレートへの変更の概要を入力します。
- Type タブをクリックします。テンプレートがスニペットの場合は、Snippet チェックボックスをオンにします。スニペットは、スタンドアロンのプロビジョニングテンプレートではありませんが、他のプロビジョニングテンプレートに挿入可能なプロビジョニングテンプレートに含まれています。
- Type のリストから、テンプレートのタイプを選択します。(例: プロビジョニングテンプレート)
- Association タブをクリックして、Applicable Operating Systems リストから、このプロビジョニングテンプレートに関連付けるオペレーティングシステム名を選択します。
- またオプションとして、Add combination をクリックして Host Group の一覧からホストグループを 1 つ選択するか、Environment の一覧から環境を 1 つ選択すると、指定したホストグループと環境と、プロビジョニングテンプレートを関連付けることができます。
- Organizations および Locations タブをクリックして、テンプレートに別のコンテキストを追加します。
- Submit をクリックしてプロビジョニングテンプレートを保存します。
2.16. カスタムプロビジョニングスニペットの作成 リンクのコピーリンクがクリップボードにコピーされました!
ホストのプロビジョニングプロセスの前または後にカスタムコードを実行できます。
前提条件
プロビジョニングテンプレートをチェックして、使用するカスタムスニペットがサポートされていることを確認します。
すべてのプロビジョニングテンプレートは Hosts > Templates > Provisioning Templates で確認できます。
手順
- Satellite Web UI で、Hosts > Templates > Provisioning Templates に移動し、Create Template をクリックします。
Name フィールドに、カスタムプロビジョニングスニペットの名前を入力します。名前は、カスタムプロビジョニングスニペットを含めることをサポートするプロビジョニングテンプレートの名前で始まる必要があります。
-
ホストをプロビジョニングする前にコードを実行するには、プロビジョニングテンプレートの名前に
custom preを追加します。 -
ホストをプロビジョニングした後にコードを実行するには、プロビジョニングテンプレートの名前に
custom postを追加します。
-
ホストをプロビジョニングする前にコードを実行するには、プロビジョニングテンプレートの名前に
- Type タブで、Snippet を選択します。
- Submit をクリックして、カスタムプロビジョニングスニペットを作成します。
CLI 手順
- カスタムスニペットを含むプレーンテキストファイルを作成します。
hammerを使用してテンプレートを作成します。hammer template create \ --file "/path/to/My_Snippet" \ --locations "My_Location" \ --name "My_Template_Name_custom_pre" \ --organizations "_My_Organization" \ --type snippet
$ hammer template create \ --file "/path/to/My_Snippet" \ --locations "My_Location" \ --name "My_Template_Name_custom_pre" \ --organizations "_My_Organization" \ --type snippetCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.17. Red Hat Enterprise Linux のカスタムプロビジョニングスニペットの例 リンクのコピーリンクがクリップボードにコピーされました!
Custom Post スニペットを使用して、ホストをプロビジョニングした直後に、プロビジョニングテンプレート内から外部 API を呼び出すことができます。
Kickstart default finish custom post Red Hat Enterprise Linux の例
2.18. テンプレートとオペレーティングシステムの関連付け リンクのコピーリンクがクリップボードにコピーされました!
テンプレートを Satellite のオペレーティングシステムに関連付けることができます。次の例では、プロビジョニングテンプレートをオペレーティングシステムエントリーに追加します。
手順
- Satellite Web UI で、Hosts > Templates > Provisioning Templates に移動します。
- プロビジョニングテンプレートを選択します。
- Association タブで、該当するすべてのオペレーティングシステムを選択します。
- Submit をクリックして変更を保存します。
CLI 手順
オプション: すべてのテンプレートを表示します。
hammer template list
$ hammer template listCopy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: すべてのオペレーティングシステムを表示します。
hammer os list
$ hammer os listCopy to Clipboard Copied! Toggle word wrap Toggle overflow テンプレートをオペレーティングシステムに関連付けます。
hammer template add-operatingsystem \ --id My_Template_ID \ --operatingsystem-id My_Operating_System_ID
$ hammer template add-operatingsystem \ --id My_Template_ID \ --operatingsystem-id My_Operating_System_IDCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.19. コンピュートプロファイルの作成 リンクのコピーリンクがクリップボードにコピーされました!
コンピュートプロファイルを使用して、CPU、メモリー、ストレージなどの仮想マシンハードウェアの詳細を事前定義できます。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
Red Hat Satellite のデフォルトのインストールには、3 つの定義済みプロファイルが含まれています。
-
1-Small -
2-Medium -
3-Large
コンピュートプロファイルは、サポートされているすべてのコンピュートリソースに適用できます。
手順
- Satellite Web UI で Infrastructure > Compute Profiles に移動して、Create Compute Profile をクリックします。
- Name フィールドには、プロファイル名を入力します。
- Submit をクリックします。新しいウィンドウが開き、コンピューティングプロファイルの名前が表示されます。
- 新しいウィンドウで、各コンピュートリソースの名前をクリックし、このコンピューティングプロファイルに設定する属性を編集します。
CLI 手順
新しいコンピュートプロファイルを作成します。
hammer compute-profile create --name "My_Compute_Profile"
$ hammer compute-profile create --name "My_Compute_Profile"Copy to Clipboard Copied! Toggle word wrap Toggle overflow コンピュートプロファイルの属性を設定します。
hammer compute-profile values create \ --compute-attributes "flavor=m1.small,cpus=2,memory=4GB,cpu_mode=default \ --compute-resource "My_Compute_Resource" \ --compute-profile "My_Compute_Profile" \ --volume size=40GB
$ hammer compute-profile values create \ --compute-attributes "flavor=m1.small,cpus=2,memory=4GB,cpu_mode=default \ --compute-resource "My_Compute_Resource" \ --compute-profile "My_Compute_Profile" \ --volume size=40GBCopy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: コンピュートプロファイルの属性を更新するには、変更する属性を指定します。たとえば、CPU の数とメモリーサイズを変更するには、次のようにします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: コンピュートプロファイルの名前を変更するには、
--new-name属性を使用します。hammer compute-profile update \ --name "My_Compute_Profile" \ --new-name "My_New_Compute_Profile"
$ hammer compute-profile update \ --name "My_Compute_Profile" \ --new-name "My_New_Compute_Profile"Copy to Clipboard Copied! Toggle word wrap Toggle overflow
関連情報
-
Hammer を使用してコンピューティングプロファイルを作成する方法の詳細は、
hammer compute-profile --helpと入力してください。
2.20. ホストのデフォルトの暗号化 root パスワードを設定する リンクのコピーリンクがクリップボードにコピーされました!
プロビジョニングしたホストにプレーンテキストのデフォルト root パスワードを設定したくない場合は、デフォルトの暗号化パスワードを使用することができます。
デフォルトの root パスワードは、ホストグループによって継承され、結果的にそのグループ内のホストによって継承される可能性があります。
パスワードを変更し、パスワードを継承するグループ内のホストを再プロビジョニングすると、ホストでパスワードが上書きされます。
手順
暗号化されたパスワードを生成します。
python3 -c 'import crypt,getpass;pw=getpass.getpass(); print(crypt.crypt(pw)) if (pw==getpass.getpass("Confirm: ")) else exit()'$ python3 -c 'import crypt,getpass;pw=getpass.getpass(); print(crypt.crypt(pw)) if (pw==getpass.getpass("Confirm: ")) else exit()'Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 後で使用するために、パスワードをコピーしておきます。
- Satellite Web UI で、Administer > Settings に移動します。
- Settings ページで、Provisioning タブを選択します。
- Name コラムで Root password に移動し、Click to edit をクリックします。
- 暗号化パスワードを貼り付け、Save をクリックします。
2.21. noVNC を使用した仮想マシンへのアクセス リンクのコピーリンクがクリップボードにコピーされました!
ブラウザーを使用して、Satellite が作成した仮想マシンの VNC コンソールにアクセスできます。
Satellite は、以下の仮想化プラットフォームで noVNC の使用をサポートします。
- VMware
- Libvirt
- Red Hat Virtualization
前提条件
- Satellite で仮想マシンを作成しておく必要がある。
- 既存の仮想マシンの場合は、Compute Resource 設定の Display type が VNC であることを確認する。
- Satellite Server に Katello root CA 証明書をインポートする必要がある。ブラウザーにセキュリティーの例外を追加するだけでは、noVNC の使用の要件を満たしません。詳細は、Red Hat Satellite ユーザーの認証の設定 の Katello ルート CA 証明書のインストール を参照してください。
手順
Satellite Server で、ポート 5900 から 5930 で VNC サービスを許可するようにファイアウォールを設定します。
firewall-cmd --add-port=5900-5930/tcp firewall-cmd --add-port=5900-5930/tcp --permanent
# firewall-cmd --add-port=5900-5930/tcp # firewall-cmd --add-port=5900-5930/tcp --permanentCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Satellite Web UI で、Infrastructure > Compute Resources に移動し、コンピュートリソースの名前を選択します。
- Virtual Machines タブで、仮想マシンの名前を選択します。マシンの電源がオンになっていることを確認してから、Console を選択します。
2.22. ホストの削除時の仮想マシンの削除 リンクのコピーリンクがクリップボードにコピーされました!
デフォルトでは、Satellite によってプロビジョニングされたホストを削除しても、Satellite はコンピュートリソース上の実際の仮想マシンを削除しません。Satellite 上のホストエントリーを削除するときに仮想マシンを削除するように Satellite を設定できます。
関連付けられている仮想マシンを削除せずに、後で同じ FQDN を持つ新しい仮想マシンを作成しようとすると、その仮想マシンがコンピュートリソースにすでに存在するため失敗します。既存の仮想マシンを Satellite に再登録することもできます。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
前提条件
-
Satellite アカウントに
view_settingsおよびedit_settingsパーミッションを付与するロールがある。
手順
- Satellite Web UI で、Administer > Settings > Provisioning に移動します。
- Destroy associated VM on host delete の設定を Yes に変更します。
CLI 手順
Hammer を使用して、ホストの削除時に仮想マシンを削除するように Satellite を設定します。
hammer settings set \ --name destroy_vm_on_host_delete \ --value true \ --location "My_Location" \ --organization "My_Organization"
$ hammer settings set \ --name destroy_vm_on_host_delete \ --value true \ --location "My_Location" \ --organization "My_Organization"Copy to Clipboard Copied! Toggle word wrap Toggle overflow
第3章 ネットワークの準備 リンクのコピーリンクがクリップボードにコピーされました!
それぞれのプロビジョニングタイプにはネットワーク設定が必要です。この章を参照して、Capsule 上のネットワークサービスを設定します。
新しいホストは、Satellite Server または任意の Capsule Server にアクセスできる必要があります。ホストが分離されたネットワーク上にあり、Satellite Server に直接接続できない場合は、Capsule Server からホストをプロビジョニングする必要があります。Capsule Server を使用したプロビジョニングは、ネットワークの帯域幅を節約できます。
Capsules を設定するには、次の 2 つの基本要件があります。
ネットワークサービスの設定これには、以下のものが含まれます。
- コンテンツ配信サービス
- ネットワークサービス (DHCP、DNS、および TFTP)
- Puppet 設定
- Satellite Server でネットワークリソースデータを定義し、新規ホストでのネットワークインターフェイスの設定をサポートします。
以下の手順は、特定のネットワークを管理する Capsule Server の設定にも同様に適用されます。外部の DHCP、DNS、および TFTP サービスを使用するように Satellite を設定するには、オンラインネットワーク環境での Satellite Server のインストール の 外部サービスの設定 を参照してください。
3.1. ファクトと NIC フィルタリング リンクのコピーリンクがクリップボードにコピーされました!
ファクトは、ホストによって報告された合計メモリー、オペレーティングシステムのバージョン、またはアーキテクチャーなどに関する情報を説明します。Monitor > Facts で、ファクトを検索し、ファクトを使用してホストを検索したり、テンプレートでファクトを使用したりできます。
Satellite は複数のソースからファクトを収集します:
-
subscription manager -
ansible -
puppet
Satellite は、ホストとネットワークインターフェイスのインベントリーシステムです。ハイパーバイザーまたはコンテナーホストの場合には、ホストごとに数千のインターフェイスを追加したり、数分ごとにインベントリーを更新したりするのは不十分です。報告された個々の NIC ごとに、Satellite は NIC エントリーを作成し、それらのエントリーはデータベースから削除されません。すべてのファクトを解析し、データベース内のすべてのレコードを比較すると、Satellite は非常に遅くなり、使用できなくなります。さまざまなアクションのパフォーマンスを最適化する場合に、最も重要なのはファクトインポートです。Administer > Settings の Facts タブのオプションを使用できます。
3.2. データベースから NIC を削除することによるパフォーマンスの最適化 リンクのコピーリンクがクリップボードにコピーされました!
Satellite に保存されたファクトのパターンを除外する と、識別子が一致するインターフェイスを無視する オプションを使用して、接続をフィルタリングして除外します。デフォルトでは、これらのオプションは最も一般的なハイパーバイザーに設定されています。仮想インターフェイスに別の名前を付ける場合は、このフィルターを更新し、要件に合わせて使用できます。
手順
- Satellite Web UI で、Administer > Settings に移動し、Facts タブを選択します。
-
bluなどの特定の名前で始まるすべてのインターフェイスを除外するには、blu*を識別子が一致するインターフェイスを無視するオプションに追加します。 bluなどの特定の名前で始まるインターフェイスに関連するファクトをデータベースが保存されないようにするには、blu*をSatellite に保存されたファクトのパターンを除外するオプションに追加します。デフォルトでは、
識別子が一致するインターフェイスを無視するオプションと同じリストが含まれています。要件に基づいて上書きできます。これにより、ファクトは保存せずに完全に除外されます。データベースからファクトを削除するには、次のコマンドを入力します。
foreman-rake facts:clean
# foreman-rake facts:cleanCopy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドは、Administer > Settings > Facts >
Exclude pattern for facts stored in Satelliteオプションに追加されたフィルターに一致するすべてのファクトを削除します。データベースからインターフェイスを削除するには、次のコマンドを入力します。
foreman-rake interfaces:clean
# foreman-rake interfaces:cleanCopy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドは、Administer > Settings > Facts >
Ignore interfaces with matching identifierオプションで追加されたフィルターと一致するすべてのインターフェイスを削除します。
3.3. ネットワークリソース リンクのコピーリンクがクリップボードにコピーされました!
Satellite には、ホストの作成に必要なネットワークリソースが含まれます。次のネットワーキングリソースが含まれています。
- ドメイン
-
Satellite で管理するホストはすべてドメインに割り当てる必要があります。ドメインを使用して、Satellite は A、AAAA および PTR レコードを管理します。Satellite で DNS サーバーを管理しない場合でも、ドメイン 1 つ以上を作成して、関連付ける必要があります。ドメインは、Satellite がホストする命名規則に含めます。たとえば、
example.comドメインで名前がtest123のホストは、test123.example.comという完全修飾ドメイン名になります。 - Subnet
Satellite が管理するホストはすべてサブネットに割り当てる必要があります。サブネットを使用することで、Satellite は IPv4 予約を管理できます。予約機能が統合されていない場合でも、最低でもサブネット 1 つを作成して関連付ける必要があります。Satellite でサブネットを管理すると、Satellite の外にあるサブネットの DHCP レコードを作成できません。Satellite では、IP Address Management (IPAM) を使用して、以下のオプションのいずれかで IP アドレスを管理できます。
DHCP: DHCP Capsule は、範囲の最初のアドレスから開始し、予約されているアドレスをすべて飛ばして、次に利用可能な IP アドレスを検索することで、IP アドレスの割り当てを管理します。Capsule は IP アドレスを割り当てる前に、ICMP と TCP に Ping を送信して、IP アドレスが使用中かどうかを確認します。ホストの電源がオフの場合または、ファイアウォールの設定で接続が無効な場合には、Satellite は IP アドレスが利用可能であると誤って判断します。このチェックは、電源がオフになっているホストでは機能しないので、DHCP オプションは Satellite が制御し、外部で作成されたホストが含まれていないサブネットでのみ利用できます。
Capsule DHCP モジュールでは、提供された IP アドレスを短期間保持し、同時アクセス時の競合を回避するので、IP 範囲の IP アドレスによっては、一時的に未使用のままとなる場合があります。
- 内部 DB: Satellite は、Satellite データベースからの IP アドレスを順番にすべて除外し、サブネットの範囲から次に利用可能な IP アドレスを検索します。主要なデータソースは、データベースで、DHCP 予約ではありません。複数のホストが並行して作成される場合には、この IPAM は安全ではないので、このような場合には、代わりに DHCP または Random DB IPAM を使用してください。
- Random DB: Satellite は、Satellite データベースから無作為に全 IP アドレスを除外し、サブネットの範囲から次に利用可能な IP アドレスを検索します。主要なデータソースは、データベースで、DHCP 予約ではありません。この IPAM は、IP アドレスは無作為な順に返されるので、同時にホストを作成する場合にも安全に使用でき、競合の可能性を最小限に抑えることができます。
- EUI-64: 48 ビットの MAC アドレスを使用して、RFC2373 に準拠した Extended Unique Identifier (EUI) 64 ビット IPv6 アドレスの生成を取得します。
- 外部 IPAM: Capsule の機能を使用して外部システムに IPAM を委譲します。現在、Satellite に外部の IPAM 実装は同梱されていませんが、いくつかのプラグインが開発中です。
None: 各ホストの IP アドレスは手動で入力する必要があります。
オプション DHCP、内部 DB、およびランダム DB は、外部で作成されたレコードとのサブネットで DHCP の競合を引き起こす可能性があります。これらのサブネットは、Satellite でのみ管理する必要があります。
サブネットの追加に関する詳細は、「Satellite Server へのサブネットの追加」 を参照してください。
- DHCP の範囲
- Satellite Server では、検出されたシステムおよびプロビジョニングシステムの両方に同じ DHCP 範囲を定義することはできますが、各サービスに同じサブネット内の別の範囲を使用することを推奨します。
3.3.1. 管理対象 DHCPv4 のオプション リンクのコピーリンクがクリップボードにコピーされました!
Satellite が DHCP サービスを管理し、DHCP 設定を更新できる場合、Satellite は next-server および filename の DHCP オプションを設定します。
next-servernext-serverオプションでは、起動する TFTP サーバーの IP アドレスを提供します。このオプションはデフォルトでは設定されておらず、TFTP Capsule ごとに設定する必要があります。--foreman-proxy-tftp-servername引数を指定したsatellite-installerコマンドを使用して、/etc/foreman-proxy/settings.d/tftp.ymlファイルで TFTP サーバーを設定できます。satellite-installer --foreman-proxy-tftp-servername 1.2.3.4
# satellite-installer --foreman-proxy-tftp-servername 1.2.3.4Copy to Clipboard Copied! Toggle word wrap Toggle overflow 各 TFTP Capsule は API を通じてこの設定を報告し、Satellite が DHCP レコードの作成時に設定情報を取得できるようになります。
PXE ローダーが
noneに設定されている場合には、Satellite は DHCP レコードにnext-serverオプションを追加しません。next-serverオプションが未定義のままの場合、Satellite は Capsule API を呼び出して、satellite-installer実行の--foreman-proxy-tftp-servername引数で指定されたサーバー名を取得します。Capsule API の呼び出しでサーバー名が返されなかった場合、Satellite は Capsule のホスト名を使用します。filenamefilenameオプションには、プロビジョニング時に、ダウンロードして実行するファイルへの完全パスが含まれます。ホストまたはホストグループに選択した PXE ローダーは、使用するfilenameオプションを定義します。PXE ローダーがnoneに設定されている場合には Satellite は DHCP レコードにfilenameオプションを追加しません。PXE ローダーオプションによっては、filenameが以下のように変更されます。Expand PXE ローダーオプション ファイル名のエントリー 注記 PXELinux BIOS
pxelinux.0PXELinux UEFI
pxelinux.efiiPXE Chain BIOS
undionly.kpxePXEGrub2 UEFI
grub2/grubx64.efix64 はアーキテクチャーにより異なる場合があります
iPXE UEFI HTTP
http://capsule.example.com:8000/httpboot/ipxe-x64.efihttpboot機能が必要で、完全な URL としてfilenameをレンダリングします。ここでは capsule.example.com は、Satellite にある Capsule の既知のホスト名に置き換えます。Grub2 UEFI HTTP
http://capsule.example.com:8000/httpboot/grub2/grubx64.efihttpboot機能が必要で、完全な URL としてfilenameをレンダリングします。ここでは capsule.example.com は、Satellite にある Capsule の既知のホスト名に置き換えます。
3.3.2. 管理対象外 DHCPv6 のオプション リンクのコピーリンクがクリップボードにコピーされました!
IPv6 のみのネットワークで TFTP 経由でホストをプロビジョニングするには、DHCP サーバーが bootfile-url DHCP オプションで応答するように設定します。Satellite は DHCPv6 サービスを管理できないため、DHCP サーバーを手動で設定する必要があります。
bootfile-urlこのオプションの URL 値は、
pxelinux.0などの第 1 段階のブートローダーである TFTP Capsule 上のファイルを指す必要があります。設定例:Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.4. イメージベースのプロビジョニングの前提条件 リンクのコピーリンクがクリップボードにコピーされました!
ブート後の設定方法
finish ブート後設定スクリプトを使用するイメージには、Satellite Server や Capsule Server などのマネージド 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 を介して、デプロイされたイメージと関連付けられている、ユーザーとパスワードを承認すること。
- Satellite Server で SSH キーを使用して仮想マシンにアクセスできること。これは、仮想マシンが Satellite Server から設定後のスクリプトを受信するために必要です。
ブート前の初期化の設定方法
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 を参照してください。
3.4.1. インストーラーを使用した複数のサブネットまたはドメイン リンクのコピーリンクがクリップボードにコピーされました!
satellite-installer オプションでは、単一の DHCP サブネットまたは DNS ドメインしか定義できません。複数のサブネットを定義する方法の 1 つとして、カスタムの設定ファイルを使用します。
追加のサブネットまたはドメインごとに、/etc/foreman-installer/custom-hiera.yaml ファイルにエントリーを作成します。
satellite-installer を実行して、変更を加え、/etc/dhcp/dhcpd.conf に適切なエントリーが含まれていることを確認します。サブネットは、Satellite データベースに定義する必要があります。
3.4.2. ネットワーク設定の DNS オプション リンクのコピーリンクがクリップボードにコピーされました!
- --foreman-proxy-dns
-
DNS 機能を有効にします。このオプションは、
trueまたはfalseに設定します。 - --foreman-proxy-dns-provider
- 使用するプロバイダーを選択します。
- --foreman-proxy-dns-managed
-
インストーラーに ISC BIND を管理させます。これは、
nsupdateおよびnsupdate_gssプロバイダーを使用する場合にのみ関連します。このオプションは、trueまたはfalseに設定します。 - --foreman-proxy-dns-forwarders
- DNS フォワーダーを設定します。ISC BIND がインストーラーによって管理されている場合にのみ使用されます。これを DNS リカーサーに設定します。
- --foreman-proxy-dns-interface
-
DNS 要求をリッスンするためのインターフェイスを設定します。ISC BIND がインストーラーによって管理されている場合にのみ使用されます。これは、
eth1に設定します。 - --foreman-proxy-dns-reverse
- DNS 逆引きゾーン名です。ISC BIND がインストーラーによって管理されている場合にのみ使用されます。
- --foreman-proxy-dns-server
-
DNS サーバーのアドレスを設定します。
nsupdate、nsupdate_gss、およびinfobloxプロバイダーでのみ使用されます。 - --foreman-proxy-dns-zone
- DNS ゾーン名に設定します。ISC BIND がインストーラーによって管理されている場合にのみ使用されます。
satellite-installer --help を実行して、DNS およびその他の Capsule サービスに関連するその他のオプションを表示します。
3.4.3. ネットワーク設定の TFTP オプション リンクのコピーリンクがクリップボードにコピーされました!
- --foreman-proxy-tftp
-
TFTP サービスを有効にします。このオプションは、
trueまたはfalseに設定します。 - --foreman-proxy-tftp-managed
-
TFTP サービスを管理するため Foreman を有効にします。このオプションは、
trueまたはfalseに設定します。 - --foreman-proxy-tftp-servername
- 使用する TFTP サーバーを設定します。Capsule の IP アドレスを使用していることを確認してください。
satellite-installer --help を実行して、TFTP およびその他の Capsule サービスに関連するその他のオプションを表示します。
3.4.4. NAT 経由での TFTP サービスの使用 リンクのコピーリンクがクリップボードにコピーされました!
NAT 経由で Satellite TFTP サービスを使用できます。これには、全 NAT ルートまたはファイアウォールで、UDP のポート番号 69 の TFTP サービスを有効にし、TFTP の状態追跡機能も有効にする必要があります。詳細情報は、お使いの NAT デバイスのドキュメントを参照してください。
Red Hat Enterprise Linux 7 で NAT を使用する場合:
ファイアウォール設定で TFTP サービスを許可します。
firewall-cmd --add-service=tftp
# firewall-cmd --add-service=tftpCopy 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
Red Hat Enterprise Linux 6 で NAT を使用する場合:
UDP のポート番号 69 で TFTP サービスを許可するように、ファイアウォールを設定します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ip_conntrack_tftpカーネルの TFTP 状態モジュールを読み込みます。/etc/sysconfig/iptables-configファイルで、IPTABLES_MODULESの場所を特定して以下のようにip_conntrack_tftpを追加します。IPTABLES_MODULES="ip_conntrack_tftp"
IPTABLES_MODULES="ip_conntrack_tftp"Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.5. Satellite Server へのドメインの追加 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server はネットワーク上の各ホストのドメイン名を定義します。Satellite Server には、ドメイン名を割り当てる Capsule Server とドメインに関する情報が必要です。
既存のドメインの確認
Satellite Server には、Satellite Server のインストールの一環として関連するドメインがすでに作成されている可能性があります。コンテキストを Any Organization および Any Location に切り替えてから、ドメインの一覧でこれが存在するかどうかを確認します。
DNS サーバーの設定に関する考慮事項
DNS レコードの作成時に、Satellite は競合する DNS を検索して、ホスト名が使用されていないことを確認します。これにより、以下の DNS サーバーの 1 つに対する実行がチェックされます。
- システム全体のリゾルバー (Administer > Settings > Query local nameservers が true に設定されている場合)
- ホストに関連付けられたサブネットで定義されているネームサーバー
- ホストに関連付けられたドメイン名から SOA に照会される信頼できる NS レコード
DNS 競合の解決時にタイムアウトが発生した場合は、次の設定を確認してください。
- サブネットネームサーバーは、Satellite Server から到達可能である必要があります。
- ドメイン名には、Satellite Server から入手できる Start of Authority (SOA) レコードが必要です。
-
/etc/resolv.confファイルのシステムリゾルバーには、有効かつ機能する設定が必要です。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Infrastructure > Domains に移動して、Create Domain をクリックします。
- DNS Domain フィールドに、完全な DNS ドメイン名を入力します。
- Fullname フィールドで、プレーンテキストのドメイン名を入力します。
- Parameters タブでは、任意のドメインレベルのパラメーターを設定し、このドメインに割り当てられたホストに適用します。たとえば、テンプレートで使用するユーザー定義ブール値またはストリングパラメーターなどです。
- Add Parameter をクリックし、Name および Value フィールドに入力します。
- Locations タブをクリックして、ドメインがある場所を追加します。
- Organizations タブをクリックして、ドメインが属する組織を追加します。
- Submit をクリックして変更を保存します。
CLI 手順
hammer domain createコマンドを使用して、ドメインを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.6. Satellite Server へのサブネットの追加 リンクのコピーリンクがクリップボードにコピーされました!
Satellite は、新規ホストのインターフェイスを設定するので、サブネットごとの情報を Satellite Server に追加する必要があります。インターフェイスを設定するには、Satellite Server には、これらのインターフェイスを接続するネットワークに関する全情報を含める必要があります。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Infrastructure > Subnets に移動して、サブネットウィンドウで Create Subnet をクリックします。
- Name フィールドに、サブネットの名前を入力します。
- Description フィールドには、サブネットの説明を入力します。
- Network address フィールドには、サブネットのネットワークアドレスを入力します。
- Network prefix フィールドには、サブネットのネットワーク接頭辞を入力します。
- Network mask フィールドには、サブネットのネットワークマスクを入力します。
- Gateway address フィールドには、サブネットの外部ゲートウェイを入力します。
- Primary DNS server フィールドには、サブネットのプライマリー DNS を入力します。
- Secondary DNS server には、、サブネットのセカンダリー DNS を入力します。
- IPAM には、IP アドレス管理 (IPAM) に使用するメソッドを選択します。IPAM の詳細は、「ネットワークリソース」 を参照してください。
- 選択した IPAM メソッドの情報を入力します。Remote Execution タブをクリックして、リモート実行を制御する Capsule を選択します。
- Domains タブをクリックして、このサブネットに適用するドメインを選択します。
- Capsule タブをクリックして、DHCP、TFTP、および逆引き DNS サービスなど、サブネットの各サービスに適用する Capsule を選択します。
- Parameters タブをクリックして、任意のサブネットレベルのパラメーターを設定し、このサブネットに割り当てられたホストに適用します。たとえば、テンプレートで使用するユーザー定義ブール値またはストリングパラメーターなどです。
- Locations タブをクリックして、この Capsule を使用するロケーションを選択します。
- Organizations タブをクリックして、この Capsule を使用する組織を選択します。
- Submit をクリックしてサブネットの情報を保存します。
CLI 手順
以下のコマンドでサブネットを作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
第4章 PXE を使用したホストのプロビジョニング リンクのコピーリンクがクリップボードにコピーされました!
次のいずれかの方法を使用して、Satellite でベアメタルインスタンスをプロビジョニングできます。
- 無人プロビジョニング
- 新しいホストは MAC アドレスによって識別されます。Satellite Server は、PXE ブートプロセスを使用してホストをプロビジョニングします。
- Discovery を使用した無人プロビジョニング
- 新規ホストは PXE ブートを使用して Satellite Discovery サービスをロードします。このサービスはホストのハードウェア情報を特定し、ホストをプロビジョニング可能なホストとしてリスト表示します。詳細は、6章ネットワーク上のホストの検出 を参照してください。
- PXE なしのプロビジョニング
- 新しいホストには、Satellite Server が生成するブートディスクイメージがプロビジョニングされます。
BIOS および UEFI のサポート
Red Hat Satellite では、BIOS および UEFI ベースの PXE プロビジョニングの両方を実行できます。BIOS と UEFI の両方のインターフェイスは、コンピューターのオペレーティングシステムとファームウェア間のインタープリターとして機能し、起動時にハードウェアコンポーネントを初期化し、オペレーティングシステムを起動します。
PXE ローダー
Satellite のプロビジョニングでは、PXE ローダーオプションが、プロビジョニング時に使用する DHCP の filename オプションを定義します。
-
BIOS システムの場合、PXELinux BIOS オプションを選択して、プロビジョニングされたホストが TFTP 経由で
pxelinux.0ファイルをダウンロードできるようにします。 -
UEFI システムの場合、TFTP クライアントが
grubx64.efiファイルをダウンロードできるようにするには Grub2 UEFI オプションを選択します。また、UEFI HTTP クライアントが HTTP ブート機能を使用してgrubx64.efiをダウンロードできるようにするには Grub2 UEFI HTTP オプションを選択します。
Red Hat Satellite は UEFI セキュアブートをサポートします。SecureBoot PXE ローダーを使用すると、クライアントは shimx64.efi ブートストラップブートローダーをダウンロードして、署名された grubx64.efi をロードできるようになります。PXE ブートプロビジョニングには、Grub2 UEFI SecureBoot PXE ローダーを使用します。
デフォルトでは、セキュアブートが有効なホストで Satellite Server と同じ RHEL バージョンをプロビジョニングできます。Red Hat Enterprise Linux の他のバージョンをプロビジョニングするには、その RHEL バージョンの署名済み shim と GRUB2 バイナリーを指定する必要があります。詳細は、「セキュアブート対応ホストに Red Hat Enterprise Linux をプロビジョニングする Capsule の設定」 を参照してください。
サポート対象のワークフローに関する詳細は、Supported architectures and provisioning scenarios を参照してください。
ボンディングされたネットワークインターフェイス
インストールコンテンツのダウンロードなど、インストールプロセス時に Satellite が使用するボンディングされたインターフェイスを設定できます。プロビジョニングが完了すると、プロビジョニングされたシステムもボンディングインターフェイスを使用できます。
Satellite は、ネットワークスイッチとホストの両方で設定が必要なボンディングインターフェースを PXE ブートできません。
ホストがインストーラーまたはオペレーティングシステムのカーネルをロードした後、ボンディングは期待どおりに機能します。したがって、ボンディングインターフェイスでスイッチとホストの両方で設定が必要な場合は、ブートディスクを使用して PXE ブートの制限を回避できます。
4.1. ベアメタルプロビジョニングの前提条件 リンクのコピーリンクがクリップボードにコピーされました!
ベアメタルプロビジョニングの要件は次のとおりです。
ベアメタルホストのネットワークを管理する Capsule Server。無人プロビジョニングおよび Discovery ベースのプロビジョニングの場合に、Satellite Server は PXE サーバーの設定が必要です。
ネットワーク要件の詳細は、3章ネットワークの準備 を参照してください。
Discovery サービスの詳細は、6章ネットワーク上のホストの検出 を参照してください。
- ベアメタルホストまたは空の仮想マシン。
- Red Hat Enterprise Linux の同期済みのコンテンツリポジトリーを使用できる。詳細は、コンテンツの管理 の リポジトリーの同期 を参照してください。
- ホスト登録用のアクティベーションキーを用意している。詳細は、コンテンツの管理 の アクティベーションキーの作成 を参照してください。
自動プロビジョニングおよび PXE なしのプロビジョニングのセキュリティートークンに関する詳細は、「セキュリティートークンの有効期間の設定」 を参照してください。
4.2. セキュリティートークンの有効期間の設定 リンクのコピーリンクがクリップボードにコピーされました!
あらゆる種類のプロビジョニングを行う場合には、セキュリティー措置として、Satellite は自動的に一意のトークンを生成し、このトークンを PXE 設定ファイル (PXELinux、Grub2) のキックスタート URL に追加します。デフォルトでは、トークンの有効期限は 360 分です。ホストのプロビジョニング時に、この時間内にホストを再起動するようにしてください。トークンの有効期限が切れると、トークンは無効になり、404 エラーが送出され、オペレーティングシステムのインストーラーのダウンロードが失敗します。
手順
- Satellite Web UI で、Administer > Settings に移動して、Provisioning タブをクリックします。
-
トークンの期間 オプションを検索して、編集アイコンをクリックし、期間を変更するか、
0と入力してトークンの生成を無効にします。トークンの生成が無効になっている場合には、攻撃者はクライアントの IP アドレスを偽装して、Satellite Server から、暗号化された root パスワードなど、キックスタートをダウンロードできます。
4.3. 無人プロビジョニングによるホストの作成 リンクのコピーリンクがクリップボードにコピーされました!
無人プロビジョニングは、ホストのプロビジョニングの最も単純な形態です。この方法では、ホストの詳細を Satellite Server に入力し、ホストを起動する必要があります。Satellite Server は PXE 設定の管理や、ネットワークサービスの整理、およびホストのオペレーティングシステムと設定の提供を自動的に実行します。
このホストのプロビジョニングの方法では、プロセス中の対話が最小限になっています。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Hosts > Create Host に移動します。
- Name フィールドには、ホストの名前を入力します。
- オプション: Organization タブをクリックし、要件に合わせて組織コンテキストを変更します。
- オプション: Location タブをクリックし、要件に合わせてロケーションコンテキストを変更します。
- Host Group リストから、ホストを割り当てるホストグループを選択します。そのホストグループがフォームに入力されます。
- Interfaces タブをクリックし、ホストのインターフェイスで Edit をクリックします。
フィールドに値が投入されていることを確認します。特に以下に注意してください。
- Satellite は新規ホストの IP アドレスを自動的に割り当てます。
- MAC address フィールドには、ホストのプロビジョニングインターフェイスの MAC アドレスを入力します。これにより、PXE ブートプロセス中のホストが識別されます。
- Host タブの Name は DNS name になります。
- Satellite が、ホストの最初のインターフェイスに Managed、Primary、および Provision オプションを自動選択していることを確認します。選択されていない場合は、それらを選択してください。
- OK をクリックして保存します。別のインターフェイスを追加するには、Add Interface をクリックします。プロビジョニング および プライマリー には、インターフェイスは 1 つしか選択できません。
- Operating System タブをクリックして、すべてのフィールドに値が含まれていることを確認します。オペレーティングシステムの各要素を確認してください。
オプション: Provisioning template で Resolve をクリックし、新規ホストから使用する適切なプロビジョニングテンプレートを特定できることを確認します。
プロビジョニングテンプレートの関連付けの詳細は、「プロビジョニングテンプレート」 を参照してください。
-
Parameters タブで、Add parameter をクリックします。名前が
kt_activation_keysのパラメーターを追加し、string タイプを選択して、アクティベーションキーの名前を値として入力します。アクティベーションキーは、ホストと同じ組織に属している必要があります。複数のアクティベーションキーをコンマで区切って入力することもできます。 Submit をクリックしてホストの詳細を保存します。
ネットワークインターフェイスの詳細は、ホストの管理 の ネットワークインターフェイスの設定 を参照してください。
これで、ホストのエントリーおよび関連するプロビジョニングの設定が作成されます。これには、ベアメタルホストの PXE ブートに必要なディレクトリーとファイルの作成も含まれます。物理ホストを起動して、ブートモードを PXE に設定すると、ホストは Satellite Server の統合 Capsule の DHCP サービスを検出し、キックスタートツリーの HTTP エンドポイントを受信して、オペレーティングシステムをインストールします。
インストールが完了すると、ホストはアクティベーションキーを使用して Satellite Server に登録され、Red Hat Satellite Client 6 リポジトリーから必要な設定および管理ツールがインストールされます。
CLI 手順
hammer host createコマンドでホストを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow hammer host interface updateコマンドを使用し、ネットワークインターフェイスのオプションが設定されていることを確認します。hammer host interface update \ --host "_My_Host_Name_" \ --managed true \ --primary true \ --provision true
$ hammer host interface update \ --host "_My_Host_Name_" \ --managed true \ --primary true \ --provision trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow
4.4. PXE を使用しないプロビジョニングによるホストの作成 リンクのコピーリンクがクリップボードにコピーされました!
一部のハードウェアには PXE ブートインターフェイスがありません。Satellite では、PXE ブートなしでホストをプロビジョニングできます。これは、PXE を使用しないプロビジョニングとしても知られ、ホストが使用できるブート ISO が生成されます。この ISO を使用して、ホストは Satellite Server に接続してインストールメディアを起動し、オペレーティングシステムをインストールできます。
Satellite には PXE を使用しない検出サービスがあり、DHCP や TFTP など PXE ベースのサービスなしで操作できます。詳細は、「PXE なしのモードでの検出」 を参照してください。
ブート ISO の種類
ブート ISO には次の種類があります。
- 完全ホストイメージ
- 特定ホストのカーネルおよび初期 RAM ディスクイメージを含むブート ISO。このイメージは、ホストが正しくチェーンロードできない場合に役立ちます。プロビジョニングのテンプレートは、現在も Satellite Server からダウンロードされます。
- サブネットイメージ
- 特定ホストに関連付けられていないブート ISO。ISO はホストの MAC アドレスを Capsule Server に送信し、ホストのエントリーと照合します。イメージには IP アドレスの詳細は保存されず、ブートストラップするにはネットワーク上の DHCP サーバーにアクセスする必要があります。このイメージは、同じサブネットのプロビジョニングした NIC を伴うすべてのホストに対して汎用性があります。イメージは iPXE ブートファームウェアに基づいており、限られた数のネットワークカードのみがサポートされます。
完全ホストイメージ は、SYSLINUX と Grub をベースとしており、ほとんどのネットワークカードで動作します。サブネットイメージ を使用する場合、iPXE ベースのブートディスクで動作すると予想されるネットワークカードドライバーのリストは、ipxe.org でサポートされているハードウェア を参照してください。
完全なホストイメージ にはプロビジョニングトークンが含まれているため、生成されたイメージの有効期間は限られています。セキュリティートークンの設定の詳細は、「セキュリティートークンの有効期間の設定」 を参照してください。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Hosts > Create Host に移動します。
- Name フィールドには、ホストの名前を入力します。
- オプション: Organization タブをクリックし、要件に合わせて組織コンテキストを変更します。
- オプション: Location タブをクリックし、要件に合わせてロケーションコンテキストを変更します。
- Host Group リストから、ホストを割り当てるホストグループを選択します。そのホストグループがフォームに入力されます。
- Interfaces タブをクリックし、ホストのインターフェイスで Edit をクリックします。
フィールドに値が投入されていることを確認します。特に以下に注意してください。
- Satellite は新規ホストの IP アドレスを自動的に割り当てます。
- MAC address フィールドには、ホストのプロビジョニングインターフェイスの MAC アドレスを入力します。これにより、PXE ブートプロセス中のホストが識別されます。
- Host タブの Name は DNS name になります。
- Satellite が、ホストの最初のインターフェイスに Managed、Primary、および Provision オプションを自動選択していることを確認します。選択されていない場合は、それらを選択してください。
- OK をクリックして保存します。別のインターフェイスを追加するには、Add Interface をクリックします。プロビジョニング および プライマリー には、インターフェイスは 1 つしか選択できません。
- Operating System タブをクリックして、すべてのフィールドに値が含まれていることを確認します。オペレーティングシステムの各要素を確認してください。
Provisioning Templates で Resolve をクリックして、新しいホストが使用する適切なプロビジョニングテンプレートを識別できることを確認します。
プロビジョニングテンプレートの関連付けの詳細は、「プロビジョニングテンプレート」 を参照してください。
-
Parameters タブで、Add parameter をクリックします。名前が
kt_activation_keysのパラメーターを追加し、string タイプを選択して、アクティベーションキーの名前を値として入力します。アクティベーションキーは、ホストと同じ組織に属している必要があります。複数のアクティベーションキーをコンマで区切って入力することもできます。 - Submit をクリックしてホストの詳細を保存します。これで、ホストのエントリーが作成され、ホストの詳細ページが表示されます。
Satellite Server からブートディスクをダウンロードします。
- ホストの詳細ページの Full host image の場合は、縦リーダー記号をクリックして Full host 'My_Host_Name' イメージ を選択します。
- サブネットイメージ の場合は、Infrastructure > Subnets に移動し、必要なサブネットの Actions 列のドロップダウンメニューをクリックして、Subnet generic image を選択します。
-
必要に応じて、
ddユーティリティーまたはlivecd-toolsを使用して USB ストレージデバイスに ISO を書き込みます。 ホストを起動して、ISO または USB ストレージデバイスからブートする場合には、ホストは Satellite Server に接続し、キックスタートツリーからオペレーティングシステムのインストールを開始します。
インストールが完了すると、ホストはアクティベーションキーを使用して Satellite Server に登録され、Red Hat Satellite Client 6 リポジトリーから必要な設定および管理ツールがインストールされます。
CLI 手順
hammer host createコマンドを使用してホストを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow hammer host interface updateコマンドを使用し、お使いのネットワークインターフェイスのオプションが設定されていることを確認します。hammer host interface update \ --host "My_Host_Name" \ --managed true \ --primary true \ --provision true
$ hammer host interface update \ --host "My_Host_Name" \ --managed true \ --primary true \ --provision trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow Hammer bootdiskコマンドを使用して、Satellite Server からブートディスクをダウンロードします。完全ホストイメージ 向け。
hammer bootdisk host \ --full true \ --host My_Host_Name
$ hammer bootdisk host \ --full true \ --host My_Host_NameCopy to Clipboard Copied! Toggle word wrap Toggle overflow サブネットイメージ 向け。
hammer bootdisk subnet --subnet My_Subnet_Name
$ hammer bootdisk subnet --subnet My_Subnet_NameCopy to Clipboard Copied! Toggle word wrap Toggle overflow
これにより、使用するホストのブート ISO が作成されます。
-
必要に応じて、
ddユーティリティーまたはlivecd-toolsを使用して USB ストレージデバイスに ISO を書き込みます。 物理ホストを起動して、ISO または USB ストレージデバイスからブートする場合には、ホストは Satellite Server に接続し、キックスタートツリーからオペレーティングシステムのインストールを開始します。
インストールが完了すると、ホストはアクティベーションキーを使用して Satellite Server に登録され、Red Hat Satellite Client 6 リポジトリーから必要な設定および管理ツールがインストールされます。
4.5. UEFI HTTP ブートプロビジョニングを使用したホストの作成 リンクのコピーリンクがクリップボードにコピーされました!
UEFI HTTP ブートを使用して、Satellite からホストをプロビジョニングできます。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
前提条件
- HTTP 起動要件を満たすようにしてください。詳細は、概要、概念、およびデプロイメントの考慮事項 の HTTP ブート を参照してください。
手順
foreman-proxy-http、foreman-proxy-httpbootおよびforeman-proxy-tftp機能を有効にします。satellite-installer \ --foreman-proxy-http true \ --foreman-proxy-httpboot true \ --foreman-proxy-tftp true
# satellite-installer \ --foreman-proxy-http true \ --foreman-proxy-httpboot true \ --foreman-proxy-tftp trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Capsule で TFTP および HTTPBoot 機能が認識されていることを確認します。Satellite Web UI で、Infrastructure > Capsules に移動し、Capsule をクリックして、認識されている機能のリストを表示します。不足している機能がある場合は、Refresh Features をクリックします。
- Capsule がプロビジョニングサブネットに関連付けられていることを確認します。Satellite Web UI で、Infrastructure > Subnets > Edit Subnet > Capsules に移動し、TFTP および HTTPBoot オプションの両方で Capsule を選択します。
- OK をクリックして保存します。
- Satellite Web UI で、Hosts > Create Host に移動します。
- Name フィールドには、ホストの名前を入力します。
- オプション: Organization タブをクリックし、要件に合わせて組織コンテキストを変更します。
- オプション: Location タブをクリックし、要件に合わせてロケーションコンテキストを変更します。
- Host Group リストから、ホストを割り当てるホストグループを選択します。そのホストグループがフォームに入力されます。
- Interfaces タブをクリックし、ホストのインターフェイスで Edit をクリックします。
フィールドに値が投入されていることを確認します。特に以下に注意してください。
- Satellite は新規ホストの IP アドレスを自動的に割り当てます。
- MAC address フィールドには、ホストのプロビジョニングインターフェイスの MAC アドレスを入力します。これにより、PXE ブートプロセス中のホストが識別されます。
- Host タブの Name は DNS name になります。
- Satellite が、ホストの最初のインターフェイスに Managed、Primary、および Provision オプションを自動選択していることを確認します。選択されていない場合は、それらを選択してください。
- OK をクリックして保存します。別のインターフェイスを追加するには、Add Interface をクリックします。プロビジョニング および プライマリー には、インターフェイスは 1 つしか選択できません。
- Operating System タブをクリックして、すべてのフィールドに値が含まれていることを確認します。オペレーティングシステムの各要素を確認してください。
- PXE Loader のリストから Grub2 UEFI HTTP を選択します。
オプション: Provisioning template で Resolve をクリックし、新規ホストから使用する適切なプロビジョニングテンプレートを特定できることを確認します。
プロビジョニングテンプレートの関連付けの詳細は、「プロビジョニングテンプレートの作成」 を参照してください。
-
Parameters タブで、Add parameter をクリックします。名前が
kt_activation_keysのパラメーターを追加し、string タイプを選択して、アクティベーションキーの名前を値として入力します。アクティベーションキーは、ホストと同じ組織に属している必要があります。複数のアクティベーションキーをコンマで区切って入力することもできます。 Submit をクリックしてホストの詳細を保存します。
ネットワークインターフェイスの詳細は、ホストの管理 の ネットワークインターフェイスの設定 を参照してください。
- ネットワークから UEFI モードで起動するようにホストを設定します。
- ホストを起動します。
- 起動メニューから、Kickstart default PXEGrub2 を選択します。
これで、ホストのエントリーおよび関連するプロビジョニングの設定が作成されます。これには、ベアメタルホストの UEFI ブートに必要なディレクトリーとファイルの作成も含まれます。物理ホストを起動して、ブートモードを UEFI HTTP に設定すると、ホストは定義済みの DHCP サービスを検出し、キックスタートツリーで Capsule の HTTP エンドポイントを受信して、オペレーティングシステムをインストールします。
インストールが完了すると、ホストはアクティベーションキーを使用して Satellite Server に登録され、Red Hat Satellite Client 6 リポジトリーから必要な設定および管理ツールがインストールされます。
CLI 手順
foreman-proxy-http、foreman-proxy-httpbootおよびforeman-proxy-tftp true機能を有効にします。satellite-installer \ --foreman-proxy-http true \ --foreman-proxy-httpboot true \ --foreman-proxy-tftp true
# satellite-installer \ --foreman-proxy-http true \ --foreman-proxy-httpboot true \ --foreman-proxy-tftp trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow hammer host createコマンドでホストを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow hammer host interface updateコマンドを使用し、ネットワークインターフェイスのオプションが設定されていることを確認します。hammer host interface update \ --host "My_Host_Name" \ --managed true \ --primary true \ --provision true
$ hammer host interface update \ --host "My_Host_Name" \ --managed true \ --primary true \ --provision trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow - ネットワークから UEFI モードで起動するようにホストを設定します。
- ホストを起動します。
- 起動メニューから、Kickstart default PXEGrub2 を選択します。
これで、ホストのエントリーおよび関連するプロビジョニングの設定が作成されます。これには、ベアメタルホストの UEFI ブートに必要なディレクトリーとファイルの作成も含まれます。物理ホストを起動して、ブートモードを UEFI HTTP に設定すると、ホストは定義済みの DHCP サービスを検出し、キックスタートツリーで Capsule の HTTP エンドポイントを受信して、オペレーティングシステムをインストールします。
インストールが完了すると、ホストはアクティベーションキーを使用して Satellite Server に登録され、Red Hat Satellite Client 6 リポジトリーから必要な設定および管理ツールがインストールされます。
4.6. セキュアブート対応ホストに Red Hat Enterprise Linux をプロビジョニングする Capsule の設定 リンクのコピーリンクがクリップボードにコピーされました!
セキュアブートは、ホストの起動から Linux カーネルモジュールの読み込みまで信頼チェーンに従います。最初に読み込まれた shim が、次の再起動が行われるまで、kexec システムコールを使ってどのディストリビューションを起動できるかを決定します。
セキュアブートが有効になっているホストでは、Satellite Server と同じ RHEL バージョンをすぐにプロビジョニングできるため、この手順をスキップできます。他の RHEL バージョンをプロビジョニングするには、その RHEL バージョン向けの署名済み shim と GRUB2 バイナリーを指定する必要があります。
サブネットの各 TFTP Capsule で以下の設定手順を実行し、そのサブネットでセキュアブートが有効なホストをプロビジョニングする必要があります。
Red Hat Enterprise Linux は、x86_64 アーキテクチャーでのみ Secure Boot をサポートします。
前提条件
-
cpioパッケージが Capsule にインストールされている。
手順
ホストのオペレーティングシステムの shim および GRUB2 バイナリーのパスを設定します。
BOOTLOADER_PATH="/var/lib/tftpboot/bootloader-universe/pxegrub2/redhat/default/x86_64"
# BOOTLOADER_PATH="/var/lib/tftpboot/bootloader-universe/pxegrub2/redhat/default/x86_64"Copy to Clipboard Copied! Toggle word wrap Toggle overflow ホストのオペレーティングシステムのバージョンに合わせて、特定のバージョンの shim および GRUB2 バイナリーが必要な場合は、
defaultを、ドットで区切られたオペレーティングシステムの Major バージョンと Minor バージョンに置き換えます。Minor バージョンが設定されていない場合は、defaultを Major バージョンに置き換えます。Red Hat では、本当に必要な場合を除き、バージョン固有の shim と GRUB2 バイナリーを使用しないことを推奨しています。
ホストのオペレーティングシステム用の shim と GRUB2 バイナリーを保存するディレクトリーを作成します。
install -o foreman-proxy -g foreman-proxy -d $BOOTLOADER_PATH
# install -o foreman-proxy -g foreman-proxy -d $BOOTLOADER_PATHCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
ホストのオペレーティングシステム用の shim パッケージおよび GRUB2 パッケージをダウンロードします。
grub2-efi-x64およびshim-x64パッケージは、Red Hat カスタマーポータルの パッケージブラウザー からダウンロードできます。 shim と GRUB2 バイナリーを展開します。
rpm2cpio /tmp/grub2-efi-x64.rpm | cpio -idv --directory /tmp rpm2cpio /tmp/shim-x64.rpm | cpio -idv --directory /tmp
# rpm2cpio /tmp/grub2-efi-x64.rpm | cpio -idv --directory /tmp # rpm2cpio /tmp/shim-x64.rpm | cpio -idv --directory /tmpCopy to Clipboard Copied! Toggle word wrap Toggle overflow shim および GRUB2 バイナリーをホストのプロビジョニングに利用できるようにします。
cp /tmp/boot/efi/EFI/redhat/grubx64.efi $BOOTLOADER_PATH/grubx64.efi cp /tmp/boot/efi/EFI/redhat/shimx64.efi $BOOTLOADER_PATH/shimx64.efi ln -sr $BOOTLOADER_PATH/grubx64.efi $BOOTLOADER_PATH/boot.efi ln -sr $BOOTLOADER_PATH/shimx64.efi $BOOTLOADER_PATH/boot-sb.efi chmod 644 $BOOTLOADER_PATH/grubx64.efi $BOOTLOADER_PATH/shimx64.efi
# cp /tmp/boot/efi/EFI/redhat/grubx64.efi $BOOTLOADER_PATH/grubx64.efi # cp /tmp/boot/efi/EFI/redhat/shimx64.efi $BOOTLOADER_PATH/shimx64.efi # ln -sr $BOOTLOADER_PATH/grubx64.efi $BOOTLOADER_PATH/boot.efi # ln -sr $BOOTLOADER_PATH/shimx64.efi $BOOTLOADER_PATH/boot-sb.efi # chmod 644 $BOOTLOADER_PATH/grubx64.efi $BOOTLOADER_PATH/shimx64.efiCopy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
ブートローダーディレクトリーの内容を確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
次のステップ
- Grub2 UEFI SecureBoot PXE ローダーを使用して、セキュアブート対応の Red Hat Enterprise Linux ホストをプロビジョニングできるようになりました。
4.7. プロビジョニング中の SSH キーのデプロイ リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、ユーザーに追加した SSH キーは、プロビジョニング中にデプロイします。ユーザーに SSH キーを追加する方法は、Red Hat Satellite の管理 の ユーザーの SSH キー管理 を参照してください。
手順
- Satellite Web UI で、Hosts > Templates > Provisioning Templates に移動します。
- プロビジョニングテンプレートを作成するか、クローンを作成して既存のテンプレートを編集します。詳細は、「プロビジョニングテンプレートの作成」 を参照してください。
- テンプレートで テンプレート タブをクリックします。
Template editor のフィールドで、
create_usersスニペットを%postセクションに追加します。<%= snippet('create_users') %><%= snippet('create_users') %>Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Default チェックボックスを選択します。
- Association タブをクリックします。
- Application Operating Systems リストから適切なオペレーティングシステムを選択します。
- Submit をクリックしてプロビジョニングテンプレートを保存します。
プロビジョニングテンプレートに関連付けられたホストを作成するか、変更されたテンプレートに関連付けられたオペレーティングシステムを使用してホストを再構築します。詳細は、ホストの管理 の ホストの作成 を参照してください。
Owned by ユーザーの SSH キーは、プロビジョニングプロセス中に
create_usersスニペットが実行されると、自動的に追加されます。Owned by は、個人のユーザーやユーザーグループに設定することができます。Owned by をユーザーグループに設定すると、そのユーザーグループ内の全ユーザーの SSH キーが自動的に追加されます。
第5章 iPXE を使用したプロビジョニング時間の短縮 リンクのコピーリンクがクリップボードにコピーされました!
iPXE は、オープンソースのネットワークブートファームウェアです。HTTP サーバーからのブートなどの追加機能で強化された完全な PXE 実装を提供します。iPXE の詳細は、iPXE の Web サイト を参照してください。
iPXE ネットワークブートは 非推奨 になり、今後のリリースで削除される予定です。
以下の制限により PXE を使用できない場合は、iPXE を使用できます。
- マネージド外の DHCP サーバーのあるネットワーク。
- ファイアウォールの制限などにより到達できない PXE サービス。
- 低帯域幅ネットワークなどが原因で、信頼性の低い TFTP UDP ベースのプロトコル。
5.1. iPXE を使用するための前提条件 リンクのコピーリンクがクリップボードにコピーされました!
以下の場合は、iPXE を使用して仮想マシンを起動できます。
- 仮想マシンが iPXE をプライマリーファームウェアとして使用するハイパーバイザー上で動作する。
- 仮想マシンが BIOS モードにある。この場合、iPXE をチェーンブートし、HTTP プロトコルを使用してブートするように PXELinux を設定できます。
HTTP を使用して UEFI モードで仮想マシンを起動する場合は、代わりに 「UEFI HTTP ブートプロビジョニングを使用したホストの作成」 の説明に従います。
サポート性
Red Hat は、Red Hat Satellite での iPXE を正式にサポートしていません。詳細は、Red Hat ナレッジベース の Supported architectures and kickstart scenarios in Satellite 6 を参照してください。
ホスト要件
- プロビジョニングインターフェイスの MAC アドレスが、ホスト設定と一致する。
- ホストのプロビジョニングインターフェイスには、有効な DHCP 予約がある。
- NIC は PXE ブートが可能である。詳細は、supported hardware on ipxe.org のページで、iPXE ベースのブートディスクと機能することが想定されているハードウェアドライブのリストを参照してください。
- NIC は iPXE と互換性がある。
5.2. iPXE 環境の設定 リンクのコピーリンクがクリップボードにコピーされました!
iPXE プロビジョニングに使用するすべての Capsule で iPXE 環境を設定します。
Red Hat Enterprise Linux では、iPXE のセキュリティー関連機能はサポートされておらず、iPXE バイナリーはセキュリティー機能なしで構築されています。このため、HTTPS ではなく、HTTP のみが使用できます。詳細情報は、Red Hat Enterprise Linux HTTPS support in iPXE を参照してください。
前提条件
Satellite Server の代わりに Capsule Server を使用する場合は、Capsule Server が適切に設定されていることを確認してください。
重要Capsule Server を Satellite Server 上の信頼できるプロキシーのリストに追加することが重要です。
詳細は、Capsule Server のインストール の ホストの登録とプロビジョニングのための Capsule の設定 を参照してください。
手順
Capsule で TFTP サービスおよび HTTPboot サービスを有効にします。
satellite-installer \ --foreman-proxy-httpboot true \ --foreman-proxy-tftp true
# satellite-installer \ --foreman-proxy-httpboot true \ --foreman-proxy-tftp trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow Capsule に
ipxe-bootimgsパッケージをインストールします。satellite-maintain packages install ipxe-bootimgs
# satellite-maintain packages install ipxe-bootimgsCopy to Clipboard Copied! Toggle word wrap Toggle overflow iPXE ファームウェアを TFTP ディレクトリーにコピーします。
Linux カーネルヘッダーで iPXE ファームウェアをコピーします。
cp /usr/share/ipxe/ipxe.lkrn /var/lib/tftpboot/
# cp /usr/share/ipxe/ipxe.lkrn /var/lib/tftpboot/Copy to Clipboard Copied! Toggle word wrap Toggle overflow UNDI iPXE ファームウェアをコピーします。
cp /usr/share/ipxe/undionly.kpxe /var/lib/tftpboot/undionly-ipxe.0
# cp /usr/share/ipxe/undionly.kpxe /var/lib/tftpboot/undionly-ipxe.0Copy 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 HTTP URL を設定します。
Satellite Server を起動に使用する場合は、Satellite Server で次のコマンドを実行します。
satellite-installer \ --foreman-proxy-dhcp-ipxefilename "http://satellite.example.com/unattended/iPXE?bootstrap=1"
# satellite-installer \ --foreman-proxy-dhcp-ipxefilename "http://satellite.example.com/unattended/iPXE?bootstrap=1"Copy to Clipboard Copied! Toggle word wrap Toggle overflow Capsule Server を起動に使用する場合は、Capsule Server で以下のコマンドを実行します。
satellite-installer --foreman-proxy-dhcp-ipxe-bootstrap true
# satellite-installer --foreman-proxy-dhcp-ipxe-bootstrap trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow
5.3. 仮想マシンの起動 リンクのコピーリンクがクリップボードにコピーされました!
仮想化ハイパーバイザーの一部は、PXE ブートのプライマリーファームウェアとして iPXE を使用します。このようなハイパーバイザーを使用する場合は、TFTP および PXELinux なしで仮想マシンを起動できます。
仮想マシンの起動には、次のワークフローがあります。
- 仮想マシンが起動します。
- iPXE が DHCP を使用して、HTTP URL を含むネットワーク認証情報を取得します。
- iPXE は、Capsule から iPXE ブートストラップテンプレートをロードします
- iPXE は、Capsule から URL パラメーターとして MAC を使用して iPXE テンプレートをロードします
- iPXE が、インストーラーのカーネルおよび初期 RAM ディスクをロードします。
前提条件
お使いのハイパーバイザーが iPXE をサポートしている。以下の仮想化ハイパーバイザーは、iPXE をサポートします。
- libvirt
- Red Hat Virtualization (非推奨)
- iPXE 環境を設定している。詳細は、「iPXE 環境の設定」 を参照してください。
以下で説明するように、Satellite に同梱されている元のテンプレートを使用できます。元のテンプレートを変更する必要がある場合は、テンプレートのクローンを作成し、クローンを編集して、元のテンプレートの代わりにクローンを関連付けます。詳細は、「プロビジョニングテンプレートのクローン作成」 を参照してください。
手順
- Satellite Web UI で、Hosts > Templates > Provisioning Templates に移動します。
-
Kickstart default iPXEテンプレートを検索します。 - テンプレートの名前をクリックします。
- Association タブをクリックし、ホストが使用するオペレーティングシステムを選択します。
- Locations タブをクリックして、ホストがある場所を追加します。
- Organizations タブをクリックして、ホストが属する組織を追加します。
- Submit をクリックして変更を保存します。
- Satellite Web UI で、Hosts > Operating systems に移動し、ホストのオペレーティングシステムを選択します。
- Templates タブをクリックします。
-
iPXE template リストから、
Kickstart default iPXEテンプレートを選択します。 - Submit をクリックして変更を保存します。
- Satellite Web UI で、Hosts > All Hosts に移動します。
- Hosts のページで、使用するホストを選択します。
- Operating System タブを選択します。
-
PXE Loader を
iPXE Embeddedに設定します。 - Templates タブを選択します。
- Provisioning Templates で Resolve をクリックし、iPXE template が必要なテンプレートに解決されることを確認します。
- Submit をクリックしてホスト設定を保存します。
5.4. PXELinux からの iPXE のチェーンブート リンクのコピーリンクがクリップボードにコピーされました!
ネットワーク通信用の組み込みドライバー (ipxe.lkrn) またはユニバーサルネットワークデバイスインターフェイス (UNDI) (undionly-ipxe.0) を使用するように iPXE をセットアップできます。ネットワークハードウェアの機能と iPXE ドライバーの可用性に応じて、どちらのファイルをロードするかを選択できます。
UNDI は、TFTP クライアントを実装する最小限の UDP/IP スタックです。ただし、UNDI は HTTP などの他のプロトコルをサポートできません。iPXE で HTTP を使用するには、組み込みのドライバー (ipxe.lkrn) を備えた iPXE ビルドを使用します。
iPXE のチェーンブートには次のワークフローがあります。
- ホストの電源をオンにします。
- PXE ドライバーは、DHCP を使用してネットワークの認証情報を取得します。
-
PXE ドライバーは、TFTP を使用して PXELinux ファームウェア
pxelinux.0を取得します。 - PXELinux は、TFTP サーバーの設定ファイルを検索します。
-
PXELinux は、iPXE
ipxe.lkrnまたはundionly-ipxe.0をチェーンロードします。 - iPXE が、DHCP を再度使用して、HTTP URL を含むネットワーク認証情報を取得します。
- iPXE は、Templates Capsule から iPXE テンプレートをチェーンロードします。
- iPXE が、インストーラーのカーネルおよび初期 RAM ディスクをロードします。
前提条件
- iPXE 環境を設定している。詳細は、「iPXE 環境の設定」 を参照してください。
以下で説明するように、Satellite に同梱されている元のテンプレートを使用できます。元のテンプレートを変更する必要がある場合は、テンプレートのクローンを作成し、クローンを編集して、元のテンプレートの代わりにクローンを関連付けます。詳細は、「プロビジョニングテンプレートのクローン作成」 を参照してください。
手順
- Satellite Web UI で、Hosts > Templates > Provisioning Templates に移動します。
必要な PXELinux テンプレートを検索します。
-
ipxe.lkrnを使用するためのPXELinux chain iPXE -
undionly-ipxe.0を使用するためのPXELinux chain iPXE UNDI
-
- 使用するテンプレートの名前をクリックします。
- Association タブをクリックし、ホストが使用するオペレーティングシステムを選択します。
- Locations タブをクリックして、ホストがある場所を追加します。
- Organizations タブをクリックして、ホストが属する組織を追加します。
- Submit をクリックして変更を保存します。
-
Provisioning Templates ページで、
Kickstart default iPXEテンプレートを検索します。 - テンプレートの名前をクリックします。
- Association タブをクリックし、ホストが使用するオペレーティングシステムにテンプレートを関連付けます。
- Locations タブをクリックして、ホストがある場所を追加します。
- Organizations タブをクリックして、ホストが属する組織を追加します。
- Submit をクリックして変更を保存します。
- Satellite Web UI で、Hosts > Operating systems に移動し、ホストのオペレーティングシステムを選択します。
- Templates タブをクリックします。
- PXELinux template リストから、使用するテンプレートを選択します。
-
iPXE template リストから、
Kickstart default iPXEテンプレートを選択します。 - Submit をクリックして変更を保存します。
- Satellite Web UI で、Configure > Host Groups に移動し、設定するホストグループを選択します。
- Operating System タブを選択します。
- Architecture と Operating system を選択します。
PXE Loader を設定します。
-
PXELinux BIOSを選択して、PXELinux から iPXE (ipxe.lkrn) をチェーンブートします。 -
iPXE Chain BIOSを選択して、undionly-ipxe.0を直接ロードします。
-
第6章 ネットワーク上のホストの検出 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Satellite は、Satellite インベントリーに含まれていないネットワーク上に存在するホストを検出できます。これらのホストは、ハードウェアの検出を実行し、この情報を Satellite Server に送り返す Discovery イメージを起動します。これにより、各ホストの MAC アドレスを入力せずに Satellite Server でプロビジョニング可能なホストのリストが作成されます。
6.1. Discovery を使用するための前提条件 リンクのコピーリンクがクリップボードにコピーされました!
検出に使用する予定のすべてのサブネットの DHCP 範囲が、管理対象 DHCP サービス用に設定された DHCP リースプールと重複していないことを確認します。DHCP 範囲は Satellite Web UI で設定されますが、リースプール範囲は
satellite-installerコマンドを使用して設定されます。たとえば、10.1.0.0/16 ネットワーク範囲では、次の IP アドレスブロックを割り当てることができます。
- リース用: 10.1.0.0 から 10.1.127.255。
- 予約用: 10.1.128.0 から 10.1.255.254。
- 検出対象のホストまたは仮想マシンに少なくとも 1200 MB のメモリーがあることを確認します。メモリーが不足すると、Discovery イメージがメモリー内に展開されるため、各種のランダムなカーネルパニックエラーが発生する可能性があります。
6.2. Discovery サービスのインストール リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server では、Discovery サービスはデフォルトで有効になっていますが、さらに、TFTP サービスを提供する任意の Capsule Server で検出サービスを有効にすることもできます。
Discovery サービスには、Red Hat Satellite で提供される Discovery イメージが必要です。Discovery イメージは、ホスト上で起動される最小限のオペレーティングシステムを使用して、初期のハードウェア情報を取得し、Satellite にチェックインします。
Satellite で提供される Foreman Discovery イメージは、Red Hat Enterprise Linux 9 をベースにしています。
手順
Satellite Server に
foreman-discovery-imageをインストールします。satellite-maintain packages install foreman-discovery-image
# satellite-maintain packages install foreman-discovery-imageCopy to Clipboard Copied! Toggle word wrap Toggle overflow foreman-discovery-imageパッケージは、Discovery ISO を/usr/share/foreman-discovery-image/ディレクトリーにインストールします。また、このパッケージは PXE ブートイメージを/var/lib/tftpboot/boot/fdi-imageディレクトリーに展開します。Capsule Server を使用する場合は、Capsule Server に Discovery プラグインをインストールします。
satellite-installer \ --enable-foreman-proxy-plugin-discovery
# satellite-installer \ --enable-foreman-proxy-plugin-discoveryCopy to Clipboard Copied! Toggle word wrap Toggle overflow Capsule Server を使用する場合は、Capsule Server に
foreman-discovery-imageをインストールします。satellite-maintain packages install foreman-discovery-image
# satellite-maintain packages install foreman-discovery-imageCopy to Clipboard Copied! Toggle word wrap Toggle overflow また、このパッケージは PXE ブートイメージを
/var/lib/tftpboot/boot/fdi-imageディレクトリーに展開します。検出可能なホストを含むサブネットの Discovery Capsule を設定します。
- Satellite Web UI で、Infrastructure > Subnets に移動します。
- サブネットを選択します。
- Capsules タブで、使用する Discovery Capsule を選択します。
使用するサブネットごとにこれを実行します。
6.3. PXE モードでの検出 リンクのコピーリンクがクリップボードにコピーされました!
Satellite には、DHCP および TFTP サービスを使用する PXE ベースの Discovery サービスが含まれます。不明なノードを検出するには、Satellite Server または Capsule Server から Discovery カーネルと初期 RAM ディスクイメージを起動します。検出されたノードのインストールがスケジュールされると、ノードは再起動し、設定された PXE ベースのホストプロビジョニングを続行します。
図6.1 PXE モードでの検出ワークフロー
6.3.1. デフォルトの PXE ブートオプションとしての Discovery の設定 リンクのコピーリンクがクリップボードにコピーされました!
現在の Satellite インベントリーに存在しないホストを起動するデフォルトのサービスとして、Discovery サービスを設定します。
不明なホストを PXE モードで起動すると、Satellite Server または Capsule Server はデフォルトの起動オプションを含む起動メニューを提供します。ブートメニューには、local と discovery の 2 つの基本的なオプションがあります。グローバル PXE テンプレートのデフォルト設定では、ローカルハードドライブからホストを起動するために local が選択されます。Discovery イメージから起動するには、Discovery を選択するように設定を変更します。
前提条件
-
Satellite アカウントに、
view_settings、edit_settings、およびview_provisioning_templatesのパーミッションがある。
手順
- Satellite Web UI で、Administer > Settings に移動します。
-
Provisioning タブの Default PXE global template entry フィールドに
discoveryと入力します。 - Hosts > Templates > Provisioning Templates に移動します。
Build PXE Default をクリックします。
ブートメニューは、以下のファイルとして構築されます。
-
/var/lib/tftpboot/pxelinux.cfg/default -
/var/lib/tftpboot/grub2/grub.cfg
Satellite はデフォルトのブートメニューをすべての TFTP Capsule に伝播します。
-
6.3.2. PXE モードでの検出の実行 リンクのコピーリンクがクリップボードにコピーされました!
PXE モードでの検出では、Discovery PXE ブートイメージが使用され、無人で実行されます。
前提条件
- Discovery サービスとイメージがインストールされている。詳細は、「Discovery サービスのインストール」 を参照してください。
- Discovery をデフォルトのブートオプションとして設定している。詳細は、「デフォルトの PXE ブートオプションとしての Discovery の設定」 を参照してください。
手順
- ホストの電源をオンにするか、再起動します。数分後に Discovery イメージの起動が完了し、ホストにはステータス画面が表示されます。
検証
- Satellite Web UI には、新しく検出されたホストに関する通知が表示されます。
次のステップ
- Satellite Web UI で、Hosts > Discovered Hosts に移動して、新たに検出されたホストを表示します。検出されたホストのプロビジョニングに関する詳細情報は、「検出されたホストからのホストの作成」 を参照してください。
6.3.3. Discovery PXE ブートのカスタマイズ リンクのコピーリンクがクリップボードにコピーされました!
Satellite は、次のグローバルプロビジョニングテンプレートから PXE ブートメニューを構築します。
-
BIOS プロビジョニング用:
PXELinux global default -
UEFI プロビジョニング用:
PXEGrub global defaultおよびPXEGrub2 global default。
PXE ブートメニューは、TFTP が有効になっている Satellite Server および Capsules で利用できます。
Discovery メニュー項目は、オペレーティングシステムの Linux カーネルを使用し、カーネルパラメーターを渡して Discovery サービスを設定します。次のスニペットを変更することで、渡されたカーネルパラメーターをカスタマイズできます。
pxelinux_discovery: このスニペットはPXELinux global defaultテンプレートに含まれています。このスニペットにより、検出ブートメニューオプションがレンダリングされます。
KERNELおよびAPPENDオプションは、Discovery カーネルと初期 RAM ディスクを起動します。APPENDオプションにはカーネルパラメーターが含まれます。-
pxegrub_discovery: このスニペットはPXEGrub global defaultテンプレートに含まれています。ただし、Discovery は GRUB 1.x では実装されていません。 pxegrub2_discovery: このスニペットは、PXEGrub2 global defaultテンプレートに含まれています。このスニペットにより、Discovery GRUB2 メニューエントリーがレンダリングされます。
common変数には、カーネルパラメーターが含まれます。
カーネルパラメーターの詳細は、「Discovery カスタマイズ用のカーネルパラメーター」 を参照してください。
手順
- Satellite Web UI で、Hosts > Templates > Provisioning Templates に移動します。
- カスタマイズするスニペットのクローンを作成して編集します。詳細は、「プロビジョニングテンプレートのクローン作成」 を参照してください。
- 元のスニペットを含むテンプレートのクローンを作成して編集します。元のスニペットの代わりにカスタムスニペットを含めます。詳細は、「プロビジョニングテンプレートのクローン作成」 を参照してください。
- Administer > Settings に移動します。
- Provisioning タブをクリックします。
- 適切な Global default PXE\ template* 設定で、カスタムテンプレートを選択します。
- Hosts > Templates > Provisioning Templates に移動します。
- Build PXE Default をクリックします。これにより、Satellite Server およびすべての TFTP Capsule 上のデフォルトの PXE ブートメニューが更新されます。
6.3.4. 複数の Capsule Server からのホストの検出 リンクのコピーリンクがクリップボードにコピーされました!
Satellite はすべての TFTP Capsule に同じテンプレートをデプロイし、Capsule のホスト名をレンダリングするために使用できる変数またはマクロはありません。ハードコードされた proxy.url は、複数の TFTP Capsule を連携できません。
回避策として、Build PXE Defaults をクリックするたびに、SSH を使用してすべての Capsule Server の TFTP ディレクトリーの設定ファイルを編集するか、適切なサブネットに共通 DNS エイリアスを使用してください。Capsule Server を使用して Discovery の手順をプロキシーするには、/var/lib/tftpboot/pxelinux.cfg/default または /var/lib/tftpboot/grub2/grub.cfg を編集し、URL を使用する Capsule Server FQDN に変更します。
6.4. PXE なしのモードでの検出 リンクのコピーリンクがクリップボードにコピーされました!
Satellite は、DHCP および TFTP サービスのない環境向けに PXE なしの Discovery サービスを提供します。Satellite Server の Discovery ISO を使用して、不明なノードを検出します。検出されたノードのインストールがスケジュールされると、kexec コマンドはノードを再起動せずに、オペレーティングシステムインストーラーを使用して Linux カーネルを再ロードします。
Discovery kexec は、テクノロジープレビュー機能のみとなっています。
テクノロジープレビュー機能は、Red Hat 製品サポートのサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
既知の問題
- プロセス実行時にコンソールがフリーズする可能性があります。
- ハードウェアによっては、グラフィカルハードウェアの問題が発生する場合があります。
図6.2 PXE なしのモードでの検出ワークフロー
6.4.1. PXE なしのモードでの検出 リンクのコピーリンクがクリップボードにコピーされました!
PXE なしのモードでの検出では、Discovery ISO が使用され、プロセスに注意を払う必要があります。
前提条件
- Foreman Discovery イメージがインストールされている。詳細は、「Discovery サービスのインストール」 を参照してください。
手順
Discovery ISO を CD、DVD、または USB フラッシュドライブにコピーします。たとえば、
/dev/sdbの USB ドライブにコピーするには、次のコマンドを実行します。dd bs=4M \ if=/usr/share/foreman-discovery-image/foreman-discovery-image-version.iso \ of=/dev/sdb
# dd bs=4M \ if=/usr/share/foreman-discovery-image/foreman-discovery-image-version.iso \ of=/dev/sdbCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Discovery ブートメディアをホストに挿入してホストを開始し、メディアから起動します。
Discovery イメージには、Manual network setup または Discovery with DHCP のいずれかのオプションが表示されます。
手動のネットワーク設定:
- Primary interface 画面で、Satellite Server または Capsule Server に接続するプライマリーネットワークインターフェイスを選択します。必要に応じて VLAN ID を入力します。Select をクリックして続行します。
- Network configuration 画面で、Address、Gateway、および DNS を入力します。Next を押して続行します。
DHCP を使用した検出:
- Primary interface 画面で、Satellite Server または Capsule Server に接続するプライマリーネットワークインターフェイスを選択します。必要に応じて VLAN ID を入力します。Select をクリックして続行します。
- Discovery イメージは、Capsule Server が提供するものなどの DHCP サーバーを使用して、ネットワークインターフェイスを自動的に設定しようとします。
Credentials 画面で、以下のオプションを入力します。
- Server URL フィールドに、Satellite Server または Discovery Capsule Server の URL を入力します。Capsule Server を参照する場合は、Capsule ポート番号を含めます。
-
Connection type フィールドで、接続タイプを選択します。Satellite Server の場合は
Server、Capsule Server の場合はForeman Proxyです。
Next を押して続行します。
- オプション: Custom facts 画面で、Facter ツールが Satellite Server に中継するカスタムファクトを入力します。必要なカスタムファクトごとに名前と値を入力します。
- Confirm をクリックして続行します。
検証
- Satellite Web UI には、新しく検出されたホストに関する通知が表示されます。
次のステップ
- Satellite Web UI で、Hosts > Discovered Hosts に移動して、新たに検出されたホストを表示します。検出されたホストのプロビジョニングに関する詳細情報は、「検出されたホストからのホストの作成」 を参照してください。
6.4.2. Discovery ISO のカスタマイズ リンクのコピーリンクがクリップボードにコピーされました!
カスタマイズされた Discovery ISO を作成して、起動後にイメージ設定プロセスを自動化できます。Discovery イメージは、オペレーティングシステムの Linux カーネルを使用して、カーネルのパラメーターを指定し、Discovery サービスを設定します。
Satellite Server は、foreman-discovery-image パッケージで discovery-remaster ツールも提供します。このツールを使用して、カスタムカーネルパラメーターを含むようにイメージを再マスターします。
手順
discovery-remasterツールを実行します。カーネルパラメーターを単一の文字列として入力します。以下に例を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow カーネルパラメーターの詳細は、「Discovery カスタマイズ用のカーネルパラメーター」 を参照してください。
新しい ISO を CD、DVD、または USB スティックのいずれかにコピーします。たとえば、
/dev/sdbの USB スティックにコピーするには、以下を実行します。dd bs=4M \ if=/usr/share/foreman-discovery-image/foreman-discovery-image-version.iso \ of=/dev/sdb
# dd bs=4M \ if=/usr/share/foreman-discovery-image/foreman-discovery-image-version.iso \ of=/dev/sdbCopy to Clipboard Copied! Toggle word wrap Toggle overflow
6.5. 検出されたホストの自動コンテキスト リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server は以下のルールの順番に従って、組織とロケーションを検出されたホストに自動的に割り当てます。
- 検出されたホストが Satellite で定義されたサブネットを使用する場合には、このホストは、サブネットに関連付けられた最初の組織およびロケーションを使用します。
- デフォルトの場所と組織がグローバル設定で指定されている場合に、検出されたホストはこの組織と場所に配置されます。これらの設定を設定するには、Administer > Settings > Discovery に移動し、Discovery organization と Discovery location の設定の値を選択します。検出ホストのサブネットも、選択した組織と場所に属していることを確認してください。そうでない場合、Satellite はセキュリティー上の理由から設定を拒否します。
- 上記の条件がいずれも満たされない場合、Satellite は名前順に最初の組織と場所を割り当てます。
Discovered Hosts ページの一括アクションを使用して、組織または場所を手動で変更できます。変更する検出されたホストを選択し、Select Action メニューから Assign Organization または Assign Location を選択します。
6.6. 検出されたホストからのホストの作成 リンクのコピーリンクがクリップボードにコピーされました!
検出されたホストのプロビジョニングは、PXE のプロビジョニングと同様のプロビジョニングプロセスを踏みます。主な違いは、ホストの MAC アドレスを手動で入力する代わりに、検出されたホストのリストからプロビジョニングするホストを選択できる点です。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
前提条件
- Satellite でドメインとサブネットを設定する。ネットワーク要件の詳細は、3章ネットワークの準備 を参照してください。
- Satellite インベントリーに 1 つ以上の検出されたホストがある。
- Red Hat Enterprise Linux の同期済みのコンテンツリポジトリーを使用できる。詳細は、コンテンツの管理 の リポジトリーの同期 を参照してください。
- ホスト登録用のアクティベーションキーを用意している。詳細は、コンテンツの管理 の アクティベーションキーの作成 を参照してください。
-
Discovery kexec-kind テンプレートとprovisioning-kind テンプレートをオペレーティングシステムに関連付けている。詳細は、「テンプレートとオペレーティングシステムの関連付け」 を参照してください。
セキュリティートークンの詳細は、「セキュリティートークンの有効期間の設定」 を参照してください。
手順
- Satellite Web UI で、Hosts > Discovered hosts に移動します。
- プロビジョニングするホストを選択し、リストの右側にある Provision をクリックします。
以下のオプションのいずれかを選択します。
- ホストグループからホストをプロビジョニングするには、ホストグループ、組織、場所を選択してから、ホストの作成 をクリックします。
- さらにカスタマイズしてホストをプロビジョニングするには、ホストのカスタマイズ をクリックして、新規ホストに指定する追加情報を入力します。
フィールドに値が投入されていることを確認します。特に以下に注意してください。
- Host タブの Name は DNS name になります。
- Satellite Server は新規ホストの IP アドレスを自動的に割り当てます。
- Satellite Server は Discovery の結果をもとに MAC アドレスを自動的に設定します。
- Satellite Server が、ホストの最初のインターフェイスに Managed (管理)、Primary、および Provision オプションを自動選択していることを確認します。選択されていない場合は、それらを選択してください。
- Operating System タブをクリックして、すべてのフィールドに値が含まれていることを確認します。オペレーティングシステムの各要素を確認してください。
Provisioning templates で Resolve をクリックし、新しいホストが正しいプロビジョニングテンプレートを識別できるかどうかを確認します。ホストは、以下のプロビジョニングテンプレートを解決する必要があります。
-
Discovery kexec:
Discovery Red Hat kexec -
Provisioning template:
Kickstart default
-
Discovery kexec:
- Submit をクリックしてホストの詳細を保存します。
ホストのプロビジョニングが完了すると、検出されたホストは Hosts > All Hosts に移動します。
CLI 手順
プロビジョニングする検出ホストを識別します。
hammer discovery list
$ hammer discovery listCopy to Clipboard Copied! Toggle word wrap Toggle overflow ホストを選択し、ホストグループを使用してプロビジョニングします。新しいホスト名は、
--new-nameオプションを使用して設定します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドで、検出ホストのリストからホストを削除し、プロビジョニング設定を使用してホストのエントリーを作成します。Discovery イメージは自動的にホストを PXE に再起動するか、カーネルの実行を開始します。ホストは DHCP サービスを検出し、オペレーティングシステムのインストールを開始します。残りのプロセスは、「無人プロビジョニングによるホストの作成」 に記載されている、通常の PXE ワークフローと同じです。
6.7. 検出ルールの作成 リンクのコピーリンクがクリップボードにコピーされました!
Satellite には、検出されたホストのプロビジョニングプロセスを自動化する方法として、Discovery ルールを作成する機能があります。これらのルールは、検出されたホストが、割り当てられたホストグループをベースに自らを自動的にプロビジョニングする方法を定義します。たとえば、CPU 数の多いホストをハイパーバイザーとして自動的にプロビジョニングすることができます。同様に、ハードディスクが大容量のホストは、ストレージサーバーとしてプロビジョニングすることもできます。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
NIC に関する考慮事項
現在、自動プロビジョニングではネットワークインターフェイスカード (NIC) を設定することはできません。すべてのシステムは、検出中に検出された NIC 設定を使用してプロビジョニングされています。ただし、kickstart スクリプトレットで、スクリプトを使用するか、後で設定管理を使用して NIC を設定できます。
手順
- Satellite Web UI で、Configure > Discovery rules に移動し、Create Rule を選択します。
- Name フィールドにルールの名前を入力します。
-
Search フィールドに、ホストをプロビジョニングするかどうかを決定するルールを入力します。このフィールドには、入力する値に関する推奨案が提供され、複数のルールに演算子を使用できます。例:
cpu_count > 8 - Host Group リストから、このホストのテンプレートとして使用するホストグループを選択します。
Hostname フィールドには、複数ホストのホスト名を決定するためのパターンを入力します。これはプロビジョニングテンプレートと同じ ERB 構文を使用します。ホスト名は、ホスト固有の値に
@host属性を、乱数にrandマクロを、または値を増やすためにsequence_hostgroup_param_nextマクロを使用できます。テンプレートのプロビジョニングに関する詳細は、「プロビジョニングテンプレート」 および API ドキュメントを参照してください。-
myhost-<%= sequence_hostgroup_param_next("EL7/MyHostgroup", 10, "discovery_host") %> -
myhost-<%= rand(99999) %> -
abc-<%= @host.facts['bios_vendor'] %>-<%= rand(99999) %> -
xyz-<%= @host.hostgroup.name %> -
srv-<%= @host.discovery_rule.name %> server-<%= @host.ip.gsub('.','-') + '-' + @host.hostgroup.subnet.name %>ホスト名のパターンの作成時には、作成するホスト名が一意の名前であることを確認してください。ホスト名は数字で始めることができず、アンダースコアやドットを含めることができません。適切な方法として、facter で提供される固有の情報 (MAC アドレス、BIOS、またはシリアル ID など) を使用することができます。
-
-
Hosts limit フィールドには、ルールを使用してプロビジョニングできるホストの最大数を入力します。無制限に設定するには
0を使用します。 - Priority フィールドには、ルール間の優先度を設定する数値を入力します。値が低いルールほど優先度が高くなります。
- Enabled リストから、ルールを有効化するかどうかを選択します。
- ルールに異なるプロビジョニングコンテキストを設定するには、Organizations および Locations タブをクリックして、使用するコンテキストを選択します。
- Submit をクリックしてルールを保存します。
Satellite Web UI で、Hosts > Discovered Host に移動して、以下の 2 つのオプションから 1 つ選択します。
- 右側の Discovered hosts リストから、Auto-Provision を選択して、単一のホストを自動的にプロビジョニングします。
- ウィンドウの右上の Auto-Provision All をクリックして、全ホストを自動的にプロビジョニングします。
CLI 手順
Hammer を使用してルールを作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow hammer discovery auto-provisionコマンドを使用してホストを自動的にプロビジョニングします。hammer discovery auto-provision --name "macabcdef123456"
$ hammer discovery auto-provision --name "macabcdef123456"Copy to Clipboard Copied! Toggle word wrap Toggle overflow
6.8. Discovery イメージの拡張 リンクのコピーリンクがクリップボードにコピーされました!
カスタムファクト、ソフトウェア、またはデバイスドライバーを使用して Satellite Discovery イメージを拡張することができます。イメージで使用できるように追加コードが含まれる圧縮されたアーカイブファイルを提供することもできます。
手順
最初に、以下のディレクトリー構造を作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
autostart.dディレクトリーには、ホストが Satellite に登録される前に、Discovery カーネルの起動時に POSIX 順序で実行されるスクリプトが含まれています。 -
binディレクトリーは、$PATH変数に追加され、このディレクトリーにバイナリーファイルを配置して、autostartスクリプトで使用します。 -
factsディレクトリーはFACTERLIB変数に追加され、カスタムファクトを設定して Satellite に送信できるようになります。 -
/binのバイナリーファイルが正しく実行できるように、libディレクトリーはLD_LIBRARY_PATH変数に、lib/rubyはRUBYLIB変数に追加されます。
-
ディレクトリー構造の作成後に、以下のコマンドで
.zipアーカイブにパッケージ化します。zip -r my_extension.zip .
# zip -r my_extension.zip .Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用する必要がある拡張機能を Discovery カーネルに通知します。Discovery イメージを含む zip ファイルを TFTP サーバーに配置し、TFTP ルートの相対パスにある
fdi.zipsパラメーターを使用して Discovery PXE ブートをカスタマイズします。たとえば、
$TFTP/zip1.zipと$TFTP/boot/zip2.zipの 2 つのアーカイブがある場合は、次の構文を使用します。fdi.zips=zip1.zip,boot/zip2.zip
fdi.zips=zip1.zip,boot/zip2.zipCopy to Clipboard Copied! Toggle word wrap Toggle overflow 詳細は、「Discovery PXE ブートのカスタマイズ」 を参照してください。
既存の環境変数 (PATH、LD_LIBRARY_PATH、RUBYLIB および FACTERLIB) に、新規ディレクティブとオプションを追加できます。スクリプトで明示的にパスを指定する場合には、.zip ファイルのコンテンツが、イメージの /opt/extension ディレクトリーにデプロイメントされます。
複数の .zip ファイルを作成できますが、Discovery イメージと同じ場所にデプロイメントされる点に注意してください。後から抽出された .zip ファイル内のファイルに同じファイル名が含まれている場合、以前のバージョンが上書きされます。
6.9. Discovery カスタマイズ用のカーネルパラメーター リンクのコピーリンクがクリップボードにコピーされました!
Discovery は、オペレーティングシステムの Linux カーネルを使用し、カーネルパラメーターを渡して Discovery サービスを設定します。このカーネルパラメーターには、以下のエントリーが含まれます。
- fdi.cachefacts
- キャッシュせずにアップロードされたファクトの数。デフォルトでは、Satellite はアップロードされたファクトをキャッシュしません。
- fdi.countdown
-
初回の検出試行後に text-user インターフェイスがリフレッシュされるまで待機する秒数。デフォルト値は 45 秒です。ステータスページで IP アドレスを
N/Aとして報告する場合は、この値を増やします。 - fdi.dhcp_timeout
- NetworkManager DHCP のタイムアウト。デフォルト値は 300 秒です。
- fdi.dns_nameserver
- DNS SRV レコードに使用するネームサーバー。
- fdi.dns_ndots
-
DNS SRV レコードに使用する
ndotsオプション。 - fdi.dns_search
- DNS SRV レコードに使用する検索ドメイン。
- fdi.initnet
-
デフォルトでは、このイメージは全ネットワークインターフェイス (値
all) を初期化します。この設定をbootifに指定すると、ネットワークブートに使用したネットワークインターフェイスのみが初期化されます。 - fdi.ipv4.method
-
デフォルトでは、NetworkManager IPv4 メソッドの設定は
autoに設定されます。このオプションが優先されるので、IPv4 スタックを無効にするにはignoreに設定します。このオプションが機能するのは、DHCP モードの場合のみです。 - fdi.ipv6.method
-
デフォルトでは、NetworkManager IPv6 メソッドの設定は
autoに設定されます。このオプションが優先されるので、IPv6 スタックを無効にするにはignoreに設定します。このオプションが機能するのは、DHCP モードの場合のみです。 - fdi.ipwait
- HTTP プロキシーの SSL 証明書の開始で IP が使用可能になるまで待機する期間 (秒単位)。デフォルトでは、Satellite は 120 秒待機します。
- fdi.nmwait
-
NetworkManager の
nmcli -waitオプション。デフォルトでは、nmcliは 120 秒待機します。 - fdi.proxy_cert_days
- 自己署名 HTTPS 証明書が有効な日数。デフォルトでは、証明書は 999 日間有効です。
- fdi.pxauto
- 自動化モードまたは準自動化モードを設定します。0 に設定した場合には、イメージは準自動化モードを使用します。このモードでは、一連のダイアログオプションで選択内容を確認できます。1 に設定した場合、イメージは自動化モードを使用し、確認なしに次に進みます。
- fdi.pxfactname1、fdi.pxfactname2 … fdi.pxfactnameN
- カスタムファクト名を指定できます。
- fdi.pxfactvalue1、fdi.pxfactvalue2 … fdi.pxfactvalueN
-
各カスタムファクトの値。それぞれの値はファクト名に対応しています。たとえば、
fdi.pxfactvalue1は、fdi.pxfactname1の名前が付けられたファクトの値を設定します。 - fdi.pxip、fdi.pxgw、fdi.pxdns
-
プライマリーネットワークインターフェイスの IP アドレス (
fdi.pxip)、ゲートウェイ (fdi.pxgw)、および DNS (fdi.pxdns) を手動で設定します。これらのパラメーターを省略する場合、イメージは DHCP を使用してネットワークインターフェイスを設定します。コンマ区切りリストに複数の DNS エントリーを追加できます。 [1] たとえば、fdi.pxdns=192.168.1.1,192.168.200.1などです。 - fdi.pxmac
-
プライマリーインターフェイスの MAC アドレス (
AA:BB:CC:DD:EE:FF形式)。これは Capsule Server との通信に使用するインターフェイスです。自動化モードでは、リンクを含む最初の NIC (ネットワーク ID をアルファベット順に使用) が使用されます。準自動化モードでは、画面が表示され、正しいインターフェイスを選択するよう求められます。 - fdi.rootpw
-
デフォルトでは
rootアカウントはロックされています。このオプションを使用して root パスワードを設定します。クリアテキストのパスワードも、暗号化パスワードも両方入力できます。 - fdi.ssh
-
デフォルトでは SSH サービスは無効です。これは
1またはtrueに設定して、SSH アクセスを有効にします。 - fdi.uploadsleep
- facter 実行間の期間 (秒単位)。デフォルトでは、facter は 30 秒ごとに実行されます。
- fdi.vlan.primary
プライマリーインターフェイスに設定する VLAN タグ付け ID。タグ付けされた VLAN プロビジョニングを使用し、Discovery サービスに検出要求を送信させる場合は、Discovery スニペットに次のパラメーターを追加します。
fdi.vlan.primary=My_VLAN_ID
fdi.vlan.primary=My_VLAN_IDCopy to Clipboard Copied! Toggle word wrap Toggle overflow - fdi.zips
- 起動中にダウンロードおよび起動する拡張子を持つファイル名。詳細は、「Discovery イメージの拡張」 を参照してください。
- fdi.zipserver
- 拡張子のダウンロードに使用する TFTP サーバー。詳細は、「Discovery イメージの拡張」 を参照してください。
- net.ifnames と biosdevname
ネットワークインターフェイス名は Red Hat Enterprise Linux の メジャーバージョン間 で常に同じであるとは限らないため、誤ったネットワーク設定でホストが作成されることがあります。カーネルコマンドラインパラメーターで新しい命名スキームを無効にできます。
-
Dell サーバーの場合は、
biosdevname=1パラメーターを使用します。 -
他のハードウェアまたは仮想マシンの場合は、
net.ifnames=1パラメーターを使用します。
-
Dell サーバーの場合は、
- proxy.type
-
プロキシーのタイプ。デフォルトでは、このパラメーターは
foremanに設定されており、この設定では Satellite Server との通信が直接行われます。proxy.urlで Capsule を指定する場合は、このパラメーターをproxyに設定します。 - proxy.url
Discovery サービスを提供するサーバーの URL。デフォルトでは、このパラメーターには、引数として
foreman_server_urlマクロが含まれます。このマクロは、Satellite Server の完全な URL を解決します。Capsule URL にはマクロはありません。Capsule を明示的に設定する必要があります。以下に例を示します。proxy.url=https://capsule.example.com:9090 proxy.type=proxy
proxy.url=https://capsule.example.com:9090 proxy.type=proxyCopy to Clipboard Copied! Toggle word wrap Toggle overflow このパラメーターでは、IP アドレスまたは FQDN を使用できます。Capsule を参照する場合は、SSL ポート番号を追加します。
; を想定していますが、現在は , も想定しています。詳細は、man nm-settings-keyfile および Shell-like scripting in GRUB を参照してください。
6.10. Discovery のトラブルシューティング リンクのコピーリンクがクリップボードにコピーされました!
マシンが Satellite Web UI の Hosts > Discovered Hosts にリストされていない場合は、検出が失敗したことを意味します。問題を切り分けるために、次の設定領域を調べてください。
前提条件の確認
- Satellite とホストが要件を満たしていることを確認します。詳細は、「Discovery を使用するための前提条件」 を参照してください。
Satellite 上の問題の確認
- 起動用に Discovery を設定し、PXE ブート設定ファイルを構築したことを確認します。詳細は、「デフォルトの PXE ブートオプションとしての Discovery の設定」 を参照してください。
これらの設定ファイルが TFTP Capsule に存在し、
discoveryがデフォルトのブートオプションとして設定されていることを確認します。-
/var/lib/tftpboot/pxelinux.cfg/default -
/var/lib/tftpboot/grub2/grub.cfg
-
-
使用している PXE Discovery スニペットの
proxy.urlおよびproxy.typeオプションの値を確認します。デフォルトのスニペットの名前はpxelinux_discovery、pxegrub_discovery、またはpxegrub2_discoveryです。
ネットワークの問題の確認
- ホスト、Capsule Server、および Satellite Server 間で適切なネットワーク接続があることを確認します。
- 起動した Discovery イメージに対して、DHCP サーバーが正しい IP アドレスを提供していることを確認します。
-
検出されたホストに対して DNS が正しく動作していることを確認するか、使用している PXE テンプレートに含まれる PXE Discovery スニペットの
proxy.urlオプションで IP アドレスを使用します。
ホストでの問題の確認
ホストが Discovery イメージで起動しても検出が成功しない場合は、Discovery イメージでルートアカウントと SSH アクセスを有効にします。次の Discovery カーネルオプションを使用して、SSH を有効にし、root パスワードを設定できます。
fdi.ssh=1 fdi.rootpw=My_Password
fdi.ssh=1 fdi.rootpw=My_PasswordCopy to Clipboard Copied! Toggle word wrap Toggle overflow TTY2 以上を使用して、Discovery で起動したホストにログインして、システムログを確認します。たとえば、以下のログはトラブルシューティングに役立ちます。
discover-host- 初期のファクトのアップロード
foreman-discovery- ファクトの更新、リモート再起動のコマンド
nm-prepare- NetworkManager を事前に設定する起動スクリプト
NetworkManager- ネットワーキング情報
-
重要なシステムのファクトを収集するには、Discovery でブートされたホストで
discovery-debugコマンドを使用します。これにより、システムログ、ネットワーク設定、ファクトのリストなどの情報が標準出力に出力されます。この出力をファイルにリダイレクトし、scpコマンドを使用してコピーしてさらに確認することができます。
関連情報
Discovery カーネルオプションの変更に関する詳細は、以下の資料を参照してください。
第7章 Red Hat Image Builder イメージからプロビジョニングする Satellite の設定 リンクのコピーリンクがクリップボードにコピーされました!
Satellite では、RHEL Web コンソールとの統合を有効にして、アクションを実行したり、ホストを監視したりできます。RHEL Web コンソールを使用すると、Red Hat Image Builder にアクセスしてイメージを構築し、それを HTTP サーバーにアップロードして、このイメージを使用してホストをプロビジョニングできます。イメージのプロビジョニング用に Satellite を設定すると、Anaconda インストーラーがディスクをパーティションに分割し、イメージをダウンロードしてマウントし、ファイルをホストにコピーします。推奨されるイメージタイプは TAR です。
TAR イメージをビルドするためのブループリントにカーネルパッケージが含まれていることを確認してください。
RHEL Web コンソールと Satellite の統合に関する詳細は、ホストの管理 の RHEL Web コンソールを使用したホストの管理と監視 を参照してください。
前提条件
- Red Hat Image Builder を使用して作成された既存の TAR イメージ。
手順
- Satellite で、カスタムの製品を作成し、カスタムのファイルリポジトリーをこの製品に追加して、イメージをリポジトリーにアップロードします。詳細は、コンテンツの管理 の 個別の ISO イメージとファイルのインポート を参照してください。
- Satellite Web UI で、Configure > Host Groups に移動し、使用するホストグループを選択します。
- Parameters タブをクリックしてから、Add Parameter をクリックします。
-
Name フィールドで、
kickstart_liveimgを入力します。 - Type リストから string を選択します。
-
Value フィールドに、イメージの保存先を参照する相対パスまたは絶対パスを
custom/product/repository/image_nameの形式で入力します。 - Submit をクリックして変更を保存します。
このイメージは、ベアメタルプロビジョニングや、コンピュートリソースを使用したプロビジョニングに使用できます。ベアメタルプロビジョニングの詳細は、4章PXE を使用したホストのプロビジョニング を参照してください。異なるコンピュートリソースを使用したプロビジョニングの詳細は、使用するコンピュートリソースに関する章を参照してください。
第8章 KVM (libvirt) での仮想マシンのプロビジョニング リンクのコピーリンクがクリップボードにコピーされました!
カーネルベースの仮想マシン (KVM) はオープンソースの仮想化デーモンおよび Red Hat Enterprise Linux で実行される libvirt という API を使用します。Satellite は KVM サーバーで libvirt API に接続でき、ハイパーバイザーにホストをプロビジョニングし、特定の仮想化機能を制御することができます。
管理できるのは、Satellite を介して作成された仮想マシンのみです。ディレクトリーストレージプールタイプ以外の仮想マシンはサポートされていません。
KVM プロビジョニングを使用してネットワーク接続経由か、既存のイメージをもとに、ホストを作成できます。
前提条件
- Red Hat Enterprise Linux の同期済みのコンテンツリポジトリーを使用できる。詳細は、コンテンツの管理 の リポジトリーの同期 を参照してください。
- ホスト登録用のアクティベーションキーを用意している。詳細は、コンテンツの管理 の アクティベーションキーの作成 を参照してください。
- KVM サーバーでネットワークを管理する Capsule Server。Capsule Server との競合を避けるために、他の DHCP サービスがこのネットワークで実行されていないことを確認します。Capsule Server のネットワークサービス設定の詳細は、ホストのプロビジョニング の ネットワークの準備 を参照してください。
- KVM 仮想化ツールを実行する Red Hat Enterprise Linux サーバー (libvirt daemon)。詳細は、Red Hat Enterprise Linux 8 仮想化の設定と管理 を参照してください。
-
既存の仮想マシンイメージ (イメージベースのプロビジョニングを使用する場合)。このイメージが KVM ホストのストレージプールにあることを確認します。
defaultストレージプールは、通常/var/lib/libvirt/imagesにあります。Satellite 経由で管理できるのは、ディレクトリーのプールストレージタイプのみです。 オプション: この手順の例では、KVM の root ユーザーを使用します。KVM サーバーで root 以外のユーザーを使用する場合には、KVM サーバーの
libvirtグループにユーザーを追加します。usermod -a -G libvirt non_root_user
# usermod -a -G libvirt non_root_userCopy to Clipboard Copied! Toggle word wrap Toggle overflow
関連情報
- 管理者以外のユーザーがホストをプロビジョニングするために必要なパーミッションのリストは、付録E ホストをプロビジョニングするために必要なパーミッション を参照してください。
- ホストを削除するときに関連付けられた仮想マシンも削除するように Satellite を設定できます。詳細は、「ホストの削除時の仮想マシンの削除」 を参照してください。
8.1. Satellite Server の KVM 接続設定 リンクのコピーリンクがクリップボードにコピーされました!
KVM 接続を追加する前に、foreman ユーザーの SSH キーペアを作成して、Satellite Server と KVM 間の安全な接続を確保します。
手順
Satellite Server で
Foremanユーザーに切り替えます。su foreman -s /bin/bash
# su foreman -s /bin/bashCopy to Clipboard Copied! Toggle word wrap Toggle overflow キーペアを生成します。
ssh-keygen
$ ssh-keygenCopy to Clipboard Copied! Toggle word wrap Toggle overflow 公開キーを KVM サーバーにコピーします。
ssh-copy-id root@kvm.example.com
$ ssh-copy-id root@kvm.example.comCopy to Clipboard Copied! Toggle word wrap Toggle overflow foremanユーザーのバッシュシェルを終了します。exit
$ exitCopy to Clipboard Copied! Toggle word wrap Toggle overflow libvirt-clientパッケージをインストールします。satellite-maintain packages install libvirt-client
# satellite-maintain packages install libvirt-clientCopy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを使用して、KVM サーバーへの接続をテストします。
su foreman -s /bin/bash -c 'virsh -c qemu+ssh://root@kvm.example.com/system list'
# su foreman -s /bin/bash -c 'virsh -c qemu+ssh://root@kvm.example.com/system list'Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.2. Satellite Server への KVM 接続の追加 リンクのコピーリンクがクリップボードにコピーされました!
KVM を Satellite のコンピュートリソースとして追加するには、次の手順を使用します。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で Infrastructure > Compute Resources に移動して、Create Compute Resource をクリックします。
- Name フィールドに、新しいコンピュートリソースの名前を入力します。
- Provider リストから、Libvirt を選択します。
- Description フィールドに、コンピュートリソースの説明を入力します。
URL フィールドには、KVM サーバーへの接続 URL を入力します。以下に例を示します。
qemu+ssh://root@kvm.example.com/system
qemu+ssh://root@kvm.example.com/systemCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Display type リストから、VNC または Spice を選択します。
オプション: 無作為に生成したパスワードで、新規ホストのコンソールアクセスのセキュリティーを確保するには、Set a randomly generated password on the display connection というチェックボックスを選択します。KVM サーバーで実行した以下のコマンドの出力から、ゲストの仮想マシンコンソールにアクセスするための、VNC コンソールのパスワードを取得できます。
virsh edit your_VM_name <graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0' passwd='your_randomly_generated_password'>
# virsh edit your_VM_name <graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0' passwd='your_randomly_generated_password'>Copy to Clipboard Copied! Toggle word wrap Toggle overflow パスワードは、virt-manager などで、仮想マシンのコンソールを開くたびに無作為に生成されます。
- Test Connection をクリックして Satellite Server が KVM サーバーに問題なく接続できることを確認します。
- Locations および Organizations タブは現在のコンテキストに自動的に設定されていることを確認します。他のコンテキストをこれらのタブに追加します。
- Submit をクリックして KVM 接続を保存します。
CLI 手順
コンピュートリソースを作成するには、
hammer compute-resource createコマンドを入力します。hammer compute-resource create --name "My_KVM_Server" \ --provider "Libvirt" --description "KVM server at kvm.example.com" \ --url "qemu+ssh://root@kvm.example.com/system" --locations "New York" \ --organizations "My_Organization"
$ hammer compute-resource create --name "My_KVM_Server" \ --provider "Libvirt" --description "KVM server at kvm.example.com" \ --url "qemu+ssh://root@kvm.example.com/system" --locations "New York" \ --organizations "My_Organization"Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.3. Satellite Server への KVM イメージの追加 リンクのコピーリンクがクリップボードにコピーされました!
イメージベースのプロビジョニングを使用してホストを作成するには、アクセスの情報およびイメージの場所など、イメージの情報を Satellite Server に追加する必要があります。
Satellite で管理できるのは、ディレクトリープールストレージタイプのみである点に注意してください。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Infrastructure > Compute Resources に移動し、KVM 接続の名前をクリックします。
- Create Image をクリックします。
- Name フィールドに、イメージの名前を入力します。
- Operating System リストから、イメージのベースオペレーティングシステムを選択します。
- Architecture リストから、オペレーティングシステムのアーキテクチャーを選択します。
-
Username フィールドには、イメージにアクセスするための SSH ユーザー名を入力します。通常、これは
rootユーザーになります。 - Password フィールドには、イメージにアクセスするための SSH パスワードを入力します。
Image path フィールドには、KVM サーバーのイメージを参照する完全パスを入力します。以下に例を示します。
/var/lib/libvirt/images/TestImage.qcow2
/var/lib/libvirt/images/TestImage.qcow2Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
オプション: イメージで
cloud-initデータなどのユーザーデータ入力をサポートさせるには、User Data チェックボックスを選択します。 - Submit をクリックしてイメージの詳細を保存します。
CLI 手順
hammer compute-resource image createコマンドでイメージを作成します。--uuidフィールドを使用して KVM サーバー上のイメージの場所の完全パスを保存します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.4. コンピュートプロファイルに KVM の詳細を追加する リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、KVM ハードウェア設定をコンピュートプロファイルに追加します。このコンピュートプロファイルを使用して KVM でホストを作成すると、これらの設定が自動的に入力されます。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Infrastructure > Compute Profiles に移動します。
- コンピュートプロファイルウィンドウで、既存のコンピュートプロファイル名をクリックするか、Create Compute Profile をクリックするか、Name を入力して Submit をクリックします。
- KVM コンピュートリソースの名前をクリックします。
- CPU フィールドには、新規ホストに割り当てる CPU の数を入力します。
- Memory フィールドには、新規ホストに割り当てるメモリーの容量を入力します。
- Image リストから、イメージベースのプロビジョニングを実行する場合には、使用するイメージを選択します。
- Network Interfaces リストから、ホストのネットワークインターフェイスのネットワークパラメーターを選択します。ネットワークインターフェイスは、複数作成することができますが、少なくとも 1 つのインターフェイスが Capsule で管理されるネットワークを参照している必要があります。
- Storage エリアには、ホストのストレージパラメーターを入力します。ホストのボリュームは複数作成できます。
- Submit をクリックしてコンピュートプロファイルの設定を保存します。
CLI 手順
以下のコマンドを実行してコンピュートプロファイルを作成します。
hammer compute-profile create --name "Libvirt CP"
$ hammer compute-profile create --name "Libvirt CP"Copy to Clipboard Copied! Toggle word wrap Toggle overflow コンピュートプロファイルの値を追加するには、以下のコマンドを入力します。
hammer compute-profile values create --compute-profile "Libvirt CP" \ --compute-resource "My_KVM_Server" \ --interface "compute_type=network,compute_model=virtio,compute_network=examplenetwork" \ --volume "pool_name=default,capacity=20G,format_type=qcow2" \ --compute-attributes "cpus=1,memory=1073741824"
$ hammer compute-profile values create --compute-profile "Libvirt CP" \ --compute-resource "My_KVM_Server" \ --interface "compute_type=network,compute_model=virtio,compute_network=examplenetwork" \ --volume "pool_name=default,capacity=20G,format_type=qcow2" \ --compute-attributes "cpus=1,memory=1073741824"Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.5. KVM でのホストの作成 リンクのコピーリンクがクリップボードにコピーされました!
Satellite では、KVM プロビジョニングを使用してネットワーク接続経由または、既存のイメージをもとに、ホストを作成できます。
- ネットワーク接続を介してホストを作成する場合、新しいホストが KVM 仮想ネットワーク上の Satellite Server または Capsule Server にアクセスできる必要があります。これにより、ホストは PXE プロビジョニングサービスにアクセスできるようになります。この新しいホストエントリーにより、KVM サーバーが仮想マシンを作成して起動するようにトリガーされます。仮想マシンが仮想ネットワークで定義済みの Capsule Server を検出した場合には、仮想マシンは PXE 機能を使用してブートして、選択したオペレーティングシステムのインストールを開始します。
- 既存のイメージでホストを作成する場合は、新規ホストのエントリーは、KVM サーバーが新規ボリュームのベースとして既存のイメージを使用し、仮想マシンを作成するようトリガーします。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
DHCP の競合
ネットワークベースのプロビジョニングでは、KVM サーバーの仮想ネットワークをプロビジョニングに使用する場合には、DHCP 割り当てを行わないネットワークを選択します。これにより、新規ホストの起動時に、Satellite Server と DHCP が競合してしまうためです。
手順
- Satellite Web UI で、Hosts > Create Host に移動します。
- Name フィールドには、ホストの名前を入力します。
- オプション: Organization タブをクリックし、要件に合わせて組織コンテキストを変更します。
- オプション: Location タブをクリックし、要件に合わせてロケーションコンテキストを変更します。
- Host Group リストから、ホストを割り当てるホストグループを選択します。そのホストグループがフォームに入力されます。
- Deploy on リストから、KVM 接続を選択します。
- Compute Profile リストから、仮想マシンの設定を自動的に投入するために使用するプロファイルを選択します。KVM 固有のフィールドにコンピュートプロファイルの設定が入力されていることを確認します。必要に応じてこれらの設定を変更します。
- Interfaces タブをクリックし、ホストのインターフェイスで Edit をクリックします。
フィールドに値が投入されていることを確認します。特に以下に注意してください。
- Satellite は新規ホストの IP アドレスを自動的に割り当てます。
- MAC address フィールドが空白であることを確認します。KVM は、プロビジョニング中にホストに MAC アドレスを割り当てます。
- Host タブの Name は DNS name になります。
- Satellite が、ホストの最初のインターフェイスに Managed、Primary、および Provision オプションを自動選択していることを確認します。選択されていない場合は、それらを選択してください。
- OK をクリックして保存します。別のインターフェイスを追加するには、Add Interface をクリックします。プロビジョニング および プライマリー には、インターフェイスは 1 つしか選択できません。
- Operating System タブをクリックして、全フィールドに値が自動的に含まれていることを確認します。
Provisioning Method のページで、使用するホストを選択します。
- ネットワークベースのプロビジョニングの場合、Network Based をクリックします。
- イメージベースのプロビジョニングの場合、Image Based をクリックします。
- Provisioning templates で Resolve をクリックし、新規ホストから使用する適切なプロビジョニングテンプレートを特定できることを確認します。
- Virtual Machine タブをクリックして、設定には、ホストグループおよびコンピュートプロファイルからの情報が入力されていることを確認します。必要に応じてこれらの設定を変更します。
-
Parameters タブで、Add parameter をクリックします。名前が
kt_activation_keysのパラメーターを追加し、string タイプを選択して、アクティベーションキーの名前を値として入力します。アクティベーションキーは、ホストと同じ組織に属している必要があります。複数のアクティベーションキーをコンマで区切って入力することもできます。 - Submit をクリックしてホストエントリーを保存します。
CLI 手順
ネットワークベースのプロビジョニングを使用するには、
--provision-method buildを指定してhammer host createコマンドでホストを作成します。以下の例の値は、お使いの環境に合った値に置き換えます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow イメージベースのプロビジョニングを使用するには、
--provision-method imageを指定してhammer host createコマンドでホストを作成します。以下の例の値は、お使いの環境に合った値に置き換えます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
このコンピュートリソースに対する他のホスト作成パラメーターの情報は、hammer host create --help コマンドを入力します。
第9章 Red Hat Virtualization での仮想マシンのプロビジョニング リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Virtualization は、エンタープライズレベルのサーバーおよびデスクトップ仮想化プラットフォームです。Red Hat Satellite では、Red Hat Virtualization の REST API 経由で仮想化機能を管理できます。これには、仮想マシンの作成および電源状態の制御が含まれます。
Red Hat Virtualization のプロビジョニングを使用して、ネットワーク接続経由か、既存のイメージをもとに仮想マシンを作成できます。
cloud-init を使用して、プロビジョニングする仮想マシンを設定できます。cloud-init を使用すると、マネージドの DHCP と TFTP など、ネットワークで特別な設定を回避し、仮想マシンのインストールを完了できます。この方法では、Satellite が SSH を使用してプロビジョニングされた仮想マシンに接続して finish スクリプトを実行する必要がありません。
前提条件
- Red Hat Enterprise Linux の同期済みのコンテンツリポジトリーを使用できる。詳細は、コンテンツの管理 の リポジトリーの同期 を参照してください。
- ホスト登録用のアクティベーションキーを用意している。詳細は、コンテンツの管理 の アクティベーションキーの作成 を参照してください。
- Red Hat Virtualization 環境で、論理ネットワークを管理する Capsule Server。Capsule Server との競合を避けるために、他の DHCP サービスがこのネットワークで実行されていないことを確認します。詳細は、ホストのプロビジョニング の ネットワークの準備 を参照してください。
-
イメージベースのプロビジョニングを使用する場合の、
blankテンプレート以外の既存のテンプレート。仮想マシンのテンプレートの作成に関する詳細は、Red Hat Virtualization 仮想マシン管理ガイド の テンプレート を参照してください。 Satellite Server との通信に使用する Red Hat Virtualization で管理者に相当するユーザー。この通信には、
admin@internalユーザーを使用しないでください。代わりに、以下のパーミッションで新しい Red Hat Virtualization ユーザーを作成します。- System > Configure System > Login Permissions
- Network > Configure vNIC Profile > Create
- Network > Configure vNIC Profile > Edit Properties
- Network > Configure vNIC Profile > Delete
- Network > Configure vNIC Profile > Assign vNIC Profile to VM
- Network > Configure vNIC Profile > Assign vNIC Profile to Template
- Template > Provisioning Operations > Import/Export
- VM > Provisioning Operations > Create
- VM > Provisioning Operations > Delete
- VM > Provisioning Operations > Import/Export
- VM > Provisioning Operations > Edit Storage
- Disk > Provisioning Operations > Create
Disk > Disk Profile > Attach Disk Profile
Red Hat Virtualization でユーザーを作成し、権限を追加する方法の詳細は、Red Hat Virtualization 管理ガイド の 管理ポータルからのユーザータスクの管理 を参照してください。
関連情報
- ホストを削除するときに関連付けられた仮想マシンも削除するように Satellite を設定できます。詳細は、「ホストの削除時の仮想マシンの削除」 を参照してください。
9.1. Satellite Server への Red Hat Virtualization 接続の追加 リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、Red Hat Virtualization を Satellite のコンピュートリソースとして追加します。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で Infrastructure > Compute Resources に移動して、Create Compute Resource をクリックします。
- Name フィールドに、新しいコンピュートリソースの名前を入力します。
- Provider のリストから RHV を選択します。
- Description フィールドに、コンピュートリソースの説明を入力します。
-
URL フィールドに、Red Hat Virtualization Manager の API の接続 URL を
https://rhv.example.com/ovirt-engine/api/v4の形式で入力します。 - User フィールドには、ユーザー名と、Red Hat Virtualization Manager のリソースにアクセスするためのパーミッションを入力します。
- Password フィールドで、ユーザーのパスワードを入力します。
- Load Datacenters をクリックして、Datacenter リストに Red Hat Virtualization 環境のデータセンターを入力します。
- Datacenter リストからデータセンターを選択します。
- Quota ID から Satellite で利用可能なリソースを制限するためにクォータを選択します。
- X509 Certification Authorities フィールドには、SSL/TLS アクセスの証明機関を入力します。または、フィールドを空白にすると、サーバーによる最初の API 要求時に、自己署名証明書が生成されます。
- Locations タブをクリックして、使用するロケーションを選択します。
- Organizations タブをクリックして、使用する組織を選択します。
- Submit をクリックしてコンピュートリソースを保存します。
CLI 手順
--providerでOvirtを、--datacenterで使用するデータセンター名を指定して、hammer compute-resource createコマンドを入力します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.2. Red Hat Virtualization での cloud-init イメージの準備 リンクのコピーリンクがクリップボードにコピーされました!
プロビジョニング時に cloud-init を使用するには、Red Hat Virtualization にインストールした cloud-init でイメージを準備してから、イメージを Satellite にインポートしてプロビジョニングに使用してください。
手順
- Red Hat Virtualization で、仮想マシンを作成して、Satellite でイメージベースのプロビジョニングに使用します。
仮想マシンで
cloud-initをインストールします。dnf install cloud-init
# dnf install cloud-initCopy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/cloud/cloud.cfgファイルに、以下の情報を追加します。datasource_list: ["NoCloud", "ConfigDrive"]
datasource_list: ["NoCloud", "ConfigDrive"]Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Red Hat Virtualization で、この仮想マシンからイメージを作成します。
このイメージを Satellite に追加するには、User Data チェックボックスを選択します。
9.3. Satellite Server への Red Hat Virtualization イメージの追加 リンクのコピーリンクがクリップボードにコピーされました!
イメージベースのプロビジョニングを使用してホストを作成するには、アクセスの情報およびイメージの場所など、イメージの情報を Satellite Server に追加する必要があります。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Infrastructure > Compute Resources に移動し、Red Hat Virtualization 接続の名前をクリックします。
- Create Image をクリックします。
- Name フィールドに、イメージの名前を入力します。
- Operating System リストから、イメージのベースオペレーティングシステムを選択します。
- Architecture リストから、オペレーティングシステムのアーキテクチャーを選択します。
-
Username フィールドには、イメージにアクセスするための SSH ユーザー名を入力します。通常、これは
rootユーザーになります。 - Password フィールドには、イメージにアクセスするための SSH パスワードを入力します。
- Image リストの Red Hat Virtualization コンピュートリソースからイメージを選択します。
-
オプション: イメージで
cloud-initデータなどのユーザーデータ入力をサポートさせるには、User Data チェックボックスを選択します。 - Submit をクリックしてイメージの詳細を保存します。
CLI 手順
hammer compute-resource image createコマンドでイメージを作成します。--uuidオプションを使用して、Red Hat Virtualization サーバー上のテンプレート UUID を保存します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.4. cloud-init テンプレートの準備 リンクのコピーリンクがクリップボードにコピーされました!
手順
- Satellite Web UI で、Hosts > Templates > Provisioning Templates に移動し、Create Template をクリックします。
- Name フィールドにテンプレートの名前を入力します。
Editor フィールドで、以下のテンプレートの情報を入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Type タブをクリックして、Type リストから User data template を選択します。
- Association タブをクリックして、Applicable Operating Systems リストから、このテンプレートに関連付けるオペレーティングシステムを選択します。
- Locations タブをクリックして、Locations リストから、テンプレートを関連付けるロケーションを選択します。
- Organizations タブをクリックして、Organizations リストから、テンプレートに関連付ける組織を選択します。
- Submit をクリックします。
- Satellite Web UI で、Hosts > Provisioning Setup > Operating Systems に移動します。
- テンプレートに関連付けるオペレーティングシステムを選択します。
- Templates タブをクリックし、User data template リストから新しいテンプレートの名前を選択します。
- Submit をクリックします。
9.5. コンピュートプロファイルに Red Hat Virtualization の詳細を追加する リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、Red Hat Virtualization ハードウェア設定をコンピュートプロファイルに追加します。このコンピュートプロファイルを使用して KVM でホストを作成すると、これらの設定が自動的に入力されます。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Infrastructure > Compute Profiles に移動します。
- コンピュートプロファイルウィンドウで、既存のコンピュートプロファイル名をクリックするか、Create Compute Profile をクリックするか、Name を入力して Submit をクリックします。
- Red Hat Virtualization コンピュートリソースの名前をクリックします。
- Cluster リストから Red Hat Virtualization 環境のターゲットホストクラスターを選択します。
- Template リストから Cores および Memory 設定に使用する RHV テンプレートを選択します。
- Cores フィールドには、新規ホストに割り当てる CPU コア数を入力します。
- Memory フィールドには、新規ホストに割り当てるメモリーの容量を入力します。
- Image リストから、イメージベースのプロビジョニングに使用するイメージを選択します。
Network Interfaces エリアには、ホストのネットワークインターフェイスのネットワークパラメーターを入力します。ネットワークインターフェイスは、複数作成することができますが、少なくとも 1 つのインターフェイスが Capsule で管理されるネットワークを参照している必要があります。ネットワークインターフェイスごとに以下の情報を入力します。
- Name フィールドに、ネットワークインターフェイスの名前を入力します。
- Network リストから、使用する論理ネットワークを選択します。
Storage エリアには、ホストのストレージパラメーターを入力します。ホストのボリュームは複数作成できます。ボリュームごとに以下の情報を入力します。
- Size (GB) には、新しいボリュームのサイズを GB 単位で入力します。
- Storage domain リストからボリュームのストレージドメインを選択します。
- Preallocate disk から、シンプロビジョニングまたはフルディスクの事前割り当てのいずれかを選択します。
- Bootable リストから、ブータブルか、ブータブル以外のボリュームのいずれかを選択します。
- Submit をクリックしてコンピュートプロファイルを保存します。
CLI 手順
以下のコマンドを実行してコンピュートプロファイルを作成します。
hammer compute-profile create --name "Red Hat Virtualization CP"
$ hammer compute-profile create --name "Red Hat Virtualization CP"Copy to Clipboard Copied! Toggle word wrap Toggle overflow コンピュートプロファイルの値を設定するには、以下のコマンドを入力します。
hammer compute-profile values create --compute-profile "Red Hat Virtualization CP" \ --compute-resource "My_RHV" \ --interface "compute_interface=Interface_Type,compute_name=eth0,compute_network=satnetwork" \ --volume "size_gb=20G,storage_domain=Data,bootable=true" \ --compute-attributes "cluster=Default,cores=1,memory=1073741824,start=true""
$ hammer compute-profile values create --compute-profile "Red Hat Virtualization CP" \ --compute-resource "My_RHV" \ --interface "compute_interface=Interface_Type,compute_name=eth0,compute_network=satnetwork" \ --volume "size_gb=20G,storage_domain=Data,bootable=true" \ --compute-attributes "cluster=Default,cores=1,memory=1073741824,start=true""Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.6. Red Hat Virtualization でのホストの作成 リンクのコピーリンクがクリップボードにコピーされました!
Satellite では Red Hat Virtualization のプロビジョニングを使用して、ネットワーク接続経由か、既存のイメージをもとにホストを作成できます。
- ネットワーク接続を介してホストを作成する場合、新しいホストが PXE プロビジョニングサービスにアクセスできるように、Red Hat Virtualization 仮想ネットワーク上の Satellite Server または Capsule Server にアクセスできる必要があります。この新しいホストエントリーにより、Red Hat Virtualization サーバーがトリガーされ、仮想マシンを作成して起動します。仮想マシンが仮想ネットワークで定義済みの Capsule Server を検出した場合には、仮想マシンは PXE 機能を使用してブートして、選択したオペレーティングシステムのインストールを開始します。
- 既存のイメージでホストを作成する場合は、新規ホストのエントリーは、Red Hat Virtualization サーバーが新規ボリュームのベースとして既存のイメージを使用し、仮想マシンを作成するようトリガーします。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
DHCP の競合
ネットワークベースのプロビジョニングでは、Red Hat Virtualization サーバーの仮想ネットワークをプロビジョニングに使用する場合には、DHCP 割り当てを行わないネットワークを選択します。これにより、新規ホストの起動時に、Satellite Server と DHCP が競合してしまうためです。
手順
- Satellite Web UI で、Hosts > Create Host に移動します。
- Name フィールドには、ホストの名前を入力します。
- オプション: Organization タブをクリックし、要件に合わせて組織コンテキストを変更します。
- オプション: Location タブをクリックし、要件に合わせてロケーションコンテキストを変更します。
- Host Group リストから、ホストを割り当てるホストグループを選択します。そのホストグループがフォームに入力されます。
- Deploy on リストから、Red Hat Virtualization 接続を選択します。
- Compute Profile リストから、仮想マシンの設定を自動的に投入するために使用するプロファイルを選択します。Red Hat Virtualization 固有のフィールドにコンピュートプロファイルの設定が入力されていることを確認します。必要に応じてこれらの設定を変更します。
- Interfaces タブをクリックし、ホストのインターフェイスで Edit をクリックします。
フィールドに値が投入されていることを確認します。特に以下に注意してください。
- Satellite は新規ホストの IP アドレスを自動的に割り当てます。
- MAC address フィールドが空白であることを確認します。Red Hat Virtualization は、プロビジョニング中にホストに MAC アドレスを割り当てます。
- Host タブの Name は DNS name になります。
- Satellite が、ホストの最初のインターフェイスに Managed、Primary、および Provision オプションを自動選択していることを確認します。選択されていない場合は、それらを選択してください。
- OK をクリックして保存します。別のインターフェイスを追加するには、Add Interface をクリックします。プロビジョニング および プライマリー には、インターフェイスは 1 つしか選択できません。
- Operating System タブをクリックして、全フィールドに値が自動的に含まれていることを確認します。
Provisioning Method のページで、使用するホストを選択します。
- ネットワークベースのプロビジョニングの場合、Network Based をクリックします。
- イメージベースのプロビジョニングの場合、Image Based をクリックします。
- Provisioning templates で Resolve をクリックし、新規ホストから使用する適切なプロビジョニングテンプレートを特定できることを確認します。
- Virtual Machine タブをクリックして、設定には、ホストグループおよびコンピュートプロファイルからの情報が入力されていることを確認します。必要に応じてこれらの設定を変更します。
-
Parameters タブで、Add parameter をクリックします。名前が
kt_activation_keysのパラメーターを追加し、string タイプを選択して、アクティベーションキーの名前を値として入力します。アクティベーションキーは、ホストと同じ組織に属している必要があります。複数のアクティベーションキーをコンマで区切って入力することもできます。 - Submit をクリックしてホストエントリーを保存します。
CLI 手順
ネットワークベースのプロビジョニングを使用するには、
--provision-method buildを指定してhammer host createコマンドでホストを作成します。以下の例の値は、お使いの環境に合った値に置き換えます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow イメージベースのプロビジョニングを使用するには、
--provision-method imageを指定してhammer host createコマンドでホストを作成します。以下の例の値は、お使いの環境に合った値に置き換えます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
このコンピュートリソースに対する他のホスト作成パラメーターの情報は、hammer host create --help コマンドを入力します。
第10章 VMware vSphere での仮想マシンのプロビジョニング リンクのコピーリンクがクリップボードにコピーされました!
VMware vSphere は VMware のエンタープライズクラスの仮想化プラットフォームです。Red Hat Satellite は、新規仮想マシンの作成やそれらの電源状態の制御を含む、vSphere プラットフォームとの対話を実行することができます。
10.1. VMware プロビジョニングの前提条件 リンクのコピーリンクがクリップボードにコピーされました!
VMware vSphere プロビジョニングの要件には以下が含まれます。
サポートされているバージョンの VMware vCenter Server。次のバージョンは、Satellite で完全にテストされています。
- vCenter Server 8.0
- vCenter Server 7.0
- vSphere 環境でネットワークを管理する Capsule Server。Capsule Server との競合を避けるために、他の DHCP サービスがこのネットワークで実行されていないことを確認します。詳細は、3章ネットワークの準備 を参照してください。
- 既存の VMware テンプレート (イメージベースのプロビジョニングを使用する場合)。
- Red Hat Enterprise Linux の同期済みのコンテンツリポジトリーを使用できる。詳細は、コンテンツの管理 の リポジトリーの同期 を参照してください。
- ホスト登録用のアクティベーションキーを用意している。詳細は、コンテンツの管理 の アクティベーションキーの作成 を参照してください。
10.2. VMware ユーザーの作成 リンクのコピーリンクがクリップボードにコピーされました!
VMware vSphere サーバーには、Satellite Server の通信用に管理者に相当するユーザーが必要になります。セキュリティー上の理由により、この通信に administrator ユーザーを使用しないでください。代わりに、必要な特権のあるユーザーを作成してください。
VMware vCenter Server バージョン 8.0 または 7.0 では、次の特権を設定します。
- All Privileges (すべての権限) → Datastore (データストア) → Allocate Space (領域の割り当て)、Browse datastore (データストアの参照)、Update Virtual Machine files (仮想マシンファイルの更新)、Low level file operations (ローレベルのファイル操作)
- All Privileges (すべての権限)→ Network (ネットワーク) → Assign Network (ネットワークの割り当て)
- All Privileges (すべての権限) → Resource (リソース) → Assign virtual machine to resource pool (仮想マシンのリソースプールへの割り当て)
- All Privileges (すべての権限)→ Virtual Machine (仮想マシン) → Change Config (All) (設定の変更 (すべて))
- All Privileges (すべての権限)→ Virtual Machine (仮想マシン)→ Interaction (All) (対話 (すべて))
- All Privileges (すべての権限)→ Virtual Machine (仮想マシン) → Edit Inventory (インベントリーの編集)
- All Privileges (すべての権限)→ Virtual Machine (仮想マシン)→ Provisioning (All) (プロビジョニング (すべて))
- All Privileges (すべての権限)→ Virtual Machine (仮想マシン)→ Guest Operations (All) (ゲストオペレーション (すべて))
さらに、セキュリティー強化のために仮想 Trusted Platform Module (TPM) を使用して仮想マシンを作成する場合は、次の特権を設定します。
- All Privileges → Cryptographic operations → Clone, Encrypt, Encrypt new, Migrate, Register VM
- All Privileges → Cryptographic operations → Direct Access – コンソールセッションを開くために必要
10.3. Satellite Server への VMware 接続の追加 リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、Satellite Server のコンピュートリソースに VMware vSphere 接続を追加します。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
前提条件
- ホストおよびネットワークベースのファイアウォールが、TCP ポート 443 での Satellite Server から vCenter への通信を許可するように設定されていることを確認します。
- Satellite Server と vCenter が互いのホスト名を解決できることを確認します。
手順
- Satellite Web UI で Infrastructure > Compute Resources に移動して、コンピュートリソースのウィンドウで Create Compute Resource をクリックします。
- Name フィールドに、リソースの名前を入力します。
- Provider の一覧から VMware を選択します。
- Description フィールドには、リソースの説明を入力します。
- VCenter/Server フィールドには、vCenter サーバーの IP アドレスまたはホスト名を入力します。
- User フィールドには、ユーザー名と、vCenter のリソースにアクセスするためのパーミッションを入力します。
- Password フィールドで、ユーザーのパスワードを入力します。
- Load Datacenters をクリックして、VMware vSphere 環境からデータセンターリストを生成します。
- Datacenter リストから、このリストから管理する特定のデータセンターを選択します。
- Fingerprint フィールドは、データセンターからのフィンガープリントが投入されていることを確認します。
- Display Type リストから、VNC や VMRC などのコンソールタイプを選択します。VNC コンソールは VMware ESXi 6.5 以降ではサポートされません。
- オプション: VNC Console Passwords フィールドでは、Set a randomly generated password on the display connection チェックボックスを選択して、無作為に作成されたパスワードで、新規ホストへのアクセスのセキュリティーを確保します。
- Enable Caching リストから、コンピューティングリソースのキャッシュを有効にするかどうかを選択できます。詳細は、「コンピュートリソースのキャッシュ」 を参照してください。
- Locations および Organizations タブをクリックして、値が現在のコンテキストに自動的に設定されていることを確認します。また別のコンテキストを追加することもできます。
- Submit をクリックして接続を保存します。
CLI 手順
hammer compute-resource createコマンドで接続を作成します。--providerでVmwareを選択し、--uuidでデータセンターのインスタンス UUID を設定します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.4. Satellite Server への VMware イメージの追加 リンクのコピーリンクがクリップボードにコピーされました!
VMware vSphere は、新規仮想マシンを作成するためのイメージとしてテンプレートを使用します。イメージベースのプロビジョニングを使用して新しいホストを作成する場合は、VMware テンプレートの詳細を Satellite Server に追加する必要があります。これには、アクセスの詳細およびテンプレート名が含まれます。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Infrastructure > Compute Resources に移動します。
- VMware コンピュートリソースを選択します。
- Create Image をクリックします。
- Name フィールドに、イメージの名前を入力します。
- Operating System リストから、イメージのベースオペレーティングシステムを選択します。
- Architecture リストから、オペレーティングシステムのアーキテクチャーを選択します。
-
Username フィールドには、イメージにアクセスするための SSH ユーザー名を入力します。デフォルトでは、これは
rootに設定されます。 -
イメージで
cloud-initデータなどのユーザーデータ入力をサポートさせるには、User data チェックボックスをクリックします。 - オプション: Password フィールドに、イメージにアクセスするための SSH パスワードを入力します。
- Image リストから、VMware のイメージを選択します。
- Submit をクリックしてイメージの詳細を保存します。
CLI 手順
hammer compute-resource image createコマンドでイメージを作成します。--uuidフィールドを使用して vSphere 環境の相対テンプレートパスを保存します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.5. コンピュートプロファイルに VMware の詳細を追加する リンクのコピーリンクがクリップボードにコピーされました!
VMware vSphere の仮想マシンの特定のハードウェア設定を事前に定義することができます。これは、これらのハードウェア設定をコンピュートプロファイルに追加することで実行できます。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Infrastructure > Compute Profiles に移動します。
- コンピュートプロファイルを選択します。
- VMware コンピュートリソースを選択します。
- CPU フィールドには、ホストに割り当てる CPU の数を入力します。
- Cores per socket フィールドには各 CPU に割り当てるコアの数を入力します。
- Memory フィールドには、新規ホストに割り当てるメモリーの容量を MiB 単位で入力します。
- Firmware フィールドで、ホストのファームウェアタイプを選択します。デフォルトでは、これは Automatic に設定されています。
- Cluster リストでは、VMware 環境のターゲットホストクラスター名を選択します。
- Resource pool リストから、ホストに対して利用可能なリソース割り当てを選択します。
- Folder リストで、ホストを整理するフォルダーを選択します。
- Guest OS リストから、VMware vSphere で使用するオペレーティングシステムを選択します。
- Virtual H/W version リストから、仮想マシンに使用する基礎となる VMware ハードウェアの抽象化を定義します。
- 仮想マシンの電源がオンの状態でメモリーを追加する場合は、Memory hot add チェックボックスを選択します。
- 仮想マシンの電源がオンの状態で CPU を追加する場合は、CPU hot add チェックボックスを選択します。
- CD-ROM ドライブを追加する場合は、CD-ROM drive のチェックボックスを選択します。
- Boot order リストから、仮想マシンが起動を試行する順序を定義します。
- オプション: Annotation Notes フィールドに、任意の説明を入力します。
- イメージベースのプロビジョニングを使用する場合は、イメージ リストからイメージを選択します。
- SCSI controller リストから、ホストのディスクアクセスの方法を選択します。
- Eager Zero シックプロビジョニングを使用する必要がある場合は、Eager Zero チェックボックスを選択します。デフォルトでは、ディスクは Lazy Zero シックプロビジョニングを使用します。
- オプション: セキュリティーを強化するために仮想 Trusted Platform Module を追加する場合は、Virtual TPM を選択します。これは UEFI ファームウェアとのみ互換性があります。
- Network Interfaces リストから、ホストのネットワークインターフェイスのネットワークパラメーターを選択します。少なくとも 1 つのインターフェイスが Capsule で管理されるネットワークを参照している必要があります。
- オプション: Add Interface をクリックして、別のネットワークインターフェイスを作成します。
- Submit をクリックしてコンピュートプロファイルを保存します。
CLI 手順
コンピュートプロファイルを作成します。
hammer compute-profile create --name "My_Compute_Profile"
$ hammer compute-profile create --name "My_Compute_Profile"Copy to Clipboard Copied! Toggle word wrap Toggle overflow コンピューティングプロファイルへの VMware の詳細の追加
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.6. VMware でのホストの作成 リンクのコピーリンクがクリップボードにコピーされました!
VMware vSphere プロビジョニングプロセスでは、ネットワーク接続経由で、あるいは既存のイメージを使用してホストを作成するオプションがあります。
ネットワークベースのプロビジョニングでは、ホストが PXE プロビジョニングサービスにアクセスできるように、VMware vSphere 仮想ネットワーク上の Satellite Server または Capsule Server のいずれかにアクセスするホストを作成する必要があります。この新しいホストエントリーにより、VMware vSphere サーバーが仮想マシンを作成して起動するようにトリガーします。仮想マシンが仮想ネットワークを通じて定義された Capsule を検出すると、その仮想マシンは PXE で起動し、選択したオペレーティングシステムのインストールを開始します。
DHCP の競合
プロビジョニング目的で VMware vSphere サーバーで仮想ネットワークを使用する場合は、DHCP 割り当てを提供しない仮想ネットワークを必ず選択します。これにより、新規ホストの起動時に、Satellite Server と DHCP が競合してしまうためです。
イメージベースのプロビジョニングでは、既存のイメージを新規ボリュームのベースとして使用します。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Hosts > Create Host に移動します。
- Name フィールドには、ホストの名前を入力します。
- オプション: Organization タブをクリックし、要件に合わせて組織コンテキストを変更します。
- オプション: Location タブをクリックし、要件に合わせてロケーションコンテキストを変更します。
- Host Group リストから、ホストを割り当てるホストグループを選択します。そのホストグループがフォームに入力されます。
- Deploy on リストから、VMware vSphere 接続を選択します。
- Compute Profile リストから、仮想マシンベースの設定を自動的に投入するために使用するプロファイルを選択します。
- Interfaces タブをクリックし、ホストのインターフェイスで Edit をクリックします。
フィールドに値が投入されていることを確認します。特に以下に注意してください。
- Satellite は新規ホストの IP アドレスを自動的に割り当てます。
- MAC address フィールドが空白であることを確認します。VMware は、プロビジョニング中にホストに MAC アドレスを割り当てます。
- Host タブの Name は DNS name になります。
- Satellite が、ホストの最初のインターフェイスに Managed、Primary、および Provision オプションを自動選択していることを確認します。選択されていない場合は、それらを選択してください。
- インターフェイスウィンドウで、コンピュートプロファイルの設定が入力された VMware 固有のフィールドを確認します。必要に応じてこれらの設定を変更します。
- OK をクリックして保存します。別のインターフェイスを追加するには、Add Interface をクリックします。プロビジョニング および プライマリー には、インターフェイスは 1 つしか選択できません。
- Operating System タブをクリックして、全フィールドに値が自動的に含まれていることを確認します。
必要なプロビジョニング方法を選択します。
- ネットワークベースのプロビジョニングの場合、Network Based をクリックします。
- イメージベースのプロビジョニングの場合、Image Based をクリックします。
- ブートディスクベースのプロビジョニングの場合、Boot disk based をクリックします。
- Provisioning templates で Resolve をクリックし、新規ホストから使用する適切なプロビジョニングテンプレートを特定できることを確認します。
- Virtual Machine タブをクリックして、設定には、ホストグループおよびコンピュートプロファイルからの情報が入力されていることを確認します。要件に合わせてこれらの設定を変更します。
-
Parameters タブで、Add parameter をクリックします。名前が
kt_activation_keysのパラメーターを追加し、string タイプを選択して、アクティベーションキーの名前を値として入力します。アクティベーションキーは、ホストと同じ組織に属している必要があります。複数のアクティベーションキーをコンマで区切って入力することもできます。 - Submit をクリックして、VMware でホストをプロビジョニングします。
CLI 手順
hammer host createコマンドでネットワークからホストを作成し、--provision-method buildを指定してネットワークベースのプロビジョニングを使用します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow hammer host createコマンドでイメージからホストを作成し、--provision-method imageを指定してイメージベースのプロビジョニングを使用します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
このコンピュートリソースに対する他のホスト作成パラメーターの情報は、hammer host create --help コマンドを入力します。
10.7. プロビジョニングでの VMware cloud-init と userdata テンプレートの使用 リンクのコピーリンクがクリップボードにコピーされました!
Cloud-init と Userdata テンプレートと VMware を併用して、ユーザーデータを新規の仮想マシンに挿入し、VMware をさらにカスタマイズして、VMware がホストする仮想マシンを使用して Satellite にコールバックできるようになります。
同じ手順を使用して、Satellite 内で、ワークフローに変更をいくつか加えて、VMware コンピュートリソースを設定できます。
図10.1 VMware cloud-init プロビジョニングの概要
Satellite で VMware プロビジョニング用にコンピュートリソースとイメージを設定する場合に、プロビジョニングのイベントは以下の順番に発生します。
- ユーザーが Satellite Web UI、API、または Hammer を使用して 1 つ以上の仮想マシンをプロビジョニングする。
- Satellite が VMware vCenter を呼び出して仮想マシンテンプレートのクローンを作成する。
-
Satellite
userdataのプロビジョニングテンプレートがカスタマイズされたアイデンティティー情報を追加する。 -
プロビジョニングが完了すると、
cloud-initプロビジョニングテンプレートが仮想マシンに対して、cloud-initの実行時に Capsule にコールバックするように指示を出す。 - VMware vCenter がこのテンプレートのクローンを仮想マシンに作成する。
- VMware vCenter がホスト名、IP、DNS など、仮想マシンの ID のカスタマイズを適用する。
-
仮想マシンがビルドされて、
cloud-initが呼びされ、ポート80で Satellite にコールバックしてから、443にリダイレクトする。
前提条件
-
必要な接続ができるように、ポートとファイアウォールが設定されている。
cloud-initサービスがあるので、仮想マシンを Capsule に登録している場合でさえも、仮想マシンは常に Satellite に対してコールバックします。詳細は、オンラインネットワーク環境での Satellite Server のインストール の ポートとファイアウォールの要件 および Capsule Server のインストール の ポートとファイアウォールの要件 を参照してください。 Satellite Server の代わりに Capsule Server を使用する場合は、Capsule Server が適切に設定されていることを確認してください。
重要Capsule Server を Satellite Server 上の信頼できるプロキシーのリストに追加することが重要です。
詳細は、Capsule Server のインストール の ホストの登録とプロビジョニングのための Capsule の設定 を参照してください。
以下の設定ファイルをバックアップします。
-
/etc/cloud/cloud.cfg.d/01_network.cfg -
/etc/cloud/cloud.cfg.d/10_datasource.cfg -
/etc/cloud/cloud.cfg
-
Userdata および Cloud-init テンプレートとオペレーティングシステムの関連付け
- Satellite Web UI で、Hosts > Templates > Provisioning Templates に移動します。
- CloudInit default テンプレートを検索し、その名前をクリックします。
- Association タブをクリックします。
- テンプレートを適用するすべてのオペレーティングシステムを選択し、Submit をクリックします。
- UserData open-vm-tools テンプレートに対して上記の手順を繰り返します。
- Hosts > Provisioning Setup > Operating Systems に移動します。
- プロビジョニングに使用するオペレーティングシステムを選択します。
- Templates タブをクリックします。
- Cloud-init template リストから CloudInit default を選択します。
- User data template リストから UserData open-vm-tools を選択します。
- Submit をクリックして変更を保存します。
cloud-init テンプレートを使用するためのイメージの準備
イメージを準備するには、先に仮想マシンに必要な設定を行ってからでないと、Satellite で使用するイメージとして保存できません。
プロビジョニングに cloud-init テンプレートを使用するには、cloud-init をインストールして、有効化し、Satellite Server に対してコールバックを行うように、仮想マシンを設定する必要があります。
セキュリティー上の理由から CA 証明書をインストールして、全通信に HTTPS を使用するようにする必要があります。この手順には、不要な情報がプロビジョニングに使用するイメージに転送されないように、仮想マシンをクリーンアップする手順が含まれます。
cloud-init が含まれるイメージの場合は、cloud-init がデフォルトで無効になっているので、cloud-init が Satellite と通信できるように以下の手順を実行する必要があります。
手順
イメージの作成に使用する仮想マシンに、必要なパッケージをインストールします。
dnf install cloud-init open-vm-tools perl-interpreter perl-File-Temp
# dnf install cloud-init open-vm-tools perl-interpreter perl-File-TempCopy to Clipboard Copied! Toggle word wrap Toggle overflow Red Hat Enterprise Linux 9 では、ネットワーク接続に
dbus-toolsパッケージも必要です。cloud-initによるネットワーク設定を無効にします。cat << EOM > /etc/cloud/cloud.cfg.d/01_network.cfg network: config: disabled EOM
# cat << EOM > /etc/cloud/cloud.cfg.d/01_network.cfg network: config: disabled EOMCopy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite からデータをフェッチするように
cloud-initを設定します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow Capsule Server を通じてプロビジョニングする場合は、
seedfromオプションで Capsule Server の URL (https://capsule.example.com:9090/userdata/など) を使用します。cloud-initで使用するモジュールを設定します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow イメージの CA 証明書を有効にします。
update-ca-trust enable
# update-ca-trust enableCopy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite Server から
katello-server-ca.crtファイルをダウンロードします。wget -O /etc/pki/ca-trust/source/anchors/cloud-init-ca.crt https://satellite.example.com/pub/katello-server-ca.crt
# wget -O /etc/pki/ca-trust/source/anchors/cloud-init-ca.crt https://satellite.example.com/pub/katello-server-ca.crtCopy to Clipboard Copied! Toggle word wrap Toggle overflow Capsule Server を通じてプロビジョニングする場合は、Capsule Server (
https://capsule.example.com/pub/katello-server-ca.crtなど) からファイルをダウンロードします。証明書のレコードを更新します。
update-ca-trust extract
# update-ca-trust extractCopy to Clipboard Copied! Toggle word wrap Toggle overflow rsyslogサービスおよびauditdサービスを停止します。systemctl stop rsyslog systemctl stop auditd
# systemctl stop rsyslog # systemctl stop auditdCopy to Clipboard Copied! Toggle word wrap Toggle overflow イメージ上のパッケージを消去します。
Red Hat Enterprise Linux 8 以降の場合:
dnf remove --oldinstallonly
# dnf remove --oldinstallonlyCopy to Clipboard Copied! Toggle word wrap Toggle overflow Red Hat Enterprise Linux 7 以前の場合:
package-cleanup --oldkernels --count=1 dnf clean all
# package-cleanup --oldkernels --count=1 # dnf clean allCopy to Clipboard Copied! Toggle word wrap Toggle overflow
ログスペースの削減、古いログの削除、ログの切り詰めを実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow udevハードウェアルールを削除します。rm -f /etc/udev/rules.d/70*
# rm -f /etc/udev/rules.d/70*Copy to Clipboard Copied! Toggle word wrap Toggle overflow 既存のネットワーク設定に関連する
ifcfgスクリプトを削除します。rm -f /etc/sysconfig/network-scripts/ifcfg-ens* rm -f /etc/sysconfig/network-scripts/ifcfg-eth*
# rm -f /etc/sysconfig/network-scripts/ifcfg-ens* # rm -f /etc/sysconfig/network-scripts/ifcfg-eth*Copy to Clipboard Copied! Toggle word wrap Toggle overflow SSH ホストキーを削除します。
rm -f /etc/ssh/ssh_host_*
# rm -f /etc/ssh/ssh_host_*Copy to Clipboard Copied! Toggle word wrap Toggle overflow root ユーザーの SSH 履歴を削除します。
rm -rf ~root/.ssh/known_hosts
# rm -rf ~root/.ssh/known_hostsCopy to Clipboard Copied! Toggle word wrap Toggle overflow root ユーザーの shell 履歴を削除します。
rm -f ~root/.bash_history unset HISTFILE
# rm -f ~root/.bash_history # unset HISTFILECopy to Clipboard Copied! Toggle word wrap Toggle overflow - この仮想マシンからイメージを作成します。
- イメージを Satellite に追加します。
10.8. VMware 上の VM の削除 リンクのコピーリンクがクリップボードにコピーされました!
VMware で実行されている VM は、Satellite 内から削除できます。
手順
- Satellite Web UI で、Infrastructure > Compute Resources に移動します。
- VMware プロバイダーを選択します。
- Virtual Machines タブで、Actions メニューから Delete をクリックします。これにより、VMware コンピューティングリソースから仮想マシンが削除されますが、Satellite 内で関連付けられたホストは保持されます。孤立したホストを削除する場合は、Hosts > All Hosts に移動し、ホストを手動で削除します。
関連情報
- ホストを削除するときに関連付けられた仮想マシンも削除するように Satellite を設定できます。詳細は、「ホストの削除時の仮想マシンの削除」 を参照してください。
10.9. VMware から Satellite への仮想マシンのインポート リンクのコピーリンクがクリップボードにコピーされました!
VMware で実行されている既存の仮想マシンを Satellite にインポートできます。
手順
- Satellite Web UI で、Infrastructure > Compute Resources に移動します。
- VMware コンピュートリソースを選択します。
- Virtual Machines タブで、Actions メニューから Import as managed Host または Import as unmanaged Host をクリックします。以下のページは、コンピュートリソースをすでに選択した状態でホストを作成する場合と同じです。詳細は、ホストの管理 の Satellite でのホストの作成 を参照してください。
- Submit をクリックして仮想マシンを Satellite にインポートします。
10.10. コンピュートリソースのキャッシュ リンクのコピーリンクがクリップボードにコピーされました!
コンピュートリソースのキャッシュにより、VMware 情報のレンダリングが高速化されます。
10.10.1. コンピュートリソースのキャッシュの有効化 リンクのコピーリンクがクリップボードにコピーされました!
コンピュートリソースのキャッシュを有効または無効にするには、以下を実行します。
手順
- Satellite Web UI で、Infrastructure > Compute Resources に移動します。
- 更新する VMware サーバーの右側にある Edit ボタンをクリックします。
- Enable caching のチェックボックスを選択します。
10.10.2. コンピュートリソースのキャッシュのリフレッシュ リンクのコピーリンクがクリップボードにコピーされました!
コンピュートリソースのキャッシュをリフレッシュして、コンピュートリソース情報を更新するには、以下を実行します。
手順
- Satellite Web UI で、Infrastructure > Compute Resources に移動します。
- コンピュートリソースのキャッシュをリフレッシュする VMware サーバーを選択し、Refresh Cache をクリックします。
CLI 手順
この API の呼び出しを使用して、コンピュートリソースのキャッシュをリフレッシュします。
curl -H "Accept:application/json" \ -H "Content-Type:application/json" -X PUT \ -u username:password -k \ https://satellite.example.com/api/compute_resources/compute_resource_id/refresh_cache
# curl -H "Accept:application/json" \ -H "Content-Type:application/json" -X PUT \ -u username:password -k \ https://satellite.example.com/api/compute_resources/compute_resource_id/refresh_cacheCopy to Clipboard Copied! Toggle word wrap Toggle overflow hammer compute-resource listを使用して、コンピュートリソースのキャッシュをリフレッシュする VMware サーバーの ID を判断します。
第11章 OpenShift Virtualization での仮想マシンのプロビジョニング リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Virtualization は、Red Hat OpenShift Container Platform を導入済みまたは導入予定であるものの、簡単にコンテナー化できない既存の仮想マシン (VM) ワークロードを保有している開発チームのニーズに対応します。この技術を使用すると、開発プラットフォームを統一して、開発者はアプリケーションコンテナー内にあるアプリケーションや、共有環境にある仮想マシンをビルド、変更、デプロイできます。これらの機能は、オープンなハイブリッドクラウドで、迅速にアプリケーションの最新化を図るサポートをします。
OpenShift Virtualization のコンピュートリソースを作成し、Satellite を使用して OpenShift Container Platform で仮想マシンをプロビジョニングおよび管理できるようになります。
OpenShift Virtualization コンピュートリソースは非推奨の機能です。非推奨の機能は Satellite に引き続き含まれており、サポートが継続されます。ただし、この製品の今後のリリースで削除されるため、新しいデプロイメントには推奨されません。
Satellite で非推奨または削除された主要機能の最新リストは、Satellite リリースノートの 非推奨の機能 セクションを参照してください。
今回のリリースでは、テンプレートのプロビジョニングはサポートされていません。
OpenShift Virtualization コンピュートリソースは、テクノロジープレビュー機能としてのみご利用いただけます。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat では、実稼働環境での使用を推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
前提条件
- Red Hat Enterprise Linux の同期済みのコンテンツリポジトリーを使用できる。詳細は、コンテンツの管理 の リポジトリーの同期 を参照してください。
- ホスト登録用のアクティベーションキーを用意している。詳細は、コンテンツの管理 の アクティベーションキーの作成 を参照してください。
-
OpenShift Container Platform クラスターの
cluster-admin権限がある。 - OpenShift Container Platform クラスター上のネットワークを管理する Capsule Server。Capsule Server との競合を避けるために他の DHCP サービスがこのネットワーク上で実行されていないことを確認します。Capsule Server のネットワークサービス設定の詳細は、ホストのプロビジョニング の ネットワークの準備 を参照してください。
関連情報
- 管理者以外のユーザーがホストをプロビジョニングするために必要なパーミッションのリストは、付録E ホストをプロビジョニングするために必要なパーミッション を参照してください。
- ホストを削除するときに関連付けられた仮想マシンも削除するように Satellite を設定できます。詳細は、「ホストの削除時の仮想マシンの削除」 を参照してください。
11.1. Satellite Server への OpenShift Virtualization 接続の追加 リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、OpenShift Virtualization を Satellite のコンピュートリソースとして追加します。
手順
以下の
satellite-installerコマンドを入力して、Satellite 用の OpenShift Virtualization プラグインを有効にします。satellite-installer --enable-foreman-plugin-kubevirt
# satellite-installer --enable-foreman-plugin-kubevirtCopy to Clipboard Copied! Toggle word wrap Toggle overflow HTTP および HTTPs 認証に使用するトークンを取得します。
OpenShift Container Platform クラスターにログインし、トークンを含むシークレットをリスト表示します。
oc get secrets
$ oc get secretsCopy to Clipboard Copied! Toggle word wrap Toggle overflow シークレットのトークンを取得します。
oc get secrets MY_SECRET -o jsonpath='{.data.token}' | base64 -d | xargs$ oc get secrets MY_SECRET -o jsonpath='{.data.token}' | base64 -d | xargsCopy to Clipboard Copied! Toggle word wrap Toggle overflow - この手順で後ほど使用するトークンを記録しておきます。
- Satellite Web UI で Infrastructure > Compute Resources に移動して、Create Compute Resource をクリックします。
- Name フィールドに、新しいコンピュートリソースの名前を入力します。
- Provider リストから OpenShift Virtualization を選択します。
- Description フィールドに、コンピュートリソースの説明を入力します。
- Hostname フィールドに、OpenShift Container Platform クラスターの FQDN、ホスト名、または IP アドレスを入力します。
- API Port フィールドには、Satellite から OpenShift Virtualization へのプロビジョニング要求に使用するポート番号を入力します。
- Namespace フィールドに、OpenShift Container Platform クラスターのユーザー名を入力します。
- Token フィールドに、HTTP および HTTPs 認証用のベアラートークンを入力します。
- オプション: X509 Certification Authorities フィールドに、API サーバー呼び出しのクライアント証明書認証を有効にするための証明書を入力します。
第12章 Red Hat OpenStack Services on OpenShift でのクラウドインスタンスのプロビジョニング リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenStack Services on OpenShift は、プライベートまたはパブリックの Infrastructure-as-a-Service (IaaS) クラウドを構築するための基盤を提供します。これにより、スケーラビリティーが極めて高く、耐障害性に優れたプラットフォームをクラウド対応のワークロード開発に利用できます。Satellite では、Red Hat OpenStack Services on OpenShift REST API を使用して、クラウドインスタンスを作成し、その電源管理状態を制御できます。
前提条件
- Red Hat Enterprise Linux の同期済みのコンテンツリポジトリーを使用できる。詳細は、コンテンツの管理 の リポジトリーの同期 を参照してください。
- ホスト登録用のアクティベーションキーを用意している。詳細は、コンテンツの管理 の アクティベーションキーの作成 を参照してください。
- OpenStack 環境でネットワークを管理する Capsule Server。詳細は、ホストのプロビジョニング の ネットワークの準備 を参照してください。
- イメージベースのプロビジョニング用に OpenStack Image Storage (glance) サービスに追加されたイメージ。詳細は、Red Hat OpenStack Services on OpenShift インスタンスおよびイメージガイド を参照してください。
関連情報
- ホストを削除するときに関連付けられた仮想マシンも削除するように Satellite を設定できます。詳細は、「ホストの削除時の仮想マシンの削除」 を参照してください。
12.1. Satellite Server への Red Hat OpenStack Services on OpenShift 接続の追加 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenStack Services on OpenShift を Satellite のコンピューティングリソースとして追加できます。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Infrastructure > Compute Resources に移動します。
- Create Compute Resource をクリックします。
- Name フィールドに、新しいコンピュートリソースの名前を入力します。
- プロバイダー リストから RHEL OpenStack Platform を選択します。
- オプション: Description フィールドには、コンピュートリソースの説明を入力します。
-
URL フィールドには、
http://openstack.example.com:5000/v2.0/tokensまたはhttp://openstack.example.com:5000/v3/auth/tokensなどのtokensリソースにおける OpenStack 認証 keystone サービスの API の URL を入力します。 - Username フィールドおよび Password フィールドに、環境にアクセスするための Satellite のユーザー認証を入力します。
- オプション: Project (Tenant) name フィールドに、Satellite Server が管理するテナント (v2) またはプロジェクト (v3) の名前を入力します。
- User domain フィールドに v3 認証のユーザードメインを入力します。
- Project domain name フィールドに v3 認証のプロジェクトドメイン名を入力します。
- Project domain ID フィールドに、v3 認証のプロジェクトドメイン ID を入力します。
- オプション: Allow external network as main network を選択して、ホストのプライマリーネットワークとして外部ネットワークを使用します。
- オプション: Test Connection をクリックして、Satellite がコンピュートリソースに接続できることを確認します。
- Locations および Organizations タブをクリックして、使用するロケーションと組織が現在のコンテキストに自動的に設定されていることを確認します。他のコンテキストは、これらのタブに追加します。
- Submit をクリックして Red Hat OpenStack Services on OpenShift 接続に保存します。
CLI 手順
コンピュートリソースを作成するには、
hammer compute-resource createコマンドを入力します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
12.2. Satellite Server への Red Hat OpenStack Services on OpenShift イメージの追加 リンクのコピーリンクがクリップボードにコピーされました!
イメージベースのプロビジョニングを使用してホストを作成するには、アクセスの情報およびイメージの場所など、イメージの情報を Satellite Server に追加する必要があります。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Infrastructure > Compute Resources に移動し、Red Hat OpenStack Services on OpenShift 接続の名前をクリックします。
- Create Image をクリックします。
- Name フィールドに、イメージの名前を入力します。
- Operating System リストから、イメージのベースオペレーティングシステムを選択します。
- Architecture リストから、オペレーティングシステムのアーキテクチャーを選択します。
-
Username フィールドには、イメージにアクセスするための SSH ユーザー名を入力します。通常、これは
rootユーザーになります。 - Password フィールドには、イメージにアクセスするための SSH パスワードを入力します。
- Image リストの Red Hat OpenStack Services on OpenShift コンピュートリソースからイメージを選択します。
-
オプション: イメージで
cloud-initデータなどのユーザーデータ入力をサポートさせるには、User Data チェックボックスを選択します。 - Submit をクリックしてイメージの詳細を保存します。
CLI 手順
hammer compute-resource image createコマンドでイメージを作成します。--uuidフィールドを使用して、Red Hat OpenStack Services on OpenShift サーバーにあるイメージの場所の完全なパスを保存します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
12.3. Red Hat OpenStack Services on OpenShift の情報をコンピュートプロファイルに追加する リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、Red Hat OpenStack Services on OpenShift ハードウェア設定をコンピュートプロファイルに追加します。このコンピューティングプロファイルを使用して Red Hat OpenStack Services on OpenShift でホストを作成すると、これらの設定が自動的に入力されます。
手順
- Satellite Web UI で、Infrastructure > Compute Profiles に移動します。
- コンピュートプロファイルウィンドウで、既存のコンピュートプロファイル名をクリックするか、Create Compute Profile をクリックするか、Name を入力して Submit をクリックします。
- Red Hat OpenStack Services on OpenShift コンピュートリソースの名前をクリックします。
- Flavor リストから、ホストに使用する Red Hat OpenStack Services on OpenShift のハードウェアのプロファイルを選択します。
- Availability zone リストから Red Hat OpenStack Services on OpenShift 環境内で使用するターゲットクラスターを選択します。
- Image リストから、イメージベースのプロビジョニングに使用するイメージを選択します。
- Tenant リストから、Red Hat OpenStack Services on OpenShift インスタンスのテナントまたはプロジェクトを選択します。
- Security Group リストから、ポートおよび IP アドレスのクラウドベースのアクセスルールを選択します。
- Internal network から、ホストが参加するプライベートネットワークを選択します。
- Floating IP network から、ホストが参加する外部ネットワークを選択して、Floating IP アドレスを割り当てます。
- Boot from volume から、イメージからボリュームが作成されるかを設定します。これが選択されていない場合には、インスタンスはイメージを直接起動します。
- New boot volume size (GB) フィールドには、新規起動ボリュームのサイズ (GB) を入力します。
- Submit をクリックしてコンピュートプロファイルを保存します。
CLI 手順
Red Hat OpenStack Services on OpenShift の情報をコンピュートプロファイルに設定する
hammer compute-profile values create --compute-resource "My_Laptop" \ --compute-profile "My_Compute_Profile" \ --compute-attributes "availability_zone=My_Zone,image_ref=My_Image,flavor_ref=m1.small,tenant_id=openstack,security_groups=default,network=My_Network,boot_from_volume=false"
$ hammer compute-profile values create --compute-resource "My_Laptop" \ --compute-profile "My_Compute_Profile" \ --compute-attributes "availability_zone=My_Zone,image_ref=My_Image,flavor_ref=m1.small,tenant_id=openstack,security_groups=default,network=My_Network,boot_from_volume=false"Copy to Clipboard Copied! Toggle word wrap Toggle overflow
12.4. Red Hat OpenStack Services on OpenShift でイメージベースのホストを作成する リンクのコピーリンクがクリップボードにコピーされました!
Satellite では、Red Hat OpenStack Services on OpenShift プロビジョニングを使用して、既存のイメージからホストを作成できます。新しいホストエントリーにより、Red Hat OpenStack Services on OpenShift がトリガーされ、既存のイメージを新しいボリュームのベースとして使用してインスタンスが作成されます。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Hosts > Create Host に移動します。
- Name フィールドには、ホストの名前を入力します。
- オプション: Organization タブをクリックし、要件に合わせて組織コンテキストを変更します。
- オプション: Location タブをクリックし、要件に合わせてロケーションコンテキストを変更します。
- Host Group リストから、ホストを割り当てるホストグループを選択します。そのホストグループがフォームに入力されます。
- Deploy on リストから、Red Hat OpenStack Services on OpenShift 接続を選択します。
- Compute Profile リストから、仮想マシンの設定を自動的に投入するために使用するプロファイルを選択します。
- Lifecycle Environment リストから、環境を選択します。
- Interfaces タブをクリックし、ホストのインターフェイスで Edit をクリックします。
フィールドに値が投入されていることを確認します。特に以下に注意してください。
- Satellite は新規ホストの IP アドレスを自動的に割り当てます。
- MAC address フィールドが空白であることを確認します。Red Hat OpenStack Services on OpenShift は、プロビジョニング中に MAC アドレスをホストに割り当てます。
- Host タブの Name は DNS name になります。
- Satellite が、ホストの最初のインターフェイスに Managed、Primary、および Provision オプションを自動選択していることを確認します。選択されていない場合は、それらを選択してください。
- OK をクリックして保存します。別のインターフェイスを追加するには、Add Interface をクリックします。プロビジョニング および プライマリー には、インターフェイスは 1 つしか選択できません。
- Operating System タブをクリックして、全フィールドに値が自動的に含まれていることを確認します。
- コンピュートプロファイルから自動的にデータが投入されるイメージを変更するには、新規ホストの root ボリュームをベースとする別のイメージを イメージ リストから選択します。
- Provisioning templates で Resolve をクリックし、新規ホストから使用する適切なプロビジョニングテンプレートを特定できることを確認します。
- Virtual Machine タブをクリックして、設定には、ホストグループおよびコンピュートプロファイルからの情報が入力されていることを確認します。必要に応じてこれらの設定を変更します。
-
Parameters タブで、Add parameter をクリックします。名前が
kt_activation_keysのパラメーターを追加し、string タイプを選択して、アクティベーションキーの名前を値として入力します。アクティベーションキーは、ホストと同じ組織に属している必要があります。複数のアクティベーションキーをコンマで区切って入力することもできます。 - Submit をクリックしてホストエントリーを保存します。
CLI 手順
--provision-method imageを指定してhammer host createコマンドでホストを作成します。以下の例の値は、お使いの環境に合った値に置き換えます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
このコンピュートリソースに対する他のホスト作成パラメーターの情報は、hammer host create --help コマンドを入力します。
第13章 Amazon EC2 でのクラウドインスタンスのプロビジョニング リンクのコピーリンクがクリップボードにコピーされました!
Amazon Elastic Compute Cloud (Amazon EC2) は、パブリッククラウドコンピュートリソースを提供する Web サービスです。Satellite を使用すると、Amazon EC2 のパブリック API と対話してクラウドインスタンスを作成し、その電源管理状態を制御できます。この章の手順を使用して、接続を Amazon EC2 アカウントに追加し、クラウドインスタンスをプロビジョニングします。
13.1. Amazon EC2 プロビジョニングの前提条件 リンクのコピーリンクがクリップボードにコピーされました!
Amazon EC2 プロビジョニングの要件には以下が含まれます。
- EC2 環境でネットワークを管理する Capsule Server。ホストと Capsule Server 間のネットワークのセキュリティーを確保するために、Virtual Private Cloud (VPC) を使用します。
- イメージベースのプロビジョニング用の Amazon Machine Image (AMI)。
- Red Hat Enterprise Linux の同期済みのコンテンツリポジトリーを使用できる。詳細は、コンテンツの管理 の リポジトリーの同期 を参照してください。
- ホスト登録用のアクティベーションキーを用意している。詳細は、コンテンツの管理 の アクティベーションキーの作成 を参照してください。
13.2. Amazon EC2 プラグインのインストール リンクのコピーリンクがクリップボードにコピーされました!
Amazon EC2 プラグインをインストールして、EC2 コンピューティングリソースプロバイダーを Satellite にアタッチします。これにより、ホストを管理して EC2 にデプロイできます。
手順
EC2 コンピューティングリソースプロバイダーを Satellite Server にインストールします。
satellite-installer --enable-foreman-compute-ec2
# satellite-installer --enable-foreman-compute-ec2Copy to Clipboard Copied! Toggle word wrap Toggle overflow - オプション: Satellite Web UI で、Administer > About に移動し、compute resources タブを選択して、Amazon EC2 プラグインのインストールを確認します。
13.3. Satellite Server への Amazon EC2 接続の追加 リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、Satellite Server のコンピュートリソースに Amazon EC2 接続を追加します。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
前提条件
-
この手順を実行する AWS EC2 ユーザーには、
AmazonEC2FullAccessパーミッションが必要です。これらのパーミッションは AWS から割り当てることができます。
時間設定および Amazon Web Services
Amazon Web Services は、認証プロセスの一環として時間の設定を使用します。Satellite Server の時間が正しく同期されていることを確認します。さらに、ntpd または chronyd などの NTP サービスが Satellite Server で正しく実行されていることを確認します。Amazon Web Services に正しい時間を指定できないと、認証に失敗する可能性があります。
手順
- Satellite Web UI で Infrastructure > Compute Resources に移動して、コンピュートリソースのウィンドウで Create Compute Resource をクリックします。
- Name フィールドには、Amazon EC2 コンピュートリソースを識別するための名前を入力します。
- Provider リストから EC2 を選択します。
- Description フィールドには、今後使用する時にリソースを特定できるように名前を入力します。
- オプション: HTTP proxy リストから、HTTP プロキシーを選択して、外部の API サービスに接続します。HTTP プロキシーを Satellite に追加してから、リストからプロキシーを選択する必要があります。詳細は、「コンピュートリソースでの HTTP プロキシーの使用」 を参照してください。
- Access Key と Secret Key フィールドで、Amazon EC2 アカウントのアクセスキーを入力します。詳細情報は、Amazon ドキュメントの Web サイトで Managing Access Keys for your AWS Account を参照してください。
- オプション: Load Regions をクリックして、Regions リストにデータを入力します。
- Region リストから、使用する Amazon EC2 リージョンとデータセンターを選択します。
- Locations タブをクリックして、使用するロケーションが選択されていることを確認します。あるいは、別のロケーションを追加します。
- Organizations タブをクリックして、使用する組織が選択されていることを確認します。あるいは、別のロケーションを追加します。
- Submit をクリックして Amazon EC2 接続を保存します。
- 新規コンピュートリソースを選択して、SSH keys タブをクリックし、Download をクリックして、SSH 認証に使用するために SSH キーのコピーを保存します。BZ1793138 が解決するまで、Amazon EC2 コンピュートリソースのコピーの作成直後に SSH キーのコピーをダウンロードします。後で SSH キーが必要な場合には、「SSH での Amazon EC2 インスタンスへの接続」 の手順を実行してください。
CLI 手順
hammer compute-resource createコマンドで接続を作成します。--userおよび--passwordオプションを使用して、アクセスキーとシークレットキーをそれぞれ追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
13.4. コンピュートリソースでの HTTP プロキシーの使用 リンクのコピーリンクがクリップボードにコピーされました!
使用する EC2 コンピュートリソースで、Satellite との通信に特定の HTTP プロキシーが必要となる場合があります。Satellite では、HTTP プロキシーを作成して、その HTTP プロキシーをお使いの EC2 コンピュートリソースに割り当てことができます。
ただし、Administer > Settings で Satellite の HTTP プロキシーを設定してから、コンピュートリソース用に別の HTTP プロキシーを追加した場合は、Administer > Settings で定義した HTTP プロキシーが優先されます。
手順
- Satellite Web UI で、Infrastructure > HTTP Proxies に移動して、New HTTP Proxy を選択します。
- Name フィールドで、HTTP プロキシーの名前を入力します。
- URL フィールドに、ポート番号を含む HTTP プロキシーの URL を入力します。
- オプション: HTTP プロキシーに認証が必要な場合には、HTTP プロキシーに対する認証に使用するユーザーとパスワードを入力します。
- Test Connection をクリックして Satellite から HTTP プロキシーに対する接続できることを確認します。
- Locations タブで、ロケーションを追加します。
- Organization タブをクリックして、組織を追加します。
- Submit をクリックします。
13.5. Amazon EC2 のイメージの作成 リンクのコピーリンクがクリップボードにコピーされました!
Satellite 内から Amazon EC2 のイメージを作成できます。
手順
- Satellite Web UI で、Infrastructure > Compute Resources に移動します。
- Amazon EC2 プロバイダーを選択します。
Create Image をクリックします。
- Name フィールドに、EC2 イメージの意味のある一意の名前を入力します。
- Operating System リストから、イメージに関連付けるオペレーティングシステムを選択します。
- Architecture リストから、イメージに関連付けるアーキテクチャーを選択します。
- Username フィールドに、マシンへの SSH 接続に必要なユーザー名を入力します。
- Image ID フィールドに、Amazon またはオペレーティングシステムベンダーから提供されたイメージ ID を入力します。
- オプション: User Data チェックボックスを選択して、ユーザーデータ入力のサポートを有効にします。
- オプション: このイメージの作成時に使用する Fog の Iam Role を設定します。
- Submit をクリックして、変更を Satellite に保存します。
13.6. Satellite Server への Amazon EC2 イメージの追加 リンクのコピーリンクがクリップボードにコピーされました!
Amazon EC2 はイメージベースのプロビジョニングを使用して新規ホストを作成します。イメージの詳細を Satellite Server に追加する必要があります。これにはアクセスの詳細およびイメージのロケーションが含まれます。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Infrastructure > Compute Resources に移動し、Amazon EC2 接続を選択します。
- Images タブをクリックし、Create Image をクリックします。
- Name フィールドには、今後使用する時にイメージを特定できるように名前を入力します。
- Operating System リストから、追加するイメージに対応するオペレーティングシステムを選択します。
- Architecture リストから、オペレーティングシステムのアーキテクチャーを選択します。
-
Username フィールドには、イメージにアクセスするための SSH ユーザー名を入力します。通常、これは
rootユーザーになります。 - Password フィールドには、イメージにアクセスするための SSH パスワードを入力します。
-
イメージ ID フィールドには、イメージの Amazon Machine Image (AMI) ID を入力します。通常、この形式は
ami-xxxxxxxxになります。 -
オプション: イメージが
cloud-initデータなどのユーザーデータ入力をサポートする場合には、User Data チェックボックスを選択します。ユーザーデータを有効にすると、Finish スクリプトは自動的に無効になります。これは、逆の場合にも当てはまります。Finish スクリプトを有効にすると、ユーザーデータが無効になります。 - オプション: IAM role リストから、イメージの作成に使用する Amazon のセキュリティーロールを入力します。
- Submit をクリックしてイメージの詳細を保存します。
CLI 手順
hammer compute-resource image createコマンドでイメージを作成します。--uuidフィールドを使用して Amazon EC2 サーバーのイメージの場所の完全パスを保存します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
13.7. コンピュートプロファイルに Amazon EC2 の詳細を追加する リンクのコピーリンクがクリップボードにコピーされました!
Amazon EC2 のインストールのハードウェア設定をコンピュートプロファイルに追加します。
手順
- Satellite Web UI で Infrastructure > Compute Profiles に移動して、プロファイルの名前をクリックして EC2 接続の名前をクリックします。
- Flavor リストから、ホストに使用する EC2 のハードウェアのプロファイルを選択します。
- Image リストから、イメージベースのプロビジョニングに使用するイメージを選択します。
- Availability zone リストから、EC2 リージョン内で使用するターゲットクラスターを選択します。
- Subnet リストから EC2 インスタンスのサブネットを追加します。新規ホストのプロビジョニング用の VPC がある場合は、そのサブネットを使用します。
- Security Groups リストから、ホストに適用するポートおよび IP アドレスのクラウドベースのアクセスルールを定義します。
-
Managed IP リストから、
パブリックIP またはPrivateIP のいずれかを選択します。 - Submit をクリックしてコンピュートプロファイルを保存します。
CLI 手順
コンピュートプロファイルに Amazon EC2 の詳細を設定します。
hammer compute-profile values create --compute-resource "My_Laptop" \ --compute-profile "My_Compute_Profile" \ --compute-attributes "flavor_id=1,availability_zone= My_Zone,subnet_id=1,security_group_ids=1,managed_ip=public_ip"
$ hammer compute-profile values create --compute-resource "My_Laptop" \ --compute-profile "My_Compute_Profile" \ --compute-attributes "flavor_id=1,availability_zone= My_Zone,subnet_id=1,security_group_ids=1,managed_ip=public_ip"Copy to Clipboard Copied! Toggle word wrap Toggle overflow
13.8. Amazon EC2 でのイメージベースのホストの作成 リンクのコピーリンクがクリップボードにコピーされました!
Amazon EC2 プロビジョニングプロセスでは、Amazon EC2 サーバーで既存イメージからホストを作成します。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Hosts > Create Host に移動します。
- Name フィールドには、ホストの名前を入力します。
- オプション: Organization タブをクリックし、要件に合わせて組織コンテキストを変更します。
- オプション: Location タブをクリックし、要件に合わせてロケーションコンテキストを変更します。
- Host Group リストから、ホストを割り当てるホストグループを選択します。そのホストグループがフォームに入力されます。
- Deploy on リストから、EC2 接続を選択します。
- Compute Profile リストから、仮想マシンベースの設定を自動的に投入するために使用するプロファイルを選択します。
- Interfaces タブをクリックし、ホストのインターフェイスで Edit をクリックします。
フィールドに値が投入されていることを確認します。特に以下に注意してください。
- Satellite は新規ホストの IP アドレスを自動的に割り当てます。
- MAC address フィールドが空白であることを確認します。EC2 は、プロビジョニング中にホストに MAC アドレスを割り当てます。
- Host タブの Name は DNS name になります。
- Satellite が、ホストの最初のインターフェイスに Managed、Primary、および Provision オプションを自動選択していることを確認します。選択されていない場合は、それらを選択してください。
- OK をクリックして保存します。別のインターフェイスを追加するには、Add Interface をクリックします。プロビジョニング および プライマリー には、インターフェイスは 1 つしか選択できません。
- Operating System タブをクリックして、全フィールドに値が入力されていることを確認します。
- Virtual Machine タブをクリックして、全フィールドに値が投入されていることを確認します。
-
Parameters タブで、Add parameter をクリックします。名前が
kt_activation_keysのパラメーターを追加し、string タイプを選択して、アクティベーションキーの名前を値として入力します。アクティベーションキーは、ホストと同じ組織に属している必要があります。複数のアクティベーションキーをコンマで区切って入力することもできます。 - Submit をクリックして変更を保存します。
この新規ホストのエントリーは、Amazon EC2 サーバーが新規ボリュームのベースとして既存のイメージを使用し、インスタンスを作成するようトリガーします。
CLI 手順
hammer host createコマンドでホストを作成し、--provision-method imageを組み込んでイメージベースのプロビジョニングを使用します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
このコンピュートリソースに対する他のホスト作成パラメーターの情報は、hammer host create --help コマンドを入力します。
13.9. SSH での Amazon EC2 インスタンスへの接続 リンクのコピーリンクがクリップボードにコピーされました!
SSH を使用して Satellite Server から Amazon EC2 インスタンスにリモートで接続できますが、Red Hat Satellite を介してプロビジョニングする Amazon Web Services EC2 インスタンスへ接続するには、Foreman データベースのコンピュートリソースに関連するプライベートキーに最初にアクセスし、このキーを使用して認証する必要があります。
手順
Satellite Server ベースシステムで、コンピュートリソースリストの場所を確認するには、以下のコマンドを入力し、使用するコンピュートリソースの ID を書き留めます。
hammer compute-resource list
$ hammer compute-resource listCopy to Clipboard Copied! Toggle word wrap Toggle overflow postgresユーザーとして、Foreman データベースに接続します。su - postgres -c psql foreman
# su - postgres -c psql foremanCopy to Clipboard Copied! Toggle word wrap Toggle overflow compute_resource_id = 3であるkey_pairsから、シークレットを選択します。select secret from key_pairs where compute_resource_id = 3; secret
# select secret from key_pairs where compute_resource_id = 3; secretCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
-----BEGIN RSA PRIVATE KEY-----以降、-----END RSA PRIVATE KEY-----までキーをコピーします。 .pemファイルを作成し、ファイルにキーを貼り付けます。vim Keyname.pem
# vim Keyname.pemCopy to Clipboard Copied! Toggle word wrap Toggle overflow .pemファイルへのアクセスを制限するよう確認します。chmod 600 Keyname.pem
# chmod 600 Keyname.pemCopy to Clipboard Copied! Toggle word wrap Toggle overflow Amazon EC2 インスタンスへ接続するには、以下のコマンドを入力します。
ssh -i Keyname.pem ec2-user@example.aws.com
ssh -i Keyname.pem ec2-user@example.aws.comCopy to Clipboard Copied! Toggle word wrap Toggle overflow
13.10. Amazon Web Service EC2 環境用の finish テンプレートの設定 リンクのコピーリンクがクリップボードにコピーされました!
Amazon EC2 環境で Red Hat Enterprise Linux インスタンスをプロビジョニングする間、Red Hat Satellite の finish テンプレートを使用できます。
SSH で finish テンプレートを使用する場合は、Satellite は EC2 環境内に存在して、適切なセキュリティーグループに存在する必要があります。現在、Satellite は Capsule Server を使用しないで直接 SSH finish プロビジョニングを実行します。Satellite Server が EC2 内にない場合は、EC2 仮想マシンは到達可能な必要な外部 IP ではなく内部 IP を報告します。
手順
- Satellite Web UI で、Hosts > Templates > Provisioning Templates に移動します。
-
Provisioning Templates ページの検索フィールドに
Kickstart default finishを入力し、Search をクリックします。 - Kickstart default finish テンプレートで、Clone を選択します。
- Name フィールドに、テンプレート向けに独自の名前を入力します。
テンプレートで、
subscription-manager registerコマンドおよびyumコマンド以外の root 権限が必要な各コマンドをsudoで指定します。または、以下の行を追加してテンプレート全体を sudo ユーザーとして実行します。sudo -s << EOS _Template_ _Body_ EOS
sudo -s << EOS _Template_ _Body_ EOSCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Association タブをクリックし、使用する Red Hat Enterprise Linux オペレーティングシステムとテンプレートを関連付けします。
- Locations タブをクリックして、ホストがある場所を追加します。
- Organizations タブをクリックして、ホストが属する組織を追加します。
- 必要なカスタマイズまたは変更を追加したら、Submit をクリックしてテンプレート保存します。
- Satellite Web UI で、Hosts > Operating systems に移動し、ホストに使用するオペレーティングシステムを選択します。
- Templates タブをクリックし、Finish Template リストから、finish テンプレートを選択します。
- Satellite Web UI で、Hosts > Create Host に移動します。
- Name フィールドには、ホストの名前を入力します。
- オプション: Organization タブをクリックし、要件に合わせて組織コンテキストを変更します。
- オプション: Location タブをクリックし、要件に合わせてロケーションコンテキストを変更します。
- Host Group リストから、ホストを割り当てるホストグループを選択します。そのホストグループがフォームに入力されます。
- Parameters タブをクリックし、Host parameters に移動します。
Host parameters で、Add Parameter を 2 回クリックし、新しいパラメーターフィールドを 2 つ追加します。以下のパラメーターを追加します。
-
Name フィールドで、
activation_keysを入力します。対応する Value フィールドで、アクティベーションキーを入力します。 -
Name フィールドで、
remote_execution_ssh_userを入力します。対応する Value フィールドで、ec2-userを入力します。
-
Name フィールドで、
- Submit をクリックして変更を保存します。
13.11. Amazon EC2 での仮想マシンの削除 リンクのコピーリンクがクリップボードにコピーされました!
Amazon EC2 で実行している仮想マシンを、Satellite 内から削除できます。
手順
- Satellite Web UI で、Infrastructure > Compute Resources に移動します。
- Amazon EC2 プロバイダーを選択します。
- Virtual Machines タブで、Actions メニューから Delete をクリックします。これにより、Amazon EC2 コンピューティングリソースから仮想マシンが削除されますが、Satellite 内の関連するホストは保持されます。孤立したホストを削除する場合は、Hosts > All Hosts に移動し、ホストを手動で削除します。
関連情報
- ホストを削除するときに関連付けられた仮想マシンも削除するように Satellite を設定できます。詳細は、「ホストの削除時の仮想マシンの削除」 を参照してください。
13.12. Amazon Web Services および Satellite に関する詳細情報 リンクのコピーリンクがクリップボードにコピーされました!
Amazon Web Services EC2 で Red Hat Gold Images を確認する方法の詳細は、How to Locate Red Hat Cloud Access Gold Images on AWS EC2 を参照してください。
Linux で Amazon Web Service Client をインストールして使用する方法の詳細は、Amazon Web Services ドキュメンテーションの Install the AWS Command Line Interface on Linux を参照してください。
Amazon Web Services における仮想マシンのインポートおよびエクスポートに関する詳細は、Amazon Web Services ドキュメンテーションの VM Import/Export を参照してください。
第14章 Google Compute Engine でのクラウドインスタンスのプロビジョニング リンクのコピーリンクがクリップボードにコピーされました!
Satellite は、Google Compute Engine (GCE) と対話して、新規仮想マシンの作成、電源管理の状態の制御などを実行できます。
GCE ホストの作成には、Satellite では Red Hat がサポートするゴールデンイメージのみを使用できます。
前提条件
- Satellite でドメインとサブネットを設定する。ネットワーク要件の詳細は、3章ネットワークの準備 を参照してください。
- Red Hat Enterprise Linux の同期済みのコンテンツリポジトリーを使用できる。詳細は、コンテンツの管理 の リポジトリーの同期 を参照してください。
- ホスト登録用のアクティベーションキーを用意している。詳細は、コンテンツの管理 の アクティベーションキーの作成 を参照してください。
- GCE プロジェクトで、必要な IAM Compute ロールでサービスアカウントを設定します。詳細は、GCE ドキュメントの Compute Engine IAM roles を参照してください。
-
GCE プロジェクト全体のメタデータで、
enable-osloginをFALSEに設定します。詳細は、GCE ドキュメントの Enabling or disabling OS Login を参照してください。 -
オプション: GCE ホストで Puppet を使用するには、Administer > Settings > Puppet に移動して、
Use UUID for certificates設定を有効にして、Puppet が一貫性のある Puppet 証明書 ID を使用するように設定します。 -
ニーズに合わせて
finishまたはuser_dataプロビジョニングテンプレートと使用するオペレーティングシステムを関連付けます。詳細は、ホストのプロビジョニング の プロビジョニングテンプレート を参照してください。
14.1. Satellite Server への Google GCE 接続の追加 リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、Google Compute Engine (GCE) を Satellite のコンピュートリソースとして追加します。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Google GCE で、サービスアカウントキーを JSON 形式で生成します。詳細は、GCE ドキュメントの サービスアカウントキーの作成と管理 を参照してください。
- Satellite Web UI で Infrastructure > Compute Resources に移動して、Create Compute Resource をクリックします。
- Name フィールドには、コンピュートリソースの名前を入力します。
- Provider のリストから Google を選択します。
- オプション: Description フィールドに、リソースの説明を入力します。
- JSON key フィールドで、Choose File をクリックし、ローカルマシンからアップロードするサービスアカウントキーを見つけます。
- Load Zones をクリックして GCE 環境からゾーンリストを生成します。
- Zone リストから使用する GCE ゾーンを選択します。
- Submit をクリックします。
CLI 手順
- Google GCE で、サービスアカウントキーを JSON 形式で生成します。詳細は、GCE ドキュメントの サービスアカウントキーの作成と管理 を参照してください。
ファイルをローカルマシンから Satellite Server にコピーします。
scp My_GCE_Key.json root@satellite.example.com:/etc/foreman/My_GCE_Key.json
# scp My_GCE_Key.json root@satellite.example.com:/etc/foreman/My_GCE_Key.jsonCopy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite Server で、サービスアカウントキーの所有者を
foremanユーザーに変更します。chown root:foreman /etc/foreman/My_GCE_Key.json
# chown root:foreman /etc/foreman/My_GCE_Key.jsonCopy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite Server で、サービスアカウントキーのアクセス許可を設定して、ファイルが読み取り可能であることを確認します。
chmod 0640 /etc/foreman/My_GCE_Key.json
# chmod 0640 /etc/foreman/My_GCE_Key.jsonCopy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite Server で、サービスアカウントキーの SELinux コンテキストを復元します。
restorecon -vv /etc/foreman/My_GCE_Key.json
# restorecon -vv /etc/foreman/My_GCE_Key.jsonCopy to Clipboard Copied! Toggle word wrap Toggle overflow hammer compute-resource createコマンドを使用して GCE コンピュートリソースを Satellite に追加します。hammer compute-resource create \ --key-path "/etc/foreman/My_GCE_Key.json" \ --name "My_GCE_Compute_Resource" \ --provider "gce" \ --zone "My_Zone"
$ hammer compute-resource create \ --key-path "/etc/foreman/My_GCE_Key.json" \ --name "My_GCE_Compute_Resource" \ --provider "gce" \ --zone "My_Zone"Copy to Clipboard Copied! Toggle word wrap Toggle overflow
14.2. Satellite Server への Google Compute Engine イメージの追加 リンクのコピーリンクがクリップボードにコピーされました!
イメージベースのプロビジョニングを使用してホストを作成するには、アクセスの情報およびイメージの場所など、イメージの情報を Satellite Server に追加する必要があります。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Infrastructure > Compute Resources に移動し、Google Compute Engine 接続の名前をクリックします。
- Create Image をクリックします。
- Name フィールドに、イメージの名前を入力します。
- Operating System リストから、イメージのベースオペレーティングシステムを選択します。
- Architecture リストから、オペレーティングシステムのアーキテクチャーを選択します。
-
Username フィールドには、イメージにアクセスするための SSH ユーザー名を入力します。
rootユーザーは SSH キーを使用して GCE インスタンスに接続できないので、root以外のユーザーを指定してください。ユーザー名は文字で始まり、小文字と数字で構成されている必要があります。 - Image リストの Google Compute Engine コンピュートリソースからイメージを選択します。
-
オプション: イメージで
cloud-initデータなどのユーザーデータ入力をサポートさせるには、User Data チェックボックスを選択します。 - Submit をクリックしてイメージの詳細を保存します。
CLI 手順
hammer compute-resource image createコマンドでイメージを作成します。rootユーザーは SSH キーを使用して GCE インスタンスに接続できないので、--usernameオプションを使用して、root以外のユーザーを指定します。ユーザー名は文字で始まり、小文字と数字で構成されている必要があります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
14.3. コンピュートプロファイルに Google GCE の詳細を追加する リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、Google GCE ハードウェア設定をコンピュートプロファイルに追加します。このコンピュートプロファイルを使用して Google GCE にホストを作成すると、ハードウェア設定が自動的に入力されます。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Infrastructure > Compute Profiles に移動します。
- コンピュートプロファイルウィンドウで、既存のコンピュートプロファイル名をクリックするか、Create Compute Profile をクリックするか、Name を入力して Submit をクリックします。
- GCE コンピュートリソースの名前をクリックします。
- Machine Type リストからプロビジョニングに使用するマシンタイプを選択します。
- Image リストから、プロビジョニングに使用するイメージを選択します。
- Network リストから、プロビジョニングに使用する Google GCE ネットワークを選択します。
- オプション: Associate Ephemeral External IP チェックボックスを選択して、動的で一時的な IP アドレスを割り当て、Satellite がホストと通信に使用できるようにします。ホストを再起動すると、このパブリック IP アドレスは変わります。永続的な IP アドレスが必要な場合には、Google GCE で静的なパブリック IP アドレスを予約し、ホストにアタッチします。
- Size (GB) フィールドに、ホストで作成するストレージのサイズを入力します。
- Submit をクリックしてコンピュートプロファイルを保存します。
CLI 手順
Google GCE コンピュートリソースで使用するコンピュートプロファイルを作成します。
hammer compute-profile create --name My_GCE_Compute_Profile
$ hammer compute-profile create --name My_GCE_Compute_ProfileCopy to Clipboard Copied! Toggle word wrap Toggle overflow GCE の情報をコンピュートプロファイルに追加します。
hammer compute-profile values create \ --compute-attributes "machine_type=f1-micro,associate_external_ip=true,network=default" \ --compute-profile "My_GCE_Compute_Profile" \ --compute-resource "My_GCE_Compute_Resource" \ --volume "size_gb=20"
$ hammer compute-profile values create \ --compute-attributes "machine_type=f1-micro,associate_external_ip=true,network=default" \ --compute-profile "My_GCE_Compute_Profile" \ --compute-resource "My_GCE_Compute_Resource" \ --volume "size_gb=20"Copy to Clipboard Copied! Toggle word wrap Toggle overflow
14.4. Google Compute Engine でのイメージベースのホストの作成 リンクのコピーリンクがクリップボードにコピーされました!
Satellite では、Google Compute Engine プロビジョニングを使用して、既存のイメージからホストを作成できます。新規ホストのエントリーは、Google Compute Engine サーバーが新規ボリュームのベースとして既存のイメージを使用し、インスタンスを作成するようトリガーします。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Hosts > Create Host に移動します。
- Name フィールドには、ホストの名前を入力します。
- オプション: Organization タブをクリックし、要件に合わせて組織コンテキストを変更します。
- オプション: Location タブをクリックし、要件に合わせてロケーションコンテキストを変更します。
- Host Group リストから、ホストを割り当てるホストグループを選択します。そのホストグループがフォームに入力されます。
- Deploy on リストから、Google Compute Engine 接続を選択します。
- Compute Profile リストから、仮想マシンの設定を自動的に投入するために使用するプロファイルを選択します。
- Lifecycle Environment リストから、環境を選択します。
- Interfaces タブをクリックし、ホストのインターフェイスで Edit をクリックします。
フィールドに値が投入されていることを確認します。特に以下に注意してください。
- Satellite は新規ホストの IP アドレスを自動的に割り当てます。
- MAC address フィールドが空白であることを確認します。Google Compute Engine サーバーは MAC アドレスをホストに割り当てます。
- Host タブの Name は DNS name になります。
- ドメイン フィールドに必要なドメインの情報が入力されていること。
- Satellite が、ホストの最初のインターフェイスに Managed、Primary、および Provision オプションを自動選択していることを確認します。選択されていない場合は、それらを選択してください。
- OK をクリックして保存します。別のインターフェイスを追加するには、Add Interface をクリックします。プロビジョニング および プライマリー には、インターフェイスは 1 つしか選択できません。
- Operating System タブをクリックして、全フィールドに値が自動的に含まれていることを確認します。
- Provisioning templates で Resolve をクリックし、新規ホストから使用する適切なプロビジョニングテンプレートを特定できることを確認します。
- Virtual Machine タブをクリックして、設定には、ホストグループおよびコンピュートプロファイルからの情報が入力されていることを確認します。必要に応じてこれらの設定を変更します。
-
Parameters タブで、Add parameter をクリックします。名前が
kt_activation_keysのパラメーターを追加し、string タイプを選択して、アクティベーションキーの名前を値として入力します。アクティベーションキーは、ホストと同じ組織に属している必要があります。複数のアクティベーションキーをコンマで区切って入力することもできます。 - Submit をクリックしてホストエントリーを保存します。
CLI 手順
--provision-method imageを指定してhammer host createコマンドでホストを作成します。以下の例の値は、お使いの環境に合った値に置き換えます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
このコンピュートリソースに対する他のホスト作成パラメーターの情報は、hammer host create --help コマンドを入力します。
14.5. Google GCE での VM の削除 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server の Google GCE で実行されている VM を削除できます。
手順
- Satellite Web UI で、Infrastructure > Compute Resources に移動します。
- Google GCE プロバイダーを選択します。
- Virtual Machines タブで、Actions メニューから Delete をクリックします。これにより、Google GCE コンピューティングリソースから仮想マシンが削除されますが、Satellite 内の関連するホストは保持されます。孤立したホストを削除する場合は、Hosts > All Hosts に移動し、ホストを手動で削除します。
関連情報
- ホストを削除するときに関連付けられた仮想マシンも削除するように Satellite を設定できます。詳細は、「ホストの削除時の仮想マシンの削除」 を参照してください。
第15章 Microsoft Azure Resource Manager でのクラウドインスタンスのプロビジョニング リンクのコピーリンクがクリップボードにコピーされました!
Satellite は、Microsoft Azure Resource Manager と対話して、新規仮想マシンの作成、電源管理の状態の制御などを実行できます。Azure ホストの作成では、イメージベースのプロビジョニングのみがサポートされます。これには、Marketplace イメージ、カスタムイメージ、共有イメージギャラリーを使用したプロビジョニングが含まれます。
Azure Resource Manager の概念の詳細は、Azure Resource Manager documentation を参照してください。
前提条件
- Red Hat Enterprise Linux の同期済みのコンテンツリポジトリーを使用できる。詳細は、コンテンツの管理 の リポジトリーの同期 を参照してください。
- ホスト登録用のアクティベーションキーを用意している。詳細は、コンテンツの管理 の アクティベーションキーの作成 を参照してください。
- Azure Active Directory アプリケーション作成に適したパーミッションがあることを確認します。詳細は、Microsoft identity platform (Azure Active Directory for developers) ドキュメントの Check Azure AD permissions を参照してください。
- Azure Active Directory アプリケーションとサービスのプリンシパルを作成して設定し、アプリケーションまたは client ID、ディレクトリーまたは tenant ID、およびクライアントシークレットを取得する必要があります。詳細は、Microsoft identity platform (Azure Active Directory for developers) ドキュメントの Use the portal to create an Azure AD application and service principal that can access resources を参照してください。
-
オプション: Azure ホストで Puppet を使用するには、Administer > Settings > Puppet に移動して、
Use UUID for certificates設定を有効にして、Puppet が一貫性のある Puppet 証明書 ID を使用するように設定します。 -
ニーズに合わせて
finishまたはuser_dataプロビジョニングテンプレートと使用するオペレーティングシステムを関連付けます。プロビジョニングテンプレートの詳細は、プロビジョニングテンプレート を参照してください。 - オプション: 仮想マシンで静的なプライベート IP アドレスを使用する場合には、ネットワークアドレス フィールドが Azure サブネットのアドレスと一致するように、Satellite のサブネットを作成してください。
- RHEL BYOS イメージを作成する前に、Azure CLI またはポータルでイメージの条件に同意して、イメージを使用してサブスクリプションの仮想マシンを作成し、管理できるようにします。
15.1. Satellite Server への Microsoft Azure Resource Manager 接続の追加 リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、Satellite でコンピューティングリソースとして Microsoft Azure を追加します。使用する Microsoft Azure リージョンごとに個別のコンピューティングリソースを追加する必要があることに注意してください。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で Infrastructure > Compute Resources に移動して、Create Compute Resource をクリックします。
- Name フィールドには、コンピュートリソースの名前を入力します。
- Provider のリストから Azure Resource Manager を選択します。
- オプション: Description フィールドに、リソースの説明を入力します。
デフォルトでは、Cloud は Public/Standard に設定されています。Azure Government Cloud は、次のリージョンをサポートしています。
- 米国政府
- 中国
- ドイツ
- Client ID フィールドでアプリケーションか、クライアント ID を入力します。
- Client Secret フィールドに、クライアントシークレットを入力します。
- Subscription ID フィールドに、サブスクリプション ID を入力します。
- Tenant ID フィールドで、ディレクトリーまたは テナント ID を入力します。
- Load Regions をクリックします。これにより、Azure Resource Manager への接続が成功し、サブスクリプションで利用可能なリージョンが読み込まれていることをテストします。
- Azure Region リストから、使用する Azure リージョンを選択します。
- Submit をクリックします。
CLI 手順
hammer compute-resource createを使用して Satellite に Azure コンピュートリソースを追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow --regionオプションの値には、小文字を使用する必要があり、特殊文字を含めることはできません。
Azure Government Cloud を使用している場合は、--cloud パラメーターを渡す必要があります。cloud パラメーターの値は次のとおりです。
| Azure Government Cloud の名前 | hammer --cloud の値 |
|---|---|
| 米国政府 | azureusgovernment |
| 中国 | azurechina |
| ドイツ | azuregermancloud |
15.2. Satellite Server への Microsoft Azure Resource Manager イメージの追加 リンクのコピーリンクがクリップボードにコピーされました!
イメージベースのプロビジョニングを使用してホストを作成するには、アクセスの情報およびイメージの場所など、イメージの情報を Satellite Server に追加する必要があります。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Infrastructure > Compute Resources に移動し、Microsoft Azure Resource Manager 接続の名前をクリックします。
- Create Image をクリックします。
- Name フィールドに、イメージの名前を入力します。
- Operating System リストから、イメージのベースオペレーティングシステムを選択します。
- Architecture リストから、オペレーティングシステムのアーキテクチャーを選択します。
-
Username フィールドには、イメージにアクセスするための SSH ユーザー名を入力します。
rootユーザーは使用できません。 - オプション: Password フィールドに認証に使用するパスワードを入力します。
Azure Image Name フィールドでイメージ名を
prefix://UUID形式で入力します。-
カスタムのイメージの場合は
customのプリフィックスを使用します。(例: custom://image-name) -
共有ギャラリーのイメージの場合には
galleryのプリフィックスを使用します。たとえば、gallery://Templates/image-name です。 パブリックまたは RHEL Bring Your Own Subscription (BYOS) イメージの場合には、
marketplaceのプリフィックスを使用します。(例: marketplace://OpenLogicCentOS:7.5:latest)詳細は、Find Linux VM images in the Azure Marketplace with the Azure CLI を参照してください。
-
カスタムのイメージの場合は
-
オプション: イメージで
cloud-initデータなどのユーザーデータ入力をサポートさせるには、User Data チェックボックスを選択します。 - Submit をクリックしてイメージの詳細を保存します。
CLI 手順
hammer compute-resource image createコマンドでイメージを作成します。イメージに入力するユーザー名は、このイメージでホストを作成する時に使用したものと同じでなければなりません。--passwordオプションは、イメージの作成には任意です。rootユーザーは使用できません。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
15.3. コンピュートプロファイルに Microsoft Azure Resource Manager の詳細を追加する リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、Microsoft Azure ハードウェア設定をコンピュートプロファイルに追加します。このコンピュートプロファイルを使用して Microsoft Azure でホストを作成すると、これらの設定が自動的に入力されます。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Infrastructure > Compute Profiles に移動します。
- コンピュートプロファイルウィンドウで、既存のコンピュートプロファイル名をクリックするか、Create Compute Profile をクリックするか、Name を入力して Submit をクリックします。
- Azure コンピューティングリソースの名前をクリックします。
- Resource group リストから、プロビジョニングするリソースグループを選択します。
- VM Size リストからプロビジョニングする仮想マシンのサイズを選択します。
- Platform リストから Linux を選択します。
- Username フィールドに、認証に使用するユーザー名を入力します。コンピュートプロファイルに入力するユーザー名は、イメージの作成時に使用したのと同じものでなければなりません。
ユーザーを認証するには、以下のオプションのいずれかを使用します。
- パスワードを使用した認証は、Password フィールドにパスワードを入力します。
- SSH キーを使用した認証は、SSH Key フィールドに SSH キーを入力します。
- オプション l: 仮想マシンに、プレミアム仮想マシンディスクを使用させる場合には、Premium OS Disk のチェックボックスを選択します。
- OS Disk Caching リストからディスクのキャッシュ設定を選択します。
- オプション: Custom Script Command フィールドに、仮想マシンのプロビジョニング時に仮想マシンで実行するコマンドを入力します。
-
オプション: プロビジョニングの完了時にカスタムスクリプトを実行する場合には、Comma separated file URIs フィールドに、使用するコンマ区切りのファイルの URI を入力します。Red Hat Satellite はファイルを
/var/lib/waagent/custom-script/download/0/ディレクトリーにダウンロードし、スクリプトの実行には sudo の特権が必要であるため、スクリプトには、最初にsudoを含める必要があります。 オプション: NVIDIA driver / CUDA チェックボックスを選択することにより、NVIDIA Driver を追加できます。詳細は、次の Microsoft Azure のドキュメントを参照してください。
オプション: VM に追加ボリュームを作成する場合には、Add Volume ボタンをクリックして Size を GB 単位で入力し、Data Disk Caching メソッドを選択します。
- これらのディスクの最大数は、選択した仮想マシンのサイズによって異なることに注意してください。Microsoft Azure 仮想マシンのストレージ要件の詳細は、Microsoft Azure ドキュメント を参照してください。
Add Interface をクリックします。
重要インターフェイスの最大数は、選択した仮想マシンサイズにより異なります。詳細は、上記の Microsoft Azure のドキュメントリンクを参照してください。
- Azure Subnet リストからプロビジョニングする Azure サブネットを選択します。
- Public IP リストからパブリック IP 設定を選択します。
- オプション: 静的なプライベート IP を仮想マシンに使用させるには、Static Private IP のチェックボックスを選択します。
- Submit をクリックします。
CLI 手順
Azure Resource Manager のコンピュートリソースで使用するコンピュートプロファイルを作成します。
hammer compute-profile create --name compute_profile_name
$ hammer compute-profile create --name compute_profile_nameCopy to Clipboard Copied! Toggle word wrap Toggle overflow コンピュートプロファイルに Azure の情報を追加します。
ユーザー名の設定では、イメージへのアクセスに使用する SSH ユーザー名を入力します。コンピュートプロファイルに入力するユーザー名は、イメージの作成時に使用したのと同じものでなければなりません。Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: プロビジョニング後に仮想マシンでスクリプトを実行する場合には、以下の設定を指定します。
-
直接スクリプトを入力するには、
script_command設定で、プロビジョニングした仮想マシンで実行するコマンドを入力します。 -
script_uris設定を使用して URI からスクリプトを実行するには、使用するコンマ区切りのファイルの URI を入力します。Red Hat Satellite はファイルを/var/lib/waagent/custom-script/download/0/ディレクトリーにダウンロードし、スクリプトの実行には sudo の特権が必要であるため、スクリプトには、最初にsudoを含める必要があります。
-
直接スクリプトを入力するには、
15.4. Microsoft Azure Resource Manager でのイメージベースのホスト作成 リンクのコピーリンクがクリップボードにコピーされました!
Satellite では、Microsoft Azure Resource Manager プロビジョニングを使用して、既存のイメージからホストを作成できます。新規ホストのエントリーは、Microsoft Azure Resource Manager サーバーが新規ボリュームのベースとして既存のイメージを使用し、インスタンスを作成するようトリガーします。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Hosts > Create Host に移動します。
- Name フィールドには、ホストの名前を入力します。
- オプション: Organization タブをクリックし、要件に合わせて組織コンテキストを変更します。
- オプション: Location タブをクリックし、要件に合わせてロケーションコンテキストを変更します。
- Host Group リストから、ホストを割り当てるホストグループを選択します。そのホストグループがフォームに入力されます。
- Deploy on リストから、Microsoft Azure Resource Manager 接続を選択します。
- Compute Profile リストから、仮想マシンの設定を自動的に投入するために使用するプロファイルを選択します。
- Lifecycle Environment リストから、環境を選択します。
- Interfaces タブをクリックし、ホストのインターフェイスで Edit をクリックします。
フィールドに値が投入されていることを確認します。特に以下に注意してください。
- Satellite は新規ホストの IP アドレスを自動的に割り当てます。
- MAC address フィールドが空白であることを確認します。Microsoft Azure Resource Manager サーバーは、プロビジョニング中に MAC アドレスをホストに割り当てます。
- Host タブの Name は DNS name になります。
- Azure Subnet フィールドに必要な Azure サブネットの情報が入力されていること。
- オプション: 仮想マシンで IPv4 Subnet リストから静的なプライベート IP アドレスを使用する場合には、Azure サブネットのアドレスと一致するように、Network Address フィールドで、Satellite のサブネットを選択してください。IPv4 Address フィールドに、Azure サブネットの範囲内の IPv4 アドレスを入力します。
- Satellite が、ホストの最初のインターフェイスに Managed、Primary、および Provision オプションを自動選択していることを確認します。選択されていない場合は、それらを選択してください。
- OK をクリックして保存します。別のインターフェイスを追加するには、Add Interface をクリックします。プロビジョニング および プライマリー には、インターフェイスは 1 つしか選択できません。
- Operating System タブをクリックして、全フィールドに値が自動的に含まれていることを確認します。
- Provisioning Method には Image Based が選択されているようにします。
- Image リストから、プロビジョニングに使用する Azure Resource Manager イメージを選択します。
- Root Password フィールドで、認証に使用する root パスワードを入力します。
- Provisioning templates で Resolve をクリックし、新規ホストから使用する適切なプロビジョニングテンプレートを特定できることを確認します。
- Virtual Machine タブをクリックして、設定には、ホストグループおよびコンピュートプロファイルからの情報が入力されていることを確認します。必要に応じてこれらの設定を変更します。
-
Parameters タブで、Add parameter をクリックします。名前が
kt_activation_keysのパラメーターを追加し、string タイプを選択して、アクティベーションキーの名前を値として入力します。アクティベーションキーは、ホストと同じ組織に属している必要があります。複数のアクティベーションキーをコンマで区切って入力することもできます。 - Submit をクリックしてホストエントリーを保存します。
CLI 手順
--provision-method imageを指定してhammer host createコマンドでホストを作成します。以下の例の値は、お使いの環境に合った値に置き換えます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
このコンピュートリソースに対する他のホスト作成パラメーターの情報は、hammer host create --help コマンドを入力します。
15.5. Microsoft Azure 上の VM の削除 リンクのコピーリンクがクリップボードにコピーされました!
Microsoft Azure で実行されている VM は、Satellite 内から削除できます。
手順
- Satellite Web UI で、Infrastructure > Compute Resources に移動します。
- Microsoft Azure プロバイダーを選択します。
- Virtual Machines タブで、Actions メニューから Delete をクリックします。これにより、Microsoft Azure コンピューティングリソースから仮想マシンが削除されますが、Satellite 内で関連付けられたホストは保持されます。孤立したホストを削除する場合は、Hosts > All Hosts に移動し、ホストを手動で削除します。
関連情報
- ホストを削除するときに関連付けられた仮想マシンも削除するように Satellite を設定できます。詳細は、「ホストの削除時の仮想マシンの削除」 を参照してください。
付録A プロビジョニングのサンプル用の初期化スクリプト リンクのコピーリンクがクリップボードにコピーされました!
コンテンツの管理 の例を使用していない場合は、次の初期化スクリプトを使用してプロビジョニングのサンプル用の環境を作成できます。
手順
スクリプトファイル (
content-init.sh) を作成し、以下を組み込みます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow スクリプトに実行権限を設定します。
chmod +x content-init.sh
# chmod +x content-init.shCopy to Clipboard Copied! Toggle word wrap Toggle overflow Red Hat カスタマーポータルから、Red Hat サブスクリプションマニフェストのコピーをダウンロードし、マニフェストでスクリプトを実行します。
./content-init.sh manifest_98f4290e-6c0b-4f37-ba79-3a3ec6e405ba.zip
# ./content-init.sh manifest_98f4290e-6c0b-4f37-ba79-3a3ec6e405ba.zipCopy to Clipboard Copied! Toggle word wrap Toggle overflow これにより、このガイドでのプロビジョニングのサンプルに必要な Red Hat のコンテンツがインポートされます。
付録B FIPS 準拠ホストのプロビジョニング リンクのコピーリンクがクリップボードにコピーされました!
Satellite は、National Institute of Standards and Technology の 暗号モジュールのセキュリティー要件 (Security Requirements for Cryptographic Modules) 標準 (参照番号 FIPS 140-2、FIPS と呼ばれる) に準拠するプロビジョニングホストをサポートします。
FIPS に準拠するホストのプロビジョニングを有効にするには、以下のタスクを実行します。
- オペレーティングシステムのプロビジョニングのパスワードハッシュアルゴリズムを変更する。
- ホストグループを作成し、ホストグループのパラメーターを設定して FIPS を有効にする。
詳細は、ホストの管理 の ホストグループの作成 を参照してください。
プロビジョニングしたホストに、FIPS に準拠する設定が適用されている。これらの設定が有効であることを確認するには、「FIPS モードが有効になっていることを確認する」 の手順を実行します。
B.1. プロビジョニングのパスワードハッシュアルゴリズムの変更 リンクのコピーリンクがクリップボードにコピーされました!
FIPS に準拠するホストをプロビジョニングするには、プロビジョニングで使用するパスワードのハッシュアルゴリズムを SHA256 に設定します。この設定は、FIPS 準拠としてデプロイするオペレーティングシステムごとに、適用する必要があります。
手順
オペレーティングシステム ID を特定します。
hammer os list
$ hammer os listCopy to Clipboard Copied! Toggle word wrap Toggle overflow 各オペレーティングシステムのパスワードハッシュ値を更新します。
hammer os update \ --password-hash SHA256 --title "My_Operating_System"
$ hammer os update \ --password-hash SHA256 --title "My_Operating_System"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 値をコンマ区切りで指定することはできない点に注意してください。
B.2. FIPS 対応パラメーターの設定 リンクのコピーリンクがクリップボードにコピーされました!
FIPS 準拠のホストをプロビジョニングするには、ホストグループを作成して、ホストグループのパラメーター fips_enabled を true に設定する必要があります。このパラメーターが true に設定されていない場合や、ない場合には、FIPS 固有の変更がシステムに適用されません。ホストのプロビジョニング時または、ホストグループを使用する場合に、このパラメーターを使用してください。
ホストのプロビジョニング時にこのパラメーターを設定するには、--parameters fips_enabled=true を Hammer コマンドに追加します。
hammer hostgroup set-parameter \ --hostgroup "My_Host_Group" \ --name fips_enabled \ --value "true"
$ hammer hostgroup set-parameter \
--hostgroup "My_Host_Group" \
--name fips_enabled \
--value "true"
詳細は、hammer hostgroup set-parameter --help コマンドの出力を参照してください。
B.3. FIPS モードが有効になっていることを確認する リンクのコピーリンクがクリップボードにコピーされました!
これらの FIPS 準拠に関する変更が正常に行われたことを確認するには、ホストのプロビジョニングを実行し、その設定を確認する必要があります。
手順
-
rootまたは管理者レベルのアカウントで、ホストにログインしてください。 以下のコマンドを実行します。
cat /proc/sys/crypto/fips_enabled
$ cat /proc/sys/crypto/fips_enabledCopy to Clipboard Copied! Toggle word wrap Toggle overflow 値が
1の場合は、FIPS モードが有効であることが分かります。
付録C Red Hat Satellite 用のクラウドイメージのビルド リンクのコピーリンクがクリップボードにコピーされました!
このセクションを使用して、イメージをビルドし、Red Hat Satellite に登録します。
事前に設定済みの Red Hat Enterprise Linux KVM ゲスト QCOW2 イメージを使用することができます。
これらのイメージには cloud-init が含まれます。適切に機能させるには、ec2 互換のメタデータサービスを使用して SSH キーをプロビジョニングする必要があります。
KVM ゲストイメージでは、以下の点に注意してください。
-
KVM ゲストイメージでは
rootアカウントが無効になっていますが、cloud-userという名前の特別なユーザーにsudoアクセスが許可されています。 -
このイメージには
rootパスワードは設定されていません。rootパスワードは、/etc/shadowで 2 番目のフィールドに!!と記載することによりロックされます。
カスタム Red Hat Enterprise Linux イメージを作成する場合は、カスタマイズされた Red Hat Enterprise Linux 9 イメージの設定 または カスタマイズされた Red Hat Enterprise Linux 8 イメージの設定 を参照してください。
C.1. Red Hat Enterprise Linux のカスタムイメージの作成 リンクのコピーリンクがクリップボードにコピーされました!
前提条件
- Linux ホストマシンを使用して、イメージを作成する。この例では、Red Hat Enterprise Linux 7 Workstation を使用します。
-
ワークステーションで
virt-managerを使用して、この手順を実行する。リモートサーバーでイメージを作成した場合、virt-managerを使用してワークステーションからサーバーに接続します。 - Red Hat Enterprise Linux 7 ISO ファイル (Red Hat Enterprise Linux 7.4 バイナリー DVD を参照)。
Red Hat Enterprise Linux Workstation のインストールに関する詳細は、Red Hat Enterprise Linux 7 インストールガイド を参照してください。
カスタムのイメージを作成する前に、以下のパッケージをインストールします。
libvirt、qemu-kvmおよびグラフィカルツールをインストールします。yum install virt-manager virt-viewer libvirt qemu-kvm
# yum install virt-manager virt-viewer libvirt qemu-kvmCopy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドラインツールをインストールします。
yum install virt-install libguestfs-tools-c
# yum install virt-install libguestfs-tools-cCopy to Clipboard Copied! Toggle word wrap Toggle overflow
以下の手順では、libvirt 環境をホストするワークステーションで、[root@host]# プロンプトを伴うコマンドはすべて入力します。
C.2. 登録時にサポートされるクライアント リンクのコピーリンクがクリップボードにコピーされました!
Satellite は、登録用に以下のオペレーティングシステムとアーキテクチャーをサポートします。
- サポートされているホストオペレーティングシステム
ホストは、以下のオペレーティングシステムを使用できます。
- Red Hat Enterprise Linux 10、9、および 8
- ELS アドオン を使用する Red Hat Enterprise Linux 7
- サポートされるホストアーキテクチャー
ホストは、次のアーキテクチャーを使用できます。
- AMD アーキテクチャーおよび Intel 64 ビットアーキテクチャー
- 64 ビット ARM アーキテクチャー
- IBM Power Systems (リトルエンディアン)
- 64 ビット IBM Z アーキテクチャー
C.3. ホスト登録の設定 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server または Capsule Server に登録できるようにホストを設定します。設定管理ツールを使用して、複数のホストを一度に設定できます。
前提条件
- ホストはサポートされているオペレーティングシステムを使用している必要がある。詳細は、「登録時にサポートされるクライアント」 を参照してください。
- Satellite Server および Capsule Server のシステムクロックは、ネットワーク全体で同期する必要があります。システムクロックが同期されていない場合、SSL 証明書の検証が失敗する可能性があります。たとえば、時間管理には Chrony スイートを使用できます。
手順
ホスト上で時刻同期ツールを有効にして起動します。ホストは、Satellite Server および Capsule Server と同じ NTP サーバーと同期する必要があります。
systemctl enable --now chronyd
# systemctl enable --now chronydCopy to Clipboard Copied! Toggle word wrap Toggle overflow ホストが安全な登録呼び出しを行えるように、ホストに SSL CA ファイルをデプロイします。
- そのためには、Administer > Settings > Authentication に移動し、SSL CA file 設定を見つけて、Satellite が CA ファイルを保存する場所を検出します。
-
たとえば
scpを使用して、SSL CA ファイルをホストに安全に転送します。 - SSH を使用してホストにログインします。
証明書をトラストストアにコピーします。
cp My_SSL_CA_file.pem /etc/pki/ca-trust/source/anchors
# cp My_SSL_CA_file.pem /etc/pki/ca-trust/source/anchorsCopy to Clipboard Copied! Toggle word wrap Toggle overflow トラストストアを更新します。
update-ca-trust
# update-ca-trustCopy to Clipboard Copied! Toggle word wrap Toggle overflow
C.4. ホストの登録 リンクのコピーリンクがクリップボードにコピーされました!
登録テンプレートを使用してホストを登録し、登録プロセス中にさまざまなインテグレーション機能とホストツールを設定できます。
前提条件
- Satellite アカウントに Register hosts ロールが割り当てられているか、同等のパーミッションを持つロールがある。
- 登録するホストで root 権限がある。
-
登録するホストに
curlまたはwgetのいずれかがインストールされている。 - 登録用のホストが設定されている。詳細は、「ホスト登録の設定」 を参照してください。
- ホストのアクティベーションキーがある。詳細は、コンテンツの管理 の アクティベーションキーの管理 を参照してください。
-
オプション: ホストを Red Hat Insights に登録する場合は、
rhel-8-for-x86_64-baseos-rpmsリポジトリーとrhel-8-for-x86_64-appstream-rpmsリポジトリーを同期し、アクティベーションキーで使用できるようにしておく。これは、ホストにinsights-clientパッケージをインストールするために必要です。 - ホストのオペレーティングシステムバージョン用の Red Hat Satellite Client 6 リポジトリーが、Satellite Server 上で同期され、使用するアクティベーションキーで有効になっている。詳細は、コンテンツの管理 の コンテンツのインポート を参照してください。このリポジトリーは、リモート実行プルクライアント、Puppet エージェント、Tracer、およびその他のツールに必要です。
Satellite Server の代わりに Capsule Server を使用する場合は、Capsule Server が適切に設定されていることを確認してください。
重要Capsule Server を Satellite Server 上の信頼できるプロキシーのリストに追加することが重要です。
詳細は、Capsule Server のインストール の ホストの登録とプロビジョニングのための Capsule の設定 を参照してください。
- Satellite Server または Capsule Server が HTTP プロキシーの背後にある場合は、接続に HTTP プロキシーを使用するようにホストでサブスクリプションマネージャーを設定します。詳細は、Red Hat ナレッジベース の How to access Red Hat Subscription Manager (RHSM) through a firewall or proxy を参照してください。
手順
- Satellite Web UI で、Hosts > Register Host に移動します。
登録ホストの設定方法を入力します。
Host Group リストからホストグループを選択した場合、次のフィールドはホストグループの値を継承します。
- オペレーティングシステム
- アクティベーションキー
- Lifecycle environment
- ロードバランサーの背後にある Capsule は、Satellite Web UI でホストのコンテンツソースとして選択された Capsule よりも優先されます。
- General タブの Activation Keys フィールドに、ホストに割り当てるアクティベーションキーを 1 つ以上入力します。
-
Generate をクリックして
curlコマンドを生成します。 -
登録するホストで、
curlコマンドをrootとして実行します。登録が完了すると、登録テンプレートの設定時に指定したホストグループに割り当てられた Ansible ロールがホスト上で実行されます。
指定できる登録の詳細は次のとおりです。
- General タブの Capsule フィールドで、ホストを登録する Capsule を選択できます。ロードバランサーの背後にある Capsule は、Satellite Web UI でホストのコンテンツソースとして選択された Capsule よりも優先されます。
-
wgetコマンドを使用してホストを登録する場合は、General タブの Download utility フィールドでwgetを選択できます。デフォルトでは、Satellite はcurlコマンドを生成します。 General タブで Insecure オプションを選択すると、最初の呼び出しを insecure にします。この最初の呼び出し中に、ホストは Satellite から CA ファイルをダウンロードします。ホストは、この CA ファイルを使用して Satellite に接続するため、今後のすべての呼び出しは安全になります。
Red Hat は、セキュアでない呼び出しを回避することを推奨します。
Satellite とホスト間のネットワークに存在する攻撃者が最初の安全でない呼び出しから CA ファイルを取得すると、攻撃者はホストとの間の API 呼び出しの内容と JSON Web Token (JWT) にアクセスできるようになります。そのため、登録中の SSH キーのデプロイを選択した場合、攻撃者は SSH キーを使用してホストにアクセスできます。
- Advanced タブの Repositories フィールドでは、登録を実行する前に追加するリポジトリーをリスト表示できます。アクティベーションキーでリポジトリーを指定する場合は、リポジトリーを指定する必要はありません。
- Advanced タブでは、リモート実行、Red Hat Insights、およびインストールするパッケージを設定できます。
Advanced タブの Token lifetime (hours) フィールドで、Satellite が認証に使用する JSON Web Token (JWT) の有効期間を変更できます。このトークンの有効期間は、生成された登録コマンドが機能する期間を定義します。
Satellite では、登録用コマンドを作成したユーザーの権限が、そのホストの認可設定に影響する点に注意してください。ユーザーが追加のパーミッションを失ったり取得したりすると、JWT のパーミッションも変わってきます。そのため、トークン期間中にユーザーのパーミッションを削除、ブロック、または変更しないでください。
JWT の範囲は登録エンドポイントのみに制限されているため、その他の場所では使用できません。
Satellite は、ID でリソースを検索するパラメーターを含む登録コマンドを生成します。登録コマンドを編集して、次のリソースをタイトルで検索できます。
- 組織
-
URL フラグメントの例:
organization=My%20Organizationまたはorganization=My+Organization - Location
-
URL フラグメントの例:
location=My%20Locationまたはlocation=My+Location - Host group
ホストグループがネストされている場合は、スラッシュ文字 (
/) で区切られた親グループを含めます。URL フラグメントの例:
hostgroup=Parent%20Group%2FMy%20Host%20Group- オペレーティングシステム
-
URL フラグメントの例:
operatingsystem=My%20Operating%20Systemまたはoperatingsystem=My+Operating+System
パラメーター値は URL エンコードされている必要があります。
CLI 手順
-
hammer host-registration generate-commandを使用して、ホストを登録するための登録コマンドを生成します。 -
登録するホスト上で、
rootとして登録コマンドを実行します。
詳細は、Hammer CLI のヘルプ hammer host-registration generate-command --help を参照してください。
Ansible の手順
-
redhat.satellite.registration_commandモジュールを使用します。
詳細は、ansible-doc redhat.satellite.registration_command の Ansible モジュールのドキュメントを参照してください。
API の手順
-
POST /api/registration_commandsリソースを使用します。
詳細は、https://satellite.example.com/apidoc/v2.html にある完全な API リファレンスを参照してください。
次のステップ
- Tracer を使用して古いサービスとアプリケーションの監視を設定するには、ホストの管理 の ホスト上での Tracer の設定 を参照してください。
C.5. Puppet Agent の手動でのインストールと設定 リンクのコピーリンクがクリップボードにコピーされました!
Puppet エージェントを手動でホストにインストールし、設定できます。Satellite と Puppet を統合するには、設定済みの Puppet エージェントがホストに必要です。Puppet の詳細は、Puppet 統合を使用した設定の管理 を参照してください。
前提条件
- Satellite で Puppet が有効になっている。詳細は、Puppet 統合を使用した設定の管理 の Satellite と Puppet の統合の有効化 を参照してください。
- ホストに Puppet 環境が割り当てられている。
- ホストのオペレーティングシステムバージョン用の Red Hat Satellite Client 6 リポジトリーが、Satellite Server 上で同期され、ホストのコンテンツビューおよびライフサイクル環境で使用可能であり、ホストに対して有効になっている。詳細は、コンテンツの管理 の Satellite のホストのリポジトリーセットのステータスの変更 を参照してください。
手順
-
rootユーザーで、ホストにログインします。 Puppet エージェントパッケージをインストールします。
Red Hat Enterprise Linux 8 以降を実行しているホストの場合:
dnf install puppet-agent
# dnf install puppet-agentCopy to Clipboard Copied! Toggle word wrap Toggle overflow Red Hat Enterprise Linux 7 以前を実行しているホストの場合:
yum install puppet-agent
# yum install puppet-agentCopy to Clipboard Copied! Toggle word wrap Toggle overflow
次のスクリプトを使用して、Puppet エージェントを現在のシェルの
PATHに追加します。. /etc/profile.d/puppet-agent.sh
. /etc/profile.d/puppet-agent.shCopy to Clipboard Copied! Toggle word wrap Toggle overflow Puppet エージェントを設定します。ホストの所属先の Puppet 環境名に
environmentパラメーターを設定します。puppet config set server satellite.example.com --section agent puppet config set environment My_Puppet_Environment --section agent
# puppet config set server satellite.example.com --section agent # puppet config set environment My_Puppet_Environment --section agentCopy to Clipboard Copied! Toggle word wrap Toggle overflow Puppet エージェントサービスを開始します。
puppet resource service puppet ensure=running enable=true
# puppet resource service puppet ensure=running enable=trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow ホストの証明書を作成します。
puppet ssl bootstrap
# puppet ssl bootstrapCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Satellite Web UI で、Infrastructure > Capsules に移動します。
- 必要な Capsule Server の Actions コラムの一覧から、Certificates を選択します。
- 必要なホストの右にある Sign をクリックして、Puppet エージェントの SSL 証明書に署名します。
ホスト上で、Puppet エージェントを再度実行します。
puppet ssl bootstrap
# puppet ssl bootstrapCopy to Clipboard Copied! Toggle word wrap Toggle overflow
C.6. Red Hat Enterprise Linux 7 イメージの完了 リンクのコピーリンクがクリップボードにコピーされました!
手順
システムを更新します。
yum update
# yum updateCopy to Clipboard Copied! Toggle word wrap Toggle overflow cloud-initパッケージをインストールします。yum install cloud-utils-growpart cloud-init
# yum install cloud-utils-growpart cloud-initCopy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/cloud/cloud.cfg設定ファイルを開きます。vi /etc/cloud/cloud.cfg
# vi /etc/cloud/cloud.cfgCopy to Clipboard Copied! Toggle word wrap Toggle overflow cloud_init_modulesのタイトルの下に、以下を追加します。- resolv-conf
- resolv-confCopy to Clipboard Copied! Toggle word wrap Toggle overflow resolv-confオプションは、インスタンスの初回起動時にresolv.confを自動的に設定します。このファイルには、nameservers、domain、その他のオプションなどのインスタンスに関連した情報が記載されています。/etc/sysconfig/networkファイルを開きます。vi /etc/sysconfig/network
# vi /etc/sysconfig/networkCopy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の行を追加し、EC2 メタデータサービスへのアクセスで問題が発生するのを回避します。
NOZEROCONF=yes
NOZEROCONF=yesCopy to Clipboard Copied! Toggle word wrap Toggle overflow 仮想マシンの登録を解除して、作成されるイメージをベースにクローン作成されるインスタンスすべてに同じサブスクリプション情報が含まれないようにします。
subscription-manager repos --disable=* subscription-manager unregister
# subscription-manager repos --disable=* # subscription-manager unregisterCopy to Clipboard Copied! Toggle word wrap Toggle overflow インスタンスの電源をオフにします。
poweroff
# poweroffCopy to Clipboard Copied! Toggle word wrap Toggle overflow Red Hat Enterprise Linux Workstation で、ルートユーザーとしてターミナルに接続し、
/var/lib/libvirt/images/ディレクトリーに移動します。cd /var/lib/libvirt/images/
# cd /var/lib/libvirt/images/Copy to Clipboard Copied! Toggle word wrap Toggle overflow virt-sysprepコマンドでイメージのリセットおよびクリーニングをして、問題なくインスタンスの作成に使用できるようにします。virt-sysprep -d rhel7
# virt-sysprep -d rhel7Copy to Clipboard Copied! Toggle word wrap Toggle overflow virt-sparsifyコマンドを使用してイメージのサイズを縮小します。このコマンドにより、ディスクイメージ内の空き容量は、ホスト内の空き容量に戻ります。virt-sparsify --compress rhel7.qcow2 rhel7-cloud.qcow2
# virt-sparsify --compress rhel7.qcow2 rhel7-cloud.qcow2Copy to Clipboard Copied! Toggle word wrap Toggle overflow これにより、コマンドを実行する場所に新しい
rhel7-cloud.qcow2ファイルが作成されます。
C.7. 次のステップ リンクのコピーリンクがクリップボードにコピーされました!
- Satellite とプロビジョニングするすべてのイメージで、この手順を繰り返します。
- 後で使用できるように、保存場所にイメージを移動します。
付録D ホストパラメーターの階層 リンクのコピーリンクがクリップボードにコピーされました!
ホストのプロビジョニング時に、ホストパラメーターにアクセスできます。ホストは、優先度の高い順に、次の場所からパラメーターを継承します。
| パラメーターレベル | Satellite Web UI で設定 |
|---|---|
| グローバルに定義されたパラメーター | Configure > Global parameters |
| 組織レベルのパラメーター | Administer > Organizations |
| ロケーションレベルのパラメーター | Administer > Locations |
| ドメインレベルのパラメーター | Infrastructure > Domains |
| サブネットレベルのパラメーター | Infrastructure > Subnets |
| オペレーティングシステムレベルのパラメーター | Hosts > Provisioning Setup > Operating Systems |
| ホストグループレベルのパラメーター | Configure > Host Groups |
| ホストパラメーター | Hosts > All Hosts |
付録E ホストをプロビジョニングするために必要なパーミッション リンクのコピーリンクがクリップボードにコピーされました!
次のリストは、管理者以外のユーザーがホストをプロビジョニングするために必要なパーミッションの概要を示しています。
| リソース名 | パーミッション | 詳細 |
|---|---|---|
| アクティベーションキー | view_activation_keys | |
| Ansible ロール | view_ansible_roles | Ansible を使用する場合は必須。 |
| アーキテクチャー | view_architectures | |
| コンピュートプロファイル | view_compute_profiles | |
| コンピュートリソース | view_compute_resources、create_compute_resources、destroy_compute_resources、power_compute_resources | ベアメタルホストをプロビジョニングするために必須。 |
| view_compute_resources_vms、create_compute_resources_vms、destroy_compute_resources_vms、power_compute_resources_vms | 仮想マシンをプロビジョニングするために必須。 | |
| Content Views | view_content_views | |
| ドメイン | view_domains | |
| 環境 | view_environments | |
| Host | view_hosts、create_hosts、edit_hosts、destroy_hosts、build_hosts、power_hosts、play_roles_on_host | |
| view_discovered_hosts、submit_discovered_hosts、auto_provision_discovered_hosts、provision_discovered_hosts、edit_discovered_hosts、destroy_discovered_hosts | Discovery サービスが有効になっている場合は必須。 | |
| Hostgroup | view_hostgroups、create_hostgroups、edit_hostgroups、play_roles_on_hostgroup | |
| イメージ | view_images | |
| Lifecycle environment | view_lifecycle_environments | |
| Location | view_locations | |
| Medium | view_media | |
| オペレーティング·システム | view_operatingsystems | |
| 組織 | view_organizations | |
| パラメーター | view_params、create_params、edit_params、destroy_params | |
| 製品とリポジトリー | view_products | |
| Provisioning template | view_provisioning_templates | |
| Ptable | view_ptables | |
| Capsule | view_smart_proxies、view_smart_proxies_puppetca | |
| view_openscap_proxies | OpenSCAP プラグインが有効な場合に必須。 | |
| Subnet | view_subnets |