第6章 ベアメタルホストのプロビジョニング

Red Hat Satellite 6.7 では、ベアメタルインターフェースのプロビジョニングには主に 4 つの方法があります。

無人プロビジョニング
新規ホストは MAC アドレスで特定され、Satellite Server は PXE ブートプロセスを使用してホストをプロビジョニングします。
Discovery を使用した無人プロビジョニング
新規ホストは PXE ブートを使用して Satellite Discovery サービスをロードします。このサービスはホストのハードウェア情報を特定し、ホストをプロビジョニング可能なホストとして一覧表示します。 詳細は、7章Discovery サービスの設定を参照してください。
PXE なしのプロビジョニング
新規ホストは、ブートディスクまたは Satellite Server が生成する PXE なしの検出イメージでプロビジョニングされます。
Discovery を使用した PXE なしのプロビジョニング
新規ホストは ISO ブートディスクを使用して Satellite Discovery サービスをロードします。このサービスはホストのハードウェア情報を特定し、ホストをプロビジョニング可能なホストとして一覧表示します。 詳細は、「PXE を使用しない Discovery の実装」を参照してください。

BIOS および UEFI サポート

Red Hat Satellite では、BIOS および UEFI ベースの PXE プロビジョニングの両方を実行できます。

BIOS および UEFI インターフェースはいずれも、コンピューターのオペレーティングシステムとファームウェアの間のインタープリターとして機能し、ブート時にハードウェアコンポーネントを初期化して、オペレーティングシステムを起動します。

サポート対象のワークフローに関する詳細は、「Supported architectures and provisioning scenarios」を参照してください。

Satellite のプロビジョニングでは、PXE ローダーオプションが、プロビジョニング時に使用する DHCP の filename オプションを定義します。BIOS システムの場合は、PXELinux BIOS オプションを使用してプロビジョニングノードを有効化し、TFTP 経由で pxelinux.0 ファイルをダウンロードします。また、UEFI システムの場合は、PXEGrub2 UEFI オプションを使用して、TFTP クライアントを有効にして grub2/grubx64.efi ファイルをダウンロードします。

BIOS プロビジョニングでは、PXELinux テンプレートとオペレーティングシステムを関連付ける必要があります。

UEFI プロビジョニングでは、PXEGrub2 テンプレートとオペレーティングシステムを関連付ける必要があります。

PXELinux と PXEGrub2 のテンプレートの両方を関連付ける場合は、PXE ローダー間で簡単に切り替えができるように、Satellite 6 で、両テンプレートの設定ファイルを TFTP にデプロイできます。

6.1. ベアメタルプロビジョニングの前提条件

ベアメタルプロビジョニングの要件には以下が含まれます。

  • ベアメタルホストのネットワークを管理する Capsule Server。無人プロビジョニングおよび Discovery ベースのプロビジョニングの場合に、Satellite Server は PXE サーバーの設定が必要です。

    ネットワーク要件の詳細は、3章ネットワークの設定を参照してください。

    Discovery サービスの詳細は、7章Discovery サービスの設定を参照してください。

  • ベアメタルホストまたは空の仮想マシン
  • Red Hat Enterprise Linux の同期済みのコンテンツリポジトリー。詳細は、『コンテンツ管理ガイド』の「Red Hat リポジトリーの同期」を参照してください。
  • ホスト登録用のアクティベーションキー。詳細は、『コンテンツ管理ガイド』の「アクティベーションキーの作成」を参照してください。

無人および PXE なしのプロビジョニングのセキュリティートークンに関する情報は、「セキュリティートークンの有効期間の設定」を参照してください。

6.2. セキュリティートークンの有効期間の設定

無人および PXE なしのプロビジョニングを行う場合には、セキュリティー措置として、Satellite は自動的に一意のトークンを生成し、このトークンを PXE 設定ファイル (PXELinux、Grub2) のキックスタート URL に追加します。

デフォルトでは、トークンの有効期限は 360 分です。ホストのプロビジョニング時に、この時間内にホストを再起動するようにしてください。トークンの有効期限が切れると、トークンは無効になり、404 エラーが送出され、オペレーティングシステムのインストーラーのダウンロードが失敗します。

トークンの有効期限を調節するには、Satellite Web UI で 管理 > 設定 に移動して、プロビジョニング タブをクリックします。トークンの期間 オプションを検索して、編集アイコンをクリックし、期間を変更するか、0 と入力してトークンの生成を無効にします。

トークンの生成が無効になっている場合には、攻撃者はクライアントの IP アドレスを偽装して、Satellite Server から、暗号化された root パスワードなど、キックスタートをダウンロードできます。

6.3. 無人プロビジョニングによるホストの作成

無人プロビジョニングは、ホストのプロビジョニングの最も単純な形態です。この方法では、ホストの詳細を Satellite Server に入力し、ホストを起動する必要があります。Satellite Server は PXE 設定の管理や、ネットワークサービスの整理、およびホストのオペレーティングシステムと設定の提供を自動的に実行します。

このホストのプロビジョニングの方法では、プロセス中の対話が最小限になっています。

手順

無人プロビジョニングでホストを作成するには、以下の手順を行います。

  1. Satellite Web UI で、ホスト > ホストの作成 に移動します。
  2. 名前 フィールドには、ホストの名前を入力します。
  3. 組織 および ロケーション タブをクリックし、要件に合うようにコンテキストを変更します。
  4. ホストグループ リストから、フォームの生成に使用するホストグループを選択します。
  5. インターフェース タブをクリックして、ホストのインターフェースで、編集 をクリックします。
  6. フィールドに値が投入されていることを確認します。特に以下に注意してください。

    • ホスト タブの 名前DNS 名 になります。
    • Satellite Server は新規ホストの IP アドレスを自動的に割り当てます。
  7. MAC アドレス フィールドには、ホストの MAC アドレスを入力します。これにより、PXE ブートプロセス中のホストが識別されます。
  8. Satellite Server が、ホストの最初のインターフェースに Managed (管理)Primary、および Provision オプションを自動選択していることを確認します。選択されていない場合は、選択してください。
  9. MAC アドレス フィールドには、ホストのプロビジョニングインターフェースの MAC アドレスを入力します。これにより、PXE ブートプロセス中のホストが識別されます。
  10. OK をクリックして保存します。別のインターフェースを追加するには、インターフェースの追加 をクリックします。プロビジョニング および プライマリー には、インターフェースは 1 つしか選択できません。
  11. オペレーティングシステム タブをクリックして、すべてのフィールドに値が含まれていることを確認します。オペレーティングシステムの各要素を確認してください。
  12. オプション: プロビジョニングテンプレート解決 をクリックし、新規ホストから使用する適切なプロビジョニングテンプレートを特定できることを確認します。

    プロビジョニングテンプレートの関連付けについての詳細は、「プロビジョニングテンプレート」を参照してください。

  13. パラメーター タブをクリックして、存在するパラメーターでアクティベーションキーが提供されていることを確認します。提供されていない場合には、アクティベーションキーを追加します。
  14. 送信 をクリックしてホストの詳細を保存します。

    ネットワークインターフェースの詳細は、「ネットワークインターフェースの追加」を参照してください。

これで、ホストのエントリーおよび関連するプロビジョニングの設定が作成されます。これには、PXE を使用したベアメタルホストの起動に必要なディレクトリーおよびファイルを作成することも含まれます。物理ホストの電源をオンにして、ブートモードを PXE に設定すると、ホストは Satellite Server の統合 Capsule の DHCP サービスを検出し、キックスタートツリーからオペレーティングシステムのインストールを開始します。

インストールが完了したら、ホストはアクティベーションキーを使用して Satellite Server も登録し、必要な設定と管理ツールを Satellite Tools 6.7 のリポジトリーからインストールします。

CLI をご利用の場合

hammer host create コマンドでホストを作成します。

# hammer host create --name "My_Unattended_Host" --organization "My_Organization" \
--location "My_Location" --hostgroup "My_Host_Group" --mac "aa:aa:aa:aa:aa:aa" \
--build true --enabled true --managed true

hammer host interface update コマンドを使用し、ネットワークインターフェースのオプションが設定されていることを確認します。

# hammer host interface update --host "test1" --managed true \
--primary true --provision true

6.4. PXE を使用しないプロビジョニングによるホストの作成

一部のハードウェアには PXE ブートインターフェースがありません。Satellite では、PXE ブートなしでホストをプロビジョニングできます。これは、PXE を使用しないプロビジョニングとしても知られ、ホストが使用できるブート ISO が生成されます。この ISO を使用して、ホストは Satellite Server に接続してインストールメディアを起動し、オペレーティングシステムをインストールできます。

Satellite には PXE を使用しない検出サービスがあり、DHCP や TFTP など PXE ベースのサービスなしで操作できます。詳細は、「PXE を使用しない Discovery の実装」を参照してください。

ブート ISO のタイプ

ブート ISO には 4 つのタイプがあります。

ホストイメージ
特定ホストのブート ISO。このイメージには、Satellite Server でインストールメディアにアクセスするために必要なブートファイルのみが含まれます。ユーザーが Satellite のサブネットデータを定義し、静的ネットワークでイメージが作成されます。
完全ホストイメージ
特定ホストのカーネルおよび初期 RAM ディスクイメージを含むブート ISO。このイメージは、ホストが正しくチェーンロードできない場合に役立ちます。プロビジョニングのテンプレートは、現在も Satellite Server からダウンロードされます。
汎用イメージ
特定ホストに関連付けられていないブート ISO。ISO はホストの MAC アドレスを Satellite Server に送信します。ここでは、ホストのエントリーに対してマッチングが行われます。イメージは、IP アドレスの詳細を保存しません。また、ブートストラップするためにネットワークの DHCP サーバーへのアクセスを必要とします。このイメージは、Satellite Server の /bootdisk/disks/generic URL からも利用できます。例: https://satellite.example.com/bootdisk/disks/generic
サブネットイメージ
汎用イメージと類似するが、Capsule Server のアドレスで設定されるブート ISO。このイメージは、同じサブネットのプロビジョニングした NIC を伴うすべてのホストに対して汎用性があります。

ホストイメージ および 完全ホストイメージ にはプロビジョニングトークンが含まれているので、生成されたイメージには有効期限があります。セキュリティートークン設定の詳細は、「セキュリティートークンの有効期間の設定」を参照してください。

注記

The Full host image is based on SYSLINUX and works with all Red Hat Enterprise Linux certified hardware. When using a Host image, Generic image, or Subnet image, see http://ipxe.org/appnote/hardware_drivers for a list of hardware drivers expected to work with an iPXE-based boot disk.

手順

PXE なしのプロビジョニングでホストを作成するには、以下の手順を行います。

  1. Satellite Web UI で、ホスト > ホストの作成 に移動します。
  2. 名前 フィールドには、プロビジョニングされたシステムのホスト名に設定する名前を入力します。
  3. 組織 および ロケーション タブをクリックし、要件に合うようにコンテキストを変更します。
  4. ホストグループ リストから、フォームの生成に使用するホストグループを選択します。
  5. インターフェース タブをクリックして、ホストのインターフェースで、編集 をクリックします。
  6. フィールドに値が投入されていることを確認します。特に以下に注意してください。

    • ホスト タブの 名前DNS 名 になります。
    • Satellite Server は新規ホストの IP アドレスを自動的に割り当てます。
  7. MAC アドレス フィールドには、ホストの MAC アドレスを入力します。
  8. Satellite Server が、ホストの最初のインターフェースに Managed (管理)Primary、および Provision オプションを自動選択していることを確認します。選択されていない場合は、選択してください。
  9. オペレーティングシステム タブをクリックして、すべてのフィールドに値が含まれていることを確認します。オペレーティングシステムの各要素を確認してください。
  10. プロビジョニングテンプレート解決 をクリックし、新規ホストから使用する適切なプロビジョニングテンプレートを特定できることを確認します。

    プロビジョニングテンプレートの関連付けについての詳細は、「プロビジョニングテンプレート」を参照してください。

  11. Katello プラグインを使用する場合には、パラメーター タブをクリックして、存在するパラメーターでアクティベーションキーが提供されていることを確認します。提供されていない場合には、アクティベーションキーを追加します。
  12. パラメーター タブをクリックして、存在するパラメーターでアクティベーションキーが提供されていることを確認します。提供されていない場合には、アクティベーションキーを追加します。
  13. 送信 をクリックしてホストの詳細を保存します。

これで、ホストのエントリーが作成され、ホストの詳細ページが表示されます。

ウィンドウの右上にあるオプションは、ブートディスク メニューです。このメニューから、ホストイメージ完全ホストイメージ汎用イメージ および サブネットイメージ のイメージの 1 つをダウンロードできます。

CLI をご利用の場合

hammer host create コマンドでホストを作成します。

# hammer host create --name "My_Bare_Metal" --organization "My_Organization" \
--location "My_Location" --hostgroup "My_Host_Group" --mac "aa:aa:aa:aa:aa:aa" \
--build true --enabled true --managed true

hammer host interface update コマンドを使用し、お使いのネットワークインターフェースのオプションが設定されていることを確認します。

# hammer host interface update --host "test3" --managed true \
--primary true --provision true

hammer bootdisk host コマンドで Satellite Server からブートディスクをダウンロードします。

  • ホストイメージ 向け。

    # hammer bootdisk host --host test3.example.com
  • 完全ホストイメージ 向け。

    # hammer bootdisk host --host test3.example.com --full true
  • 汎用イメージ 向け。

    # hammer bootdisk generic
  • サブネットイメージ 向け。

    # hammer bootdisk subnet --subnet subnetName

これにより、使用するホストのブート ISO が作成されます。

必要に応じて、dd ユーティリティーまたは livecd-tools を使用して USB ストレージデバイスに ISO を書き込みます。

物理ホストを起動して、ISO または USB ストレージデバイスからブートする場合には、ホストは Satellite Server に接続し、キックスタートツリーからオペレーティングシステムのインストールを開始します。

インストールが完了したら、ホストはアクティベーションキーを使用して Satellite Server も登録し、必要な設定と管理ツールを Satellite Tools 6.7 リポジトリーからインストールします。

6.5. プロビジョニング中の SSH キーのデプロイ

この手順を使用して、ユーザーに追加した SSH キーは、プロビジョニング中にデプロイします。ユーザーに SSH キーを追加する方法については、『RED HAT SATELLITE の管理』の「ユーザーへの SSH キーの追加」を参照してください。

手順

プロビジョニング時に SSH キーをデプロイするには、以下の手順を実行します。

  1. Satellite Web UI で、ホスト > プロビジョニングテンプレート に移動します。
  2. プロビジョニングテンプレートを作成するか、クローンを作成して既存のテンプレートを編集します。詳細は 「プロビジョニングテンプレートの作成」 を参照してください。
  3. テンプレートで テンプレート タブをクリックします。
  4. テンプレートエディター のフィールドで、create_users スニペットを %post セクションに追加します。

    <%= snippet('create_users') %>
  5. デフォルト チェックボックスを選択します。
  6. 関連付け タブをクリックします。
  7. 適用可能なオペレーティングシステム リストから適切なオペレーティングシステムを選択します。
  8. 送信 をクリックしてプロビジョニングテンプレートを保存します。
  9. ホストをプロビジョニングテンプレートに関連付けて作成するか、修正したテンプレートが関連付けられた OS を使用してホストを再ビルドします。詳細は、『ホストの管理ガイド』「ホストの作成」を参照してください。

    Owned by ユーザーの SSH キーは、プロビジョニングプロセス中に create_users スニペットが実行されると、自動的に追加されます。Owned by は、個人のユーザーやユーザーグループに設定することができます。Owned by をユーザーグループに設定すると、そのユーザー内の全ユーザーの SSH キーが自動的に追加されます。