Show Table of Contents
第11章 Satellite でのベアメタルホストの検出
Red Hat Satellite 6.2 にはすでにインストールされている Discovery プラグインが同梱されています。Discovery プラグインはプロビジョニングネットワーク上の不明ホストのベアメタル検出を自動化します。これらの新規ホストは Satellite Server に登録され、クライアントの Puppet エージェントは、シリアル ID、ネットワークインターフェース、メモリーおよびディスク情報などの Facter が収集するシステムのファクトをアップロードします。登録後は、ホストは Satellite Web UI の 検出されたホスト ページに表示されます。事前に定義された検出ルールを使用して、プロビジョニングを手動 (Web UI、CLI、または API を使用) か、または自動で開始することができます。
Discovery プラグインは、プロビジョニングネットワークと Satellite Server インスタンスの両方に直接アクセスできる Satellite Capsule Server 経由で通信します。Satellite Server からホストを直接検出することができますが、Red Hat では以下の設定の使用を推奨しています。
Satellite Server (Satellite Server Discovery plug-in) <--> Satellite Capsule (Satellite Capsule Discovery plug-in) <--> Discovered Host (Satellite Discovery image)
Satellite Discovery プラグインは 3 つの異なるコンポーネントで構成されています。
- Satellite Server Discovery プラグイン
- これは Satellite Server で実行され、検出されたホストと使用できるように API および UI 機能を提供します。tfm-rubygem-foreman_discovery パッケージにはこのプラグインが含まれます。
- Satellite Capsule Server Discovery プラグイン
- これは、プロビジョニングネットワークで検出されたホストと Satellite Server 間の通信プロキシーです。rubygem-smart_proxy_discovery パッケージにはこのプラグインが含まれます。
- Satellite Discovery イメージ
- これは、Red Hat Enterprise Linux をベースとする最小オペレーティングシステムです。このオペレーティングシステムはホスト上で PXE で起動し、初期のハードウェア情報を取得し、Satellite Server にチェックインするために使用されます。検出されたホストは、Anaconda で再起動するまで Satellite Discovery イメージを実行し続けます。その後にプロビジョニングプロセスを開始します。foreman-discovery-image パッケージにはこのイメージが含まれます。これは TFTP サービスを提供する Satellite Capsule Server にインストールされる必要があります。
11.1. Satellite Discovery プラグインの設定
以下のセクションでは、Satellite Discovery プラグインを設定する方法および Satellite Server で PXE 起動テンプレートを準備する方法について説明します。
11.1.1. Satellite Discovery イメージのデプロイ
Satellite Discovery イメージを含むパッケージを、TFTP サービスを提供する Satellite Capsule Server (Satellite Server 自体ではない) にインストールします。
# yum install foreman-discovery-image
このパッケージには、Linux カーネルと PXE で起動される検出されるホストに使用される起動可能な ISO ファイルとしての初期 RAM ディスクイメージが含まれます。以下のコマンドを実行してパッケージの内容を検査します。以下のような出力が生成されます。
$ rpm -ql foreman-discovery-image /usr/share/foreman-discovery-image /usr/share/foreman-discovery-image/fdi-image-rhel_7-2.1.0-20150212.1.iso
このパッケージのインストール時に、カーソルと ISO ファイルのイメージが TFTP ディレクトリーに抽出され、イメージおよびカーネルの最新バージョンへのシンボリックリンクが作成されます。PXE 起動のプロビジョニングテンプレートのシンボリックリンクを使用すると、foreman-discovery-image パッケージがアップグレードされるたびにテンプレートのバージョンを変更する必要はありません。以下は例になります。
$ find /var/lib/tftpboot/boot /var/lib/tftpboot/boot /var/lib/tftpboot/boot/fdi-image-rhel_7-2.1.0-20150212.1-img /var/lib/tftpboot/boot/fdi-image-rhel_7-2.1.0-20150212.1-vmlinuz /var/lib/tftpboot/boot/fdi-image-rhel_7-img /var/lib/tftpboot/boot/fdi-image-rhel_7-vmlinuz
上記の出力の最後の 2 行には、PXE 起動プロビジョニングテンプレートで使用されるシンボリックリンクが含まれます。詳細は、「PXE 起動の設定」 を参照してください。
注記
現時点では、Red Hat Enterprise Linux 6 の Satellite 6 インストールの場合でも Red Hat Enterprise Linux 7 Discovery イメージのみが提供されます。foreman-discovery-image パッケージのアップグレード時に実行中の検出されたホストがある場合、すぐにそれらすべてを再起動してイメージの更新されたバージョンをロードします。これは、Satellite 6 Web UI、CLI、または API で実行できます。
11.1.2. PXE 起動の設定
不明のホストがプロビジョニングネットワークで起動する場合、Satellite Server は、ローカルハードドライブから起動するという単一オプションを含む PXELinux ブートメニューを提供します。以下の手順では、ハードウェアの検出を有効にするためにこの動作を変更する方法について説明します。これには、PXE Linux グローバルデフォルトテンプレートの複数の変数の変更が必要になります。これらの変数については以下で説明します。
- テンプレートの KERNEL および APPEND 行は、foreman-discovery-image パッケージのインストール時に作成されるシンボリックリンクを使用します (「Satellite Discovery イメージのデプロイ」 を参照してください)。URL は
/var/lib/tftpboot/ディレクトリーに相対しています。APPENDパラメーターが単一行に指定されていることを確認します。 proxy.type変数はproxy(推奨) またはforemanのいずれかに設定できます。変数がproxyに設定されている場合、すべての通信は Satellite Capsule Server を経由します。変数がforemanに設定されている場合、Satellite Server に直接通信されます。本章の例では、proxy.typeがproxyに設定されていることを想定しています。proxy.url変数は、proxy.type設定に応じて Satellite Capsule Server または Satellite Server の URL を指定します。HTTPおよびHTTPS設定はどちらもサポートされます。Satellite Capsule Server にアクセスする場合 ((proxy.type=proxy) のデフォルトポートは 9090 で、Satellite Server との直接通信の場合 (proxy.type=foreman) は 80 です 。IPAPPEND 2設定は、プロビジョニングネットワークに接続されたインターフェースを検出します。イメージは、このオプションが削除または変更されている場合には正常に起動しません。
手順11.1 PXE 起動を設定するには、以下を実行します。
- Satellite Web UI で、 → に移動します。
- PXELinux global default テンプレートを編集します。以下のメニューエントリーをテンプレートに追加します。
LABEL discovery MENU LABEL Foreman Discovery MENU DEFAULT KERNEL boot/fdi-image-rhel_7-vmlinuz APPEND initrd=boot/fdi-image-rhel_7-img rootflags=loop root=live:/fdi.iso rootfstype=auto ro rd.live.image acpi=force rd.luks=0 rd.md=0 rd.dm=0 rd.lvm=0 rd.bootif=0 rd.neednet=0 nomodeset proxy.url=https://SATELLITE_CAPSULE_URL:9090 proxy.type=proxy IPAPPEND 2
ONTIMEOUT変数を変更して新規のメニューエントリーがデフォルトになるように設定します。ONTIMEOUT discovery
- プロビジョニングテンプレート ページの上部にある をクリックします。これにより、TFTP プロキシーに
pxelinux.cfg/defaultファイルを再作成するようとの指示が出されます。デフォルトテンプレートが変更されるたびにこの手順を繰り返されるため、変更が TFTP Satellite Capsule Server にデプロイされることを確認できます。
上記の手順の代わりに、
proxy.url 変数を PXE 起動テンプレートから省略することもできます。この場合、Discovery イメージは DNS 設定ファイルで x-foreman.tcp という名前の SRV レコードを検索します。この場合、proxy.url 変数は proxy に設定する必要があります。また、DNS サーバーも適切に設定されている必要があります。たとえば、以下の設定ステートメントは Capsule Server が HTTPS で使用されるように指定します。
_x-foreman._tcp SRV 0 5 9090 capsule
ここで、 capsule は DNS 設定に含まれる Capsule Server の名前です。
注記
Satellite 6.2 は、ホストを検出できるすべてのサブネットに 1 つの Capsule Server URL のみを指定できます。テンプレートはサブネットごとに使用できないため、すべてのネットワークで DNS エイリアス名を使用します。または、代わりに SRV レコードを使用します。
重要
DHCP 設定からの DNS サーバーは、
BOOTIF 変数で指定されるインターフェースの場合にのみ考慮に入れられます。BOOTIF は、PXE テンプレートの IPAPPEND 変数で自動的に設定されます。つまり、システムに複数の NIC が設定されている場合、DNS は起動元のインターフェースでのみ機能します。
11.1.3. グローバル Discovery 設定の確認
Satellite Web UI で Discovery プラグインに関連するグローバル設定を確認することができます。 → に移動して、Discovered タブを開きます。以下の設定に留意してください。
discovery_organization、discovery_location- これらの変数は、検出されたホストを配置する場所を指定します。デフォルトでは、検出されたホストは最初に作成された組織とロケーションの下に自動的に配置されます。
discovery_fact- この変数は検出されたホストの MAC アドレスを判別するために使用される受信ファクトを指定します。デフォルトでは、PXELinux BOOTIF カーネルコマンドラインのオプションが使用されます。
discovery_auto- この変数は、指定されたルールに基づいて自動的なプロビジョニングを有効にします。デフォルトでは「false」に設定されます。Red Hat では、
discovery_autoを有効にする前に設定を手動のプロビジョニングでテストすることを推奨しています。詳細は、「検出されたホストのプロビジョニング」 を参照してください。 discovery_fact_column- この変数により、検出されたホストの一覧の追加行に Facter がレポートするファクトを追加できます。

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.