第2章 ホストの管理

本章では、ホストの作成、登録、管理、および削除について説明します。

2.1. Red Hat Satellite でのホストの作成

以下の手順を使用して Red Hat Satellite でホストを作成します。

手順

  1. Satellite Web UI で、ホスト > ホストの作成 の順にクリックします。
  2. ホスト タブで、必要な詳細を入力します。
  3. Ansible ロール タブをクリックして、Ansible ロール リストから、ホストに追加するロールを 1 つまたは複数選択します。矢印 アイコンを使用して、追加または削除するロールを管理します。
  4. Puppet クラス タブで、追加する Puppet クラスを選択します。
  5. インターフェース タブで、以下を行います。

    1. 各インターフェースに対して、アクション コラムで 編集 をクリックし、必要に応じて以下を設定します。

      • タイプ: ボンドまたは BMC インターフェースに対して、タイプ リストで、インターフェースタイプを選択します。
      • MAC アドレス: MAC アドレスを入力します。
      • DNS 名: DNS サーバーに認識させる DNS 名を入力します。これは、完全修飾ドメイン名 (FQDN) のホスト部分に使用されます。
      • ドメイン: プロビジョニングネットワークのドメイン名を選択します。これにより、サブネット リストが自動的に更新され、適切なサブネットの選択肢が表示されます。
      • IPv4 サブネット: 一覧から、ホストの IPv4 サブネットを選択します。
      • IPv6 サブネット: 一覧から、ホストの IPv6 サブネットを選択します。
      • IPv4 アドレス: サブネットに対して IP アドレス管理 (IPAM) が有効な場合は、IP アドレスが自動的に提案されます。アドレスを入力することもできます。トークンのプロビジョニングが有効な場合、ドメインが DNS を管理しない場合、サブネットが逆引き DNS を管理しない場合、またはサブネットが DHCP 予約を管理しない場合は、このアドレスを省略できます。
      • IPv6 アドレス: サブネットに対して IP アドレス管理 (IPAM) を有効にした場合は、IP アドレスが自動的に提案されます。アドレスを入力することもできます。
      • 管理: このチェックボックスを選択すると、Capsule が提供する DHCP サービスおよび DNS サービスを使用してプロビジョニングを行う際にインターフェースを設定します。
      • プライマリー: このチェックボックスを選択すると、このインターフェースの DNS 名を、FQDN のホスト部分に使用します。
      • プロビジョニング: このチェックボックスを選択すると、プロビジョニングにこのインターフェースを使用します。つまり、このインターフェースを使用して TFTP ブートが行われ、そしてイメージをベースにしたプロビジョニングでは、プロビジョニングを実行するスクリプトにこのインターフェースが使用されます。anaconda による RPM のダウンロードや、%post スクリプトの Puppet 設定などの多くのプロビジョニングタスクは、プライマリーインターフェースを使用する点にご留意ください。
      • 仮想 NIC: このインターフェースが物理デバイスではない場合は、このチェックボックスを選択します。この設定にはオプションが 2 つあります。

        • タグ: 任意で VLAN タグを設定します。設定していない場合はサブネットの VLAN ID となります。
        • 割り当て先: この仮想インターフェースが割り当てられるインターフェースのデバイス名を入力します。
    2. OK をクリックして、インターフェース設定を保存します。
    3. オプションとして、インターフェースの追加 をクリックし、追加ネットワークインターフェースを組み込みます。詳細は4章ネットワークインターフェースの追加を参照してください。
    4. 送信 をクリックし、変更を適用して終了します。
  6. オペレーティングシステム タブで、必要な情報を入力します。Red Hat オペレーティングシステムの場合は、メディアの選択同期したコンテンツ を選択します。Red Hat 以外のオペレーティングシステムを使用する場合には、すべてのメディア を選択してから、メディアの選択 リストからインストールメディアを選択します。このリストからパーティションテーブルを選択するか、カスタムパーティションテーブル フィールドでカスタムのパーティションテーブルを入力します。両方は指定できません。
  7. パラメーター タブで パラメーターの追加 をクリックして、ランタイム時にジョブテンプレートにわたすパラメーター変数を追加します。これには、ホストに関連付ける 全 Puppet クラス、Ansible Playbook パラメーター、ホストパラメーターが含まれます。Ansible のジョブテンプレートでパラメーター変数を使用するには、ホストパラメーター を追加する必要があります。

    Red Hat Enterprise Linux 8 ホストの作成時には、ホストのシステム目的属性を設定できます。システム目的属性は、ホストの作成時に、どのサブスクリプションを自動的にアタッチするかを定義します。ホストパラメーター エリアで、適切な値を指定し、以下のパラメーターを入力します。システム目的の詳細は、『標準的な RHEL インストールの実行』の「システム目的の設定」を参照してください。

    • syspurpose_role
    • syspurpose_sla
    • syspurpose_usage
    • syspurpose_addons
  8. 追加情報 タブに、ホストに関する追加情報を入力します。
  9. 送信 をクリックして、プロビジョニングリクエストを完了します。

CLI をご利用の場合

ホストをホストグループに関連付けて作成するには、次のコマンドを入力します。

# hammer host create \
--name "host_name" \
--hostgroup "hostgroup_name" \
--interface="primary=true, \
            provision=true, \
            mac=mac_address, \
            ip=ip_address" \
--organization "Your_Organization" \
--location "Your_Location" \
--ask-root-password yes

上記のコマンドを実行すると、root パスワードを指定するように求められます。ホストの IP および MAC アドレスを指定する必要があります。プライマリーのネットワークインターフェースの他のプロパティーはホストグループから継承するか、--subnet および domain パラメーターを使用して設定することができます。--interface オプションを使用して追加のインターフェースを設定できます。このオプションはキーと値のペアの一覧を受け取ります。利用可能なインターフェース設定の一覧については hammer host create --help コマンドを入力します。

2.2. ホストのシステム目的の編集

Red Hat Enterprise Linux 8 ホストのシステム目的属性を設定できます。システム目的属性は、どのサブスクリプションを自動的にアタッチするかを定義します。システム目的の詳細は、『標準的な RHEL インストールの実行』の「システム目的」を参照してください。

手順

  1. Satellite Web UI で、ホスト > コンテンツホスト に移動し、編集する Red Hat Enterprise Linux 8 ホストの名前をクリックします。
  2. システム目的 エリアで、編集、追加または削除するシステム目的属性の 編集 または 削除 アイコンをクリックします。
  3. 保存をクリックします。
  4. サブスクリプション タブをクリックして、サブスクリプション を選択します。
  5. 自動アタッチの実行 をクリックして、自動的にホストにサブスクリプションを割り当てます。
  6. ページを更新して、サブスクリプションリストに正しいサブスクリプションが含まれていることを確認します。

CLI をご利用の場合

  1. ホストにログインして、必要なシステム目的属性を編集します。たとえば、使用タイプを Production、ロールを Red Hat Enterprise Linux Server に、addon アドオンを追加します。値の一覧については、『標準的な RHEL インストールの実行』の「システム目的」を参照してください。

    # syspurpose set-usage Production
    # syspurpose set-role Red Hat Enterprise Linux Server
    # syspurpose add-addons 'your_addon'
  2. このホストのシステム目的属性を検証します。

    # syspurpose show
  3. このホストに自動的にサブスクリプションをアタッチします。

    # subscription-manager attach --auto
  4. このホストのシステム目的のステータスを検証します。

    # subscription-manager status

2.3. ホストのモジュールストリーム変更

Red Hat Enterprise Linux 8 ホストを使用する場合には、インストールするリポジトリーのモジュールストリームを変更できます。たとえば、ホストの作成後に、Satellite Web UI を使用し、ホストからのモジュールストリームの有効化、無効化、インストール、更新、削除が可能になります。

手順

  1. Satellite Web UI で、ホスト > コンテンツホスト に移動し、変更するモジュールを含むホストの名前をクリックします。
  2. モジュールストリーム タブをクリックします。
  3. 利用可能なモジュールストリーム リストから、変更するモジュールの場所を特定します。フィルター フィールドを使用して、リストエントリーを絞り込みます。または、フィルターステータス リストを使用して、特定のステータスのモジュールを検索できます。
  4. アクション リストから、モジュールに加える変更を選択します。
  5. ジョブ呼び出し ウィンドウで、ジョブの情報が適切であることを確認します。必要に応じて詳細を変更し、送信 をクリックします。

2.4. ホストグループの作成

多数のホストを作成する場合には、ホストの多くに、共通の設定と属性を指定できます。新規ホストすべてにこれらの設定および属性を追加するのは時間がかかります。ホストグループを使用する場合には、作成するホストに対して、共通の属性を適用できます。

ホストグループは、共通するホスト設定のテンプレートとして機能します。これには、ホストに指定する同じ情報が多数含まれます。ホストグループを指定して、ホストを作成する場合には、このホストは、ホストグループで定義した設定を継承します。その後に、追加の情報を指定して、ホストを個別化できます。

ホストグループの階層

ホストグループには、階層を作成できます。組織内の全ホストを表すベースレベルのホストグループを設定し、汎用的な設定を行い、その中のネストされたグループを指定して、固有の設定を指定するようにします。たとえば、以下のように、オペレーティングシステムを定義する Base レベルのホストグループ 1 つおよび、Base レベルのホストグループを継承するネスト化されたホストグループ 2 つを設定できます。

  • Hostgroup: Base (Red Hat Enterprise Linux 7.6 )

    • Hostgroup: Webserver (httpd Puppet クラスを適用)

      • Host: webserver1.example.com (Web サーバー)
      • Host: webserver2.example.com (Web サーバー)
    • Hostgroup: Storage (nfs Puppet クラスを適用)

      • Host: storage1.example.com (ストレージサーバー)
      • Host: storage2.example.com (ストレージサーバー)
    • Host: custom.example.com (カスタムホスト)

この例では、すべてのホストは Base ホストグループの継承により、Red Hat Enterprise Linux 7.6 をオペレーティングシステムとして使用します。2 つの Web サーバーホストは Webserver ホストグループからの設定を継承します。これには、httpd Puppet クラスおよび Base ホストグループの設定が含まれます。2 つのストレージサーバーは Storage ホストからの設定を継承します。これには、nfs Puppet クラスおよび Base ホストグループの設定が含まれます。カスタムホストは Base ホストグループからの設定のみを継承します。

手順

  1. Satellite Web UI で 設定 > ホストグループ に移動して、ホストグループの作成 をクリックします。
  2. 属性を継承する既存のホストグループがある場合には、 リストからホストグループを選択します。継承する属性がない場合には、このフィールドは空白のままにします。
  3. 新規ホストグループの 名前 を入力します。
  4. 新たに作成するホストに継承させる情報をさらに入力します。
  5. Ansible ロール タブをクリックして、Ansible ロール リストから、ホストに追加するロールを 1 つまたは複数選択します。矢印 アイコンを使用して、追加または削除するロールを管理します。
  6. 追加タブをクリックして、ホストグループに属性として指定する情報を追加します。

    注記

    Puppet は、Production 環境内に作成した Puppet 環境に関連付けられているホストグループにホストを登録すると、Puppet CA 証明書の取得に失敗します。

    ホストグループに関連付けて、適切な Puppet 環境を作成するには、ディレクトリーを手動で作成して、所有者を変更します。

    # mkdir /etc/puppetlabs/code/environments/example_environment
    # chown apache /etc/puppetlabs/code/environments/example_environment
  7. 送信 をクリックしてホストグループを保存します。

CLI をご利用の場合

hammer hostgroup create コマンドでホストグループを作成します。以下は例になります。

# hammer hostgroup create --name "Base" \
--lifecycle-environment "Production" --content-view "Base" \
--puppet-environment "production" --content-source-id 1 \
--puppet-ca-proxy-id 1 --puppet-proxy-id 1 --domain "example.com" \
--subnet `ACME's Internal Network` --architecture "x86_64" \
--operatingsystem "RedHat 7.2" --medium-id 9 \
--partition-table "Kickstart default" --root-pass "p@55w0rd!" \
--locations "New York" --organizations "ACME"

2.5. ライフサイクル環境ごとのホストグループの作成

以下の手順を使用して、ライブラリーライフサイクル環境のホストグループを作成し、他のライフサイクル環境向けに、ネストされたホストグループを追加します。

手順

ライフサイクル環境ごとにホストグループを作成するには、以下の Bash スクリプトを実行します。

MAJOR="7"
ARCH="x86_64"
ORG="Your Organization"
LOCATIONS="Your Location"
PTABLE_NAME="Kickstart default"
DOMAIN="example.com"

hammer --output csv --no-headers lifecycle-environment list --organization "${ORG}" | cut -d ',' -f 2 | while read LC_ENV; do
  [[ ${LC_ENV} == "Library" ]] && continue

  hammer hostgroup create --name "rhel-${MAJOR}server-${ARCH}-${LC_ENV}" \
    --architecture "${ARCH}" \
    --partition-table "${PTABLE_NAME}" \
    --domain "${DOMAIN}" \
    --organizations "${ORG}" \
    --query-organization "${ORG}" \
    --locations "${LOCATIONS}" \
    --lifecycle-environment "${LC_ENV}"
done

2.6. ホストのグループの変更

以下の手順を使用して、ホストのグループを変更します。

手順

  1. Satellite Web UI で、ホスト > すべてのホスト に移動します。
  2. 変更する必要のあるホストのチェックボックスを選択します。
  3. アクションの選択 リストから グループの変更 を選択すると、新規オプションのウィンドウが開きます。
  4. ホストグループ リストから、ホストに必要なグループを選択します。
  5. 送信 をクリックします。

2.7. ホストの環境の変更

以下の手順を使用して、ホストの環境を変更します。

手順

  1. Satellite Web UI で、ホスト > すべてのホスト に移動します。
  2. 変更する必要のあるホストのチェックボックスを選択します。
  3. アクションの選択 リストから 環境の変更 を選択すると、新規オプションのウィンドウが開きます。
  4. 環境 リストから、ホストの新しい環境を選択します。
  5. 送信 をクリックします。

2.8. ホストの管理ステータスの変更

デフォルトでは、Satellite がプロビジョニングするホストは、管理対象となっています。ホストを管理対象に設定した場合には、Satellite Server からホストパラメーターを追加で設定できます。このように追加したパラメーターは、オペレーティングシステム タブに表示されます。オペレーティングシステム タブで設定を変更した場合には、ホストをビルドして再起動するように設定しない限り、これらの変更は適用されません。

Satellite のサポート対象外のオペレーティングシステムを使用するシステムの設定管理レポートを取得する必要がある場合には、ホストを非管理対象に設定します。

以下の手順を使用して、ホストの管理対象および非管理対象のステータスを切り替えます。

手順

  1. Satellite Web UI で、ホスト > すべてのホスト に移動します。
  2. ホストを選択します。
  3. 編集 をクリックします。
  4. ホストの管理 または ホストの管理解除 をクリックして、ホストのステータスを変更します。
  5. 送信 をクリックします。

2.9. ホストの特定組織への割り当て

以下の手順を使用して、ホストを特定の組織に割り当てる方法を説明します。組織に関する一般的な情報および設定方法は、 『コンテンツ管理ガイド』の「組織の作成」を参照してください。

手順

  1. Satellite Web UI で、ホスト > すべてのホスト に移動します。
  2. 変更する必要のあるホストのチェックボックスを選択します。
  3. 画面右上の アクションの選択 一覧から 組織の割り当て を選択すると、新規オプションのウィンドウが開きます。
  4. 組織の選択 リストから、ホストを割り当てる組織を選択します。Fix Organization on Mismatch (組織の不一致についての修正) チェックボックスを選択します。

    注記

    ドメインまたはサブネットなど、ホストに関連付けるリソースがあるにもかかわらず、これらのリソースがホストの割り当て先の組織に割り当てられていない場合に、不一致が生じます。Fix Organization on Mismatch (組織の不一致についての修正) オプションを使用すると、このようなリソースが組織に追加されるので、このオプションは推奨の選択肢になります。Fail on Mismatch (不一致により失敗) オプションを選択すると、常にエラーメッセージが生成されます。たとえば、実際には設定に不一致がない場合でも、別の組織にホストを再割り当てすると失敗します。

  5. 送信 をクリックします。

2.10. ホストの特定ロケーションへの割り当て

以下の手順を使用して、特定のロケーションにホストを割り当てます。ロケーションの一般的な情報および設定方法は、『プロビジョニングガイド』の「ロケーションの作成」を参照してください。

手順

  1. Satellite Web UI で、ホスト > すべてのホスト に移動します。
  2. 変更する必要のあるホストのチェックボックスを選択します。
  3. 画面右上の アクションの選択 一覧から ロケーションの割り当て を選択すると、新規オプションのウィンドウが開きます。
  4. ロケーションの選択 リストに移動して、ホストに割り当てるロケーションを選択します。Fix Location on Mismatch (ロケーションの不一致についての修正) チェックボックスを選択します。

    注記

    ドメインまたはサブネットなど、ホストに関連付けるリソースがあるにもかかわらず、これらのリソースがホストの割り当て先のロケーションに割り当てられていない場合に、不一致が生じます。Fix Location on Mismatch (ロケーションの不一致についての修正) オプションを使用すると、このようなリソースがロケーションに追加されるので、このオプションは推奨の選択肢になります。Fail on Mismatch (不一致により失敗) オプションを選択すると、常にエラーメッセージが生成されます。たとえば、実際には設定に不一致がない場合でも、別のロケーションにホストを再割り当てすると失敗します。

  5. 送信 をクリックします。

2.11. Red Hat Satellite からのホストの削除

以下の手順を使用して Red Hat Satellite からホストを削除します。

手順

  1. Satellite Web UI で、ホスト > すべてのホスト、または ホスト > コンテンツホスト に移動します。
  2. 削除するホストを選択します。
  3. アクションの選択 リストから ホストの削除 を選択します。
  4. 送信 をクリックして、Red Hat Satellite からホストを完全に削除します。
警告

仮想マシンに関連付けられているホストのレコードが削除されている場合、仮想マシンも削除されます。このような状況で仮想マシンが削除されることを防ぐには、ハイパーバーザーから仮想マシンを削除せずに Satellite との関連付けを解除します。

仮想マシンをハイパーバイザーから削除せずに Satellite との関連付けを解除する方法

  1. Satellite Web UI で、ホスト > すべてのホスト に移動し、関連付けが解除されたホストの左側にあるチェックボックスを選択します。
  2. アクションの選択 リストから ホストの関連付けを解除 ボタンを選択します。
  3. オプションで、チェックボックスを選択して、今後のためにホストを保存します。
  4. 送信 をクリックします。