プロビジョニングインフラストラクチャーサービスの統合


Red Hat Satellite 6.17

DNS、DHCP、および TFTP の統合の設定

Red Hat Satellite Documentation Team

概要

Satellite は、DNS、DHCP および TFTP サービスを統合します。たとえば、ネットワーク内でこれらのサービスがまだ利用できない場合に使用できます。ただし、Satellite の重要な機能として、既存のネットワークサービスとシームレスに統合できます。対応するプロバイダーを設定することで、既存の DNS、DHCP、および TFTP サービスを使用して Satellite に統合できます。

Red Hat ドキュメントへのフィードバック (英語のみ)

Red Hat ドキュメントに関するご意見やご感想をお寄せください。また、改善点があればお知らせください。

フィードバックを提供するには、Red Hat Jira の Create Issue フォームを使用します。Jira の課題が Red Hat Satellite Jira プロジェクトに作成され、その進捗状況を追跡できます。

前提条件

手順

  1. Create Issue にアクセスします。Jira でログインエラーが表示された場合は、フォームにリダイレクトされた後、ログインして続行します。
  2. Summary フィールドと Description フィールドに入力します。Description フィールドに、ドキュメントの URL、章またはセクション番号、および問題の詳しい説明を入力します。フォーム内の他のフィールドは変更しないでください。
  3. Create をクリックします。

第1章 DNS インテグレーションの設定

DNS を Satellite と統合して、ホストのプロビジョニング、変更、廃止時に DNS レコードの作成と管理を自動化できます。これは、一貫性がありエラーのないネットワーク設定の実現に役立ちます。

1.1. DNS サービスプロバイダー

Capsule は、Satellite を既存の DNS インフラストラクチャーと統合したり、新しいものをデプロイしたりするために使用できる以下の DNS プロバイダーをサポートします。

dns_nsupdate

nsupdate ユーティリティーを使用して、RFC 2136 互換の DNS サーバー上で動的 DNS 更新を実行します。参照:

dns_nsupdate_gss
RFC 2136 に準拠した DNS サーバーに対して動的 DNS 更新。これは、Generic Security Service algorithm for Transaction Signature (GSS-TSIG) 認証の nsupdate ユーティリティーを使用します。「Identity Management DNS と GSS-TSIG 認証の統合」 を参照してください。
dns_infoblox
Infoblox DNS サーバー上の動的 DNS 更新。「Infoblox DNS の統合」を参照してください。

1.2. インストーラー管理の DNS サービスの有効化

ネットワークで DNS サーバーが利用できない場合は、インストーラー管理の DNS サービスを使用できます。この機能により、メンテナンスのオーバーヘッドが少ない DNS サービスを提供できるようになります。

手順

  1. Satellite または Capsule を DNS サーバーとして設定します。

    # satellite-installer \
    --foreman-proxy-dns true \
    --foreman-proxy-dns-provider nsupdate \
    --foreman-proxy-dns-managed true \
    --reset-foreman-proxy-dns-server
    Copy to Clipboard Toggle word wrap
  2. 対象の Capsule ごとに、Satellite Web UI で Capsule の設定を更新します。詳細は、「DNS サービスをドメインおよびサブネットに関連付ける」 を参照してください。

1.3. ローカルの自己管理 DNS サービスの統合

インストーラーが提供する Satellite インストーラー管理の DNS サービスは、機能が限られています。たとえば、設定できる正引き DNS ゾーンは 1 つだけです。代替策として、まずインストーラー管理の DNS を使用し、後で自己管理の DNS サーバーに切り替えることで、この制限を回避できます。

前提条件

  • Satellite Server または Capsule Server ホストに DNS サービスをインストールして設定している。
  • DNS サービスが RFC 2136 準拠の更新をサポートする。

手順

  1. Satellite Server または Capsule Server でローカルの自己管理の DNS サービスを設定します。

    # satellite-installer \
    --foreman-proxy-dns true \
    --foreman-proxy-dns-provider nsupdate \
    --foreman-proxy-dns-managed false \
    --foreman-proxy-dns-server "127.0.0.1"
    Copy to Clipboard Toggle word wrap
  2. 対象の Capsule ごとに、Satellite Web UI で Capsule の設定を更新します。詳細は、「DNS サービスをドメインおよびサブネットに関連付ける」 を参照してください。

1.4. 一般的な RFC 2136 準拠のリモート DNS サーバーの統合

ネットワークに DNS サービスがあり、それが RFC 2136 互換の動的更新をサポートしている場合は、このサービスを Satellite Server に統合できます。この統合により、既存の DNS サーバーを引き続き使用できるようになり、Satellite はホストのライフサイクル内であれば DNS レコードを管理します。

このタイプの統合では、Satellite はトランザクション署名 (TSIG) キーを使用して DNS サーバーに認証し、nsupdate ユーティリティーを使用して DNS レコードを管理します。

前提条件

  • リモート DNS サービスが設定され、クエリーを実行できる。
  • リモート DNS サービスは、RFC 2136 準拠の動的更新をサポートする。
  • リモート DNS サーバーに接続するためのリモートネームデーモンコントロール (RNDC) キーファイルは、Satellite Server または Capsule Server の /etc/foreman-proxy/rndc.key に配置されている。

手順

  1. /etc/foreman-proxy/rndc.key の権限を更新して、foreman-proxy グループのメンバーがこのファイルを読み取れるようにします。

    # chown -v root:foreman-proxy /etc/foreman-proxy/rndc.key
    # chmod -v 640 /etc/foreman-proxy/rndc.key
    Copy to Clipboard Toggle word wrap
  2. /etc/foreman-proxy/rndc.key で SELinux コンテキストを復元します。

    # restorecon -v /etc/foreman-proxy/rndc.key
    Copy to Clipboard Toggle word wrap
  3. オプション: キーファイルを使用して DNS エントリーを手動で管理できるかどうかを確認します。

    1. テスト DNS エントリーを作成します。(例: 192.168.25.1 の DNS サーバーに 192.168.25.20A レコードを含む test.example.com ホスト)。

      # echo -e "server 192.168.25.1\n \
      update add test.example.com 3600 IN A 192.168.25.20\n \
      send\n" | nsupdate -k /etc/foreman-proxy/rndc.key
      Copy to Clipboard Toggle word wrap
    2. 新しい DNS エントリーにクエリーできることを確認します。

      # host test.example.com 192.168.25.1
      Copy to Clipboard Toggle word wrap

      出力例:

      Using domain server:
      Name: 192.168.25.1
      Address: 192.168.25.1#53
      Aliases:
      
      test.example.com has address 192.168.25.20
      Copy to Clipboard Toggle word wrap
    3. 正常に解決されたら、テスト DNS エントリーを削除します。

      # echo -e "server 192.168.25.1\n \
      update delete test.example.com 3600 IN A 192.168.25.20\n \
      send\n" | nsupdate -k /etc/foreman-proxy/rndc.key
      Copy to Clipboard Toggle word wrap
    4. DNS エントリーが削除されたことを確認します。

      # host test.example.com 192.168.25.1
      Copy to Clipboard Toggle word wrap

      コマンドが Host test.example.com not found: 3(NXDOMAIN) を返す場合、レコードは正常に削除されています。

  4. Satellite Server または Capsule Server が DNS サーバーを使用するように設定します。

    # satellite-installer \
    --foreman-proxy-dns true \
    --foreman-proxy-dns-provider nsupdate \
    --foreman-proxy-dns-managed false \
    --foreman-proxy-dns-server "dns_server_ip_address" \
    --foreman-proxy-keyfile /etc/foreman-proxy/rndc.key
    Copy to Clipboard Toggle word wrap
  5. 対象の Capsule ごとに、Satellite Web UI で Capsule の設定を更新します。詳細は、「DNS サービスをドメインおよびサブネットに関連付ける」 を参照してください。

1.5. Identity Management DNS と TSIG 認証の統合

Identity Management を使用してドメイン内のホストを一元管理する場合は、Identity Management DNS サービスを Satellite Server に統合できます。この統合により、既存の Identity Management DNS サーバーを引き続き使用できるようになり、Satellite はホストのライフサイクル内であれば DNS レコードを管理します。

Satellite Server または Capsule Server が Identity Management ドメインのメンバーでない場合は、トランザクション署名 (TSIG) キーを使用して DNS サーバーに対して認証します。この方法では、Generic Security Service Transaction Signature (GSS-TSIG) 認証を使用した動的更新に比べて、セキュリティーが低くなり、キーの管理の作業が増加します。詳細は、「Identity Management DNS と GSS-TSIG 認証の統合」 を参照してください。

前提条件

  • Identity Management サーバーがデプロイされ、機能している。
  • Identity Management サーバーのファイアウォールで必要なポートへのアクセスが許可されている。Red Hat Enterprise Linux 9 の Identity Management インストールガイドIdentity Management のポート要件 を参照してください。
  • Identity Management サーバーの root アクセス権限がある。

手順

  1. Identity Management サーバーで以下の手順を実行します。

    1. /etc/named.conf ファイルの先頭に以下の設定を挿入します。

      include "/etc/rndc.key";
      controls {
          inet Identity Management_server_ip_address port 953 allow { Satellite_ip_address; } keys { "rndc-key"; };
      };
      Copy to Clipboard Toggle word wrap
    2. named サービスを再読み込みします。

      # systemctl reload named
      Copy to Clipboard Toggle word wrap
  2. Identity Management の Web UI で以下を行います。

    1. Network Services > DNS > DNS Zones に移動します。
    2. ゾーンの名前をクリックします。
    3. Settings タブを開きます。
    4. BIND update policy フィールドに入力します。

      grant "rndc-key" zonesub ANY;
      Copy to Clipboard Toggle word wrap
    5. Dynamic updateTrue に設定します。
    6. Update をクリックして変更を保存します。
  3. Satellite Server または Capsule Server で動的 DNS 更新を設定します。詳細は、「一般的な RFC 2136 準拠のリモート DNS サーバーの統合」 を参照してください。

1.6. Identity Management DNS と GSS-TSIG 認証の統合

Identity Management を使用してドメイン内のホストを一元管理する場合は、Identity Management DNS サービスを Satellite Server に統合できます。この統合により、既存の Identity Management DNS サーバーを引き続き使用できるようになり、Satellite はホストのライフサイクル内であれば DNS レコードを管理します。

Satellite Server または Capsule Server が Identity Management ドメインのメンバーである場合は、Generic Security Service Transaction Signature (GSS-TSIG) 認証を使用します。この方法では、TSIG 認証に比べてセキュリティーが強化され、キー管理の手間が軽減されます。

1.6.1. Identity Management を Satellite Server で使用するための設定

既存の Identity Management DNS サーバーを統合するには、Identity Management 環境を準備する必要があります。この準備作業により、Satellite Server が Generic Security Service Transaction Signature (GSS-TSIG) 認証を使用して DNS エントリーを更新できるようになります。

前提条件

  • Identity Management ドメインがデプロイされ、機能している。
  • Identity Management が統合 DNS サービスを使用して設定されている。
  • Identity Management サーバーのファイアウォールで必要なポートへのアクセスが許可されている。詳細は、Red Hat Enterprise Linux 9 Identity Management のインストールIdM のポート要件 を参照してください。

手順

  1. Identity Management ドメインのメンバーであるホストで、admin ユーザーの Kerberos チケットを取得します。

    # kinit admin
    Copy to Clipboard Toggle word wrap
  2. Identity Management サーバーでの認証に使用するために、Satellite Server 用の新しい Kerberos プリンシパルを作成します。

    # ipa service-add capsule/satellite.example.com
    Copy to Clipboard Toggle word wrap
  3. オプション: 正引き DNS ゾーンを追加します。

    # ipa dnszone-add example.com
    Copy to Clipboard Toggle word wrap
  4. 正引きゾーンの BIND 更新ポリシーを表示します。

    # ipa dnszone-show example.com --all | \
    grep "BIND update policy"
    Copy to Clipboard Toggle word wrap

    出力例:

    BIND update policy: grant EXAMPLE.COM krb5-self * A; grant EXAMPLE.COM krb5-self * AAAA; grant EXAMPLE.COM krb5-self * SSHFP;
    Copy to Clipboard Toggle word wrap

    設定の値をメモします。

  5. 正引きゾーンの設定を更新します。

    # ipa dnszone-mod example.com \
    --dynamic-update=TRUE \
    --allow-sync-ptr=TRUE \
    --update-policy="<existing_policy> grant smartproxy\047foreman.example.com@EXAMPLE.COM wildcard * ANY;"
    Copy to Clipboard Toggle word wrap

    このコマンドは、ゾーン設定を次のように変更します。

    • 動的ゾーン更新が有効になります。
    • A レコードまたは AAAA レコードが正引きゾーンで更新された場合、Identity Management が逆引き DNS ゾーン内の対応する PTR レコードを更新します。
    • 前のステップで作成した Kerberos プリンシパルに、あらゆるタイプのデータレコードを変更する権限が与えられます。この設定を既存の値に追加する必要があることに注意してください。
  6. オプション: 逆引き DNS ゾーンを追加します。

    # ipa dnszone-add 0.168.192.in-addr.arpa
    Copy to Clipboard Toggle word wrap
  7. 逆引きゾーンの BIND 更新ポリシーを表示します。

    # ipa dnszone-show 0.168.192.in-addr.arpa --all | \
    grep "BIND update policy"
    Copy to Clipboard Toggle word wrap

    出力例:

    BIND update policy: grant EXAMPLE.COM krb5-subdomain 0.168.192.in-addr.arpa. PTR;
    Copy to Clipboard Toggle word wrap

    設定の値をメモします。

  8. 逆引きゾーンの設定を更新します。

    # ipa dnszone-mod 0.168.192.in-addr.arpa \
    --dynamic-update=TRUE \
    --update-policy="<existing_policy> grant smartproxy\047foreman.example.com@EXAMPLE.COM wildcard * ANY;"
    Copy to Clipboard Toggle word wrap

    既存の値に更新ポリシーを追加する必要があることに注意してください。

1.6.2. Identity Management を Capsule で使用するための設定

「Identity Management を Satellite Server で使用するための設定」 の説明に従って Identity Management の DNS サーバーを準備したら、DNS サーバーを Satellite Server または Capsule Server に統合します。

前提条件

  • ホストの DNS 検索ドメインを Identity Management の DNS ドメインに設定する。
  • ホストが Identity Management の DNS サーバーへの認証に使用する Kerberos プリンシパル (例: capsule/satellite.example.com) がわかっている。

手順

  1. Satellite Server または Capsule Server がまだ Identity Management ドメインのメンバーでない場合は、次の手順を実行します。

    1. ipa-client パッケージをインストールします。

      # satellite-maintain packages install ipa-client
      Copy to Clipboard Toggle word wrap
    2. Identity Management クライアントをインストールします。

      # ipa-client-install
      Copy to Clipboard Toggle word wrap

      画面上の指示に従ってください。

  2. admin ユーザーの Kerberos チケットを取得します。

    # kinit admin
    Copy to Clipboard Toggle word wrap
  3. /etc/foreman-proxy/dns.keytab ファイルを削除します。

    # rm --force /etc/foreman-proxy/dns.keytab
    Copy to Clipboard Toggle word wrap
  4. Capsule 用の Kerberos キータブファイルを取得し、/etc/foreman-proxy/dns.keytab ファイルに保存します。

    # ipa-getkeytab -p capsule/satellite.example.com@EXAMPLE.COM \
    -k /etc/foreman-proxy/dns.keytab
    Copy to Clipboard Toggle word wrap
    重要

    稼働中の元のシステムと同じホスト名を持つスタンバイシステムにキータブを追加する場合は、新しい認証情報が生成されて元のシステムの認証情報が無効になるのを防ぐために、ipa-getkeytab コマンドに -r オプションを渡してください。

  5. /etc/foreman-proxy/dns.keytab の所有者とグループを foreman-proxy に設定します。

    # chown foreman-proxy:foreman-proxy /etc/foreman-proxy/dns.keytab
    Copy to Clipboard Toggle word wrap
  6. /etc/foreman-proxy/dns.keytab ファイルが有効であることを確認します。

    1. 次のファイルを使用して Kerberos チケットを取得します。

      # kinit -kt /etc/foreman-proxy/dns.keytab \
      capsule/satellite.example.com@EXAMPLE.COM
      Copy to Clipboard Toggle word wrap
    2. Kerberos チケットを表示します。

      # klist
      Copy to Clipboard Toggle word wrap

      出力例:

      Ticket cache: KCM:0:50473
      Default principal: smartproxy/satellite.example.com@EXAMPLE.COM
      
      Valid starting       Expires              Service principal
      05/20/2025 12:12:35  05/21/2025 11:54:31  krbtgt/EXAMPLE.COM@EXAMPLE.COM
      Copy to Clipboard Toggle word wrap
  7. Identity Management DNS サービスに接続するように Satellite Server または Capsule Server を設定します。

    # satellite-installer \
    --foreman-proxy-dns true \
    --foreman-proxy-dns-provider nsupdate_gss \
    --foreman-proxy-dns-managed false \
    --foreman-proxy-dns-server "idm-server.example.com" \
    --foreman-proxy-dns-tsig-keytab /etc/foreman-proxy/dns.keytab \
    --foreman-proxy-dns-tsig-principal "capsule/satellite.example.com@EXAMPLE.COM"
    Copy to Clipboard Toggle word wrap
  8. 対象の Capsule ごとに、Satellite Web UI で Capsule の設定を更新します。詳細は、「DNS サービスをドメインおよびサブネットに関連付ける」 を参照してください。

1.7. Infoblox DNS の統合

ネットワークに Infoblox アプライアンスがある場合は、Infoblox Web API (WAPI) を使用して、このサービスを Satellite Server および Capsule Server に統合できます。この統合により、既存の DNS サーバーを引き続き使用できるようになり、Satellite はホストのライフサイクル内であれば DNS レコードを管理します。

制限事項

  • DNS エントリーは単一のビューでのみ管理でき、ビューを作成した後に編集できません。
  • Satellite Server は、標準の HTTPS Web API を使用して Infoblox と通信します。デフォルトでは、単一のノードとのみ通信します。高可用性が必要な場合は、Infoblox でこの機能を設定します。
  • Satellite IP アドレス管理 (IPAM) 機能を Infoblox に統合できません。

前提条件

  • DHCP Admin ロールおよび DNS Admin ロールが割り当てられた Infoblox アカウントがある。
  • Infoblox ロールには、アカウントが Infoblox API を介してタスクを実行できるようにする権限があるか、管理者グループに属する。

手順

  1. Infoblox サーバーから証明書をダウンロードし、/etc/pki/ca-trust/source/anchors/infoblox.crt ファイルに保存します。

    # openssl s_client -showcerts -connect infoblox.example.com:443 </dev/null | \
    openssl x509 -text >/etc/pki/ca-trust/source/anchors/infoblox.crt
    Copy to Clipboard Toggle word wrap

    ホスト名は、X.509 証明書内の Infoblox アプリケーションのホスト名と一致する必要があります。

  2. Infoblox 証明書をシステムトラストストアに追加します。

    # update-ca-trust extract
    Copy to Clipboard Toggle word wrap
  3. CA 証明書を Infoblox API へのクエリーで使用してテストします。

    # curl -u admin:password https://infoblox.example.com/wapi/v2.0/network
    Copy to Clipboard Toggle word wrap

    肯定的な応答の例:

    [
        {
            "_ref": "network/ZG5zLm5ldHdvcmskMTkyLjE2OC4yMDIuMC8yNC8w:infoblox.example.com/24/default",
            "network": "192.168.202.0/24",
            "network_view": "default"
        }
    ]
    Copy to Clipboard Toggle word wrap
  4. Satellite Server または Capsule Server が Infoblox DNS サービスに接続するように設定します。

    # satellite-installer \
    --foreman-proxy-dns true \
    --foreman-proxy-dns-provider infoblox \
    --enable-foreman-proxy-plugin-dns-infoblox \
    --foreman-proxy-plugin-dns-infoblox-dns-server infoblox.example.com \
    --foreman-proxy-plugin-dns-infoblox-username admin \
    --foreman-proxy-plugin-dns-infoblox-password password \
    --foreman-proxy-plugin-dns-infoblox-dns-view view_name
    Copy to Clipboard Toggle word wrap

    Infoblox DNS の default ビューを使用する場合は、--foreman-proxy-plugin-dns-infoblox-dns-view オプションを省略します。

  5. 対象の Capsule ごとに、Satellite Web UI で Capsule の設定を更新します。詳細は、「DNS サービスをドメインおよびサブネットに関連付ける」 を参照してください。

1.8. DNS サービスをドメインおよびサブネットに関連付ける

DNS プロバイダーを設定または変更した後は、Satellite Web UI で設定および変更された Capsule ごとに設定を更新する必要があります。

前提条件

  • DNS プロバイダーを設定している。

手順

  1. ドメインを設定します。

    1. Satellite Web UI で、Infrastructure > Domains に移動します。
    2. ドメイン名を選択します。
    3. Domain タブで、DNS Capsule が、サブネットが接続されている Capsule に設定されていることを確認します。
  2. サブネットを設定します。

    1. Infrastructure > Subnets に移動します。
    2. サブネット名を選択します。
    3. Domains タブで、サブネットの有効なドメインを選択します。
    4. Capsules タブで、Reverse DNS Capsule が、サブネットが接続されている Capsule に設定されていることを確認します。
    5. Submit をクリックします。

1.9. DNS を無効にして統合する

DNS サービスを手動で管理し、Satellite Server に統合しない場合は、エラーを回避するために、Satellite がオペレーティングシステムでこのサービスを管理できないようにし、オーケストレーションを無効にする必要があります。

注記

Satellite で DNS を無効にしても、オペレーティングシステム上の関連するバックエンドサービスは削除されません。

手順

  1. Satellite Web UI で、Infrastructure > Subnets に移動します。
  2. DNS Capsule に関連付けられたサブネットごとに、以下を実行します。

    1. サブネットを選択します。
    2. Capsules タブで、Reverse DNS Capsule フィールドをクリアします。
    3. Submit をクリックします。
  3. Infrastructure > Domains に移動します。
  4. DNS Capsule に関連付けられたドメインごとに、以下を行います。

    1. ドメインを選択します。
    2. DNS Capsule フィールドの内容を消去します。
    3. Submit をクリックします。
  5. Satellite Server で、次のように入力します。

    # satellite-installer --foreman-proxy-dns false
    Copy to Clipboard Toggle word wrap
    注記

    Satellite は、Capsule が該当するサブネットとドメインに設定されていない場合にオーケストレーションを実行しません。Capsule の関連付けを無効にすると、予期されるレコードと設定ファイルが存在しない場合は、既存のホストのオーケストレーションコマンドが失敗する可能性があります。

第2章 DHCP 統合の設定

DHCP を Satellite と統合して、ホストのプロビジョニング中に DHCP サーバー上の IP リースとブート設定を自動的に管理できます。これにより、ホストの自動プロビジョニングを単純化できます。

2.1. DHCP サービスプロバイダー

Capsule は、Satellite を既存の DHCP インフラストラクチャーに統合したり、新しいインフラストラクチャーをデプロイしたりするために使用できる次の DHCP プロバイダーをサポートしています。

dhcp_isc
Object Management Application Programming Interface (OMAPI) を使用して、ISC DHCP サーバー上の IP リースを管理します。「インストーラーが管理する DHCP サービスの有効化」 を参照してください。
dhcp_remote_isc
OMAPI を使用したリモート ISC dhcpd サーバーでの IP リースの管理このプロバイダーでは、NFS などのネットワーク経由でリースを共有する必要があります。「リモート ISC DHCP サーバーの統合」 を参照してください。
dhcp_infoblox
Infoblox DHCP サーバー上の IP リースを管理します。「Infoblox DHCP の統合」 を参照してください。

2.2. インストーラーが管理する DHCP サービスの有効化

ネットワーク内に DHCP サーバーがない場合は、インストーラー管理の DHCP サービスを使用できます。この機能により、メンテナンスのオーバーヘッドを抑えながら DHCP サービスを提供できるようになります。

前提条件

  • 次のネットワーク情報を把握している。

    • DHCP が管理する IP アドレスの範囲
    • サブネット内のデフォルトゲートウェイの IP アドレス
    • サブネット用のネームサーバーの IP アドレス

手順

  1. Satellite Server または Capsule Server を DHCP サーバーとして設定します。

    # satellite-installer \
    --foreman-proxy-dhcp true \
    --foreman-proxy-dhcp-provider isc \
    --foreman-proxy-dhcp-managed true \
    --foreman-proxy-dhcp-range "192.0.2.100 192.0.2.150" \
    --foreman-proxy-dhcp-gateway 192.0.2.1 \
    --foreman-proxy-dhcp-nameservers 192.0.2.2,192.0.2.3
    Copy to Clipboard Toggle word wrap
  2. 対象の Capsule ごとに、Satellite Web UI で Capsule の設定を更新します。「DHCP サービスとサブネットの関連付け」を参照してください。
  3. オプション: Object Management Application Programming Interface (OMAPI) キーを使用して、Capsule 上の dhcpd API を保護します。

    1. 必要なパッケージをインストールします。

      # satellite-maintain packages install bind-utils
      Copy to Clipboard Toggle word wrap
    2. OMAPI キーを生成します。

      # tsig-keygen -a hmac-md5 omapi_key
      key "omapi_key" {
      	algorithm hmac-md5;
      	secret "hJBge7QC5AaUkRVsZmFUlg==";
      };
      Copy to Clipboard Toggle word wrap
  4. dhcpd API キーを Capsule 設定に追加します。

    # satellite-installer \
    --foreman-proxy-dhcp-key-name "omapi_key" \
    --foreman-proxy-dhcp-key-secret "key_secret"
    Copy to Clipboard Toggle word wrap

2.3. リモート ISC DHCP サーバーの統合

ネットワーク内に ISC DHCP サーバーが存在するが、Satellite Server と同じホスト上にない場合は、このサービスを Satellite Server に統合できます。この統合により、既存の DHCP サーバーを引き続き使用できるようになり、ホストのプロビジョニング中に Satellite が DHCP サーバー上の IP リースとブート設定を管理します。

このタイプの統合により、Satellite は Object Management Application Programming Interface (OMAPI) キーを使用してリースを更新し、Network File System (NFS) プロトコルを使用して ISC DHCP サーバーの設定ファイルとリースデータベースにアクセスします。

2.3.1. ISC DHCP での OMAPI 認証の有効化

既存のリモートの ISC DHCP サービスを統合するには、DHCP サービスで Object Management Application Programming Interface (OMAPI) を有効にする必要があります。Satellite は OMAPI を使用して DHCP サーバーオブジェクトをリモートで管理します。

前提条件

  • ISC DHCP サービスがデプロイされ、機能している。
  • DHCP サーバーのファイアウォールで DHCP サービス (ポート 67/UDP) へのアクセスが許可されている。

手順

  1. セキュリティートークンを作成します。

    # tsig-keygen -a hmac-md5 omapi_key
    Copy to Clipboard Toggle word wrap

    Satellite が OMAPI 認証に対してサポートしているアルゴリズムは、hmac-md5 だけであることに注意してください。

    出力例:

    key "omapi_key" {
    	algorithm hmac-md5;
    	secret "4z1jwYO0RGUTJbWDepFBdg==";
    };
    Copy to Clipboard Toggle word wrap
  2. /etc/dhcp/dhcpd.conf ファイルを編集し、次の設定を追加します。

    key omapi_key {
    	algorithm hmac-md5;
    	secret "key_secret";
    };
    omapi-port 7911;
    omapi-key omapi_key;
    Copy to Clipboard Toggle word wrap

    この例で指定されている設定は次のとおりです。

    key omapi_key
    鍵、そのアルゴリズム、および暗号化されたパスワードを定義します。このディレクティブには、tsig-keygen コマンドの出力を使用します。
    omapi-port 7911;
    ISC DHCP で OMAPI プロトコルを有効にし、プロトコルのポートを定義します。
    omapi-key omapi_key
    OMAPI インターフェイスが使用する鍵の名前を定義します。この名前は、tsig-keygen コマンドで指定した名前と一致させる必要があります。
  3. dhcpd サービスを再起動します。

    # systemctl restart dhcpd
    Copy to Clipboard Toggle word wrap
  4. firewalld サービスで OMAPI ポートを開きます。

    # firewall-cmd --add-port=7911/tcp
    Copy to Clipboard Toggle word wrap
  5. 変更を永続化します。

    # firewall-cmd --runtime-to-permanent
    Copy to Clipboard Toggle word wrap

2.3.2. NFS を介した DHCP 設定ファイルとリースデータベースの共有

既存のリモートの ISC DHCP サービスを統合するには、サービスの設定ファイルとリースデータベースをネットワーク経由で共有する必要があります。たとえば、NFS サービスを使用できます。共有すると、Satellite が NFS を使用して、サブネット定義などの設定にアクセスします。リースデータベースへの読み取りアクセスにより、すべてのリース情報への効率的なアクセスが確保されます。この情報は、ISC DHCP の Object Management Application Programming Interface (OMAPI) 経由では利用できません。

前提条件

  • ISC DHCP サービスがデプロイされ、機能している。

手順

  1. Satellite Server で foreman-proxy ユーザーの UID とプライマリー GID の両方を特定します。

    # id -u foreman-proxy
    # id -g foreman-proxy
    Copy to Clipboard Toggle word wrap

    これらの ID は次のステップで必要です。

  2. DHCP サーバーで、DHCP サービスとリースデータベースの設定を NFS 経由で共有します。

    1. Satellite Server 上のグループと同じグループ ID を持つ foreman-proxy グループを作成します。

      # groupadd -g My_User_ID foreman-proxy
      Copy to Clipboard Toggle word wrap
    2. Satellite Server 上のユーザーと同じユーザー ID およびプライマリーグループ ID を持つ foreman-proxy ユーザーを作成します。

      # useradd -u My_User_ID -g My_Group_ID -s /sbin/nologin foreman-proxy
      Copy to Clipboard Toggle word wrap
    3. foreman-proxy グループのメンバーが DHCP サービスの設定ファイルにアクセスできることを確認します。

      # chgrp -R foreman-proxy /etc/dhcp/
      # chmod g+rx /etc/dhcp/
      # chmod g+r /etc/dhcp/dhcpd.conf
      Copy to Clipboard Toggle word wrap
    4. nfs-server パッケージをインストールします。

      # dnf install nfs-utils
      Copy to Clipboard Toggle word wrap
    5. /etc/exports ファイルを編集し、/etc/dhcp/ および /var/lib/dhcpd/ ディレクトリーの共有エントリーを追加します。

      /etc/dhcp        satellite.example.com(ro)
      /var/lib/dhcpd   satellite.example.com(ro)
      Copy to Clipboard Toggle word wrap

      このディレクトリーは、読み取り専用モードで、Satellite Server または Capsule Server とのみ共有します。

    6. NFS サーバーサービスを有効にして起動します。

      # systemctl enable --now nfs-server
      Copy to Clipboard Toggle word wrap
    7. firewalld サービスで NFSv4 ポートを開きます。

      # firewall-cmd --add-service=nfs
      Copy to Clipboard Toggle word wrap
    8. 変更を永続化します。

      # firewall-cmd --runtime-to-permanent
      Copy to Clipboard Toggle word wrap

次のステップ

2.3.3. ISC DHCP で使用する Satellite Server または Capsule Server の設定

DHCP サーバーを準備したら、ISC DHCP サーバーを Satellite Server または Capsule Server に統合します。

前提条件

手順

  1. 必要なパッケージをインストールします。

    # satellite-maintain packages install nfs-utils
    Copy to Clipboard Toggle word wrap
  2. 後で NFS 共有をマウントするディレクトリーを作成します。

    # mkdir -p \
    /srv/nfs/etc/dhcp \
    /srv/nfs/var/lib/dhcpd
    Copy to Clipboard Toggle word wrap
  3. /etc/fstab ファイルを編集し、NFS 共有のエントリーを追加して、システムの起動時に自動的にマウントします。

    dhcp_server_fqdn:/etc/dhcp       /srv/nfs/etc/dhcp       nfs  ro,auto,context="system_u:object_r:dhcp_etc_t:s0"     0 0
    dhcp_server_fqdn:/var/lib/dhcpd  /srv/nfs/var/lib/dhcpd  nfs  ro,auto,context="system_u:object_r:dhcpd_state_t:s0"  0 0
    Copy to Clipboard Toggle word wrap
  4. このサービスが更新された /etc/fstab ファイルを使用するように、systemd をリロードします。

    # systemctl daemon-reload
    Copy to Clipboard Toggle word wrap
  5. NFS 共有をマウントします。

    # mount /srv/nfs/etc/dhcp/
    # mount /srv/nfs/var/lib/dhcpd/
    Copy to Clipboard Toggle word wrap
  6. foreman-proxy ユーザーが NFS サーバー上のファイルにアクセスできることを確認します。以下に例を示します。

    1. /srv/nfs/etc/dhcp/dhcpd.conf ファイルの最初の 5 行を表示します。

      $ su - foreman-proxy -c 'head -5 /srv/nfs/etc/dhcp/dhcpd.conf'
      Copy to Clipboard Toggle word wrap
    2. /srv/nfs/var/lib/dhcpd/dhcpd.leases ファイルの最初の 5 行を表示します。

      $ su - foreman-proxy -c 'head -5 /srv/nfs/var/lib/dhcpd/dhcpd.leases'
      Copy to Clipboard Toggle word wrap
  7. Satellite Server または Capsule Server が DHCP サーバーを使用するように設定します。

    # satellite-installer \
    --foreman-proxy-dhcp true \
    --foreman-proxy-dhcp-provider remote_isc \
    --enable-foreman-proxy-plugin-dhcp-remote-isc \
    --foreman-proxy-dhcp-server dhcp_server_fqdn \
    --foreman-proxy-plugin-dhcp-remote-isc-dhcp-config /srv/nfs/etc/dhcp/dhcpd.conf \
    --foreman-proxy-plugin-dhcp-remote-isc-dhcp-leases /srv/nfs/var/lib/dhcpd/dhcpd.leases \
    --foreman-proxy-plugin-dhcp-remote-isc-key-name omapi_key \
    --foreman-proxy-plugin-dhcp-remote-isc-key-secret key_secret \
    --foreman-proxy-plugin-dhcp-remote-isc-omapi-port 7911
    Copy to Clipboard Toggle word wrap
  8. 対象の Capsule ごとに、Satellite Web UI で Capsule の設定を更新します。詳細は、「DHCP サービスとサブネットの関連付け」 を参照してください。

2.4. Infoblox DHCP の統合

ネットワークに Infoblox アプライアンスがある場合は、Infoblox Web API (WAPI) を使用してこのサービスを Satellite Server および Capsule Server に統合できます。この統合により、既存の DHCP サーバーを引き続き使用できるようになり、ホストのプロビジョニング中に Satellite が DHCP サーバー上の IP リースとブート設定を管理します。

制限事項

  • DHCP エントリーは単一のネットワークとビューでのみ管理でき、ビューを作成した後に編集できません。
  • Satellite Server は、標準の HTTPS Web API を使用して Infoblox と通信します。デフォルトでは、単一のノードとのみ通信します。高可用性が必要な場合は、Infoblox でこの機能を設定します。

前提条件

  • DHCP Admin ロールおよび DNS Admin ロールが割り当てられた Infoblox アカウントがある。
  • Infoblox ロールには、アカウントが Infoblox API を介してタスクを実行できるようにする権限があるか、管理者グループに属する。

手順

  1. Infoblox サーバーから証明書をダウンロードし、/etc/pki/ca-trust/source/anchors/infoblox.crt ファイルに保存します。

    # openssl s_client -showcerts -connect infoblox.example.com:443 </dev/null | \
    openssl x509 -text >/etc/pki/ca-trust/source/anchors/infoblox.crt
    Copy to Clipboard Toggle word wrap

    ホスト名は、X.509 証明書内の Infoblox アプリケーションのホスト名と一致する必要があります。

  2. Infoblox 証明書をシステムトラストストアに追加します。

    # update-ca-trust extract
    Copy to Clipboard Toggle word wrap
  3. CA 証明書を Infoblox API へのクエリーで使用してテストします。

    # curl -u admin:password https://infoblox.example.com/wapi/v2.0/network
    Copy to Clipboard Toggle word wrap

    肯定的な応答の例:

    [
        {
            "_ref": "network/ZG5zLm5ldHdvcmskMTkyLjE2OC4yMDIuMC8yNC8w:infoblox.example.com/24/default",
            "network": "192.168.202.0/24",
            "network_view": "default"
        }
    ]
    Copy to Clipboard Toggle word wrap
  4. Satellite Server または Capsule Server が Infoblox DHCP サービスに接続するように設定します。

    # satellite-installer \
    --foreman-proxy-dhcp true \
    --foreman-proxy-dhcp-provider infoblox \
    --enable-foreman-proxy-plugin-dhcp-infoblox \
    --foreman-proxy-dhcp-server infoblox.example.com \
    --foreman-proxy-plugin-dhcp-infoblox-username admin \
    --foreman-proxy-plugin-dhcp-infoblox-password password \
    --foreman-proxy-plugin-dhcp-infoblox-record-type fixedaddress \
    --foreman-proxy-plugin-dhcp-infoblox-dns-view default \
    --foreman-proxy-plugin-dhcp-infoblox-network-view default
    Copy to Clipboard Toggle word wrap
    注記

    DHCP モジュールと DNS Infoblox モジュールを一緒に使用する場合は、fixedaddress レコードタイプのみを使用して DHCP Infoblox モジュールを設定してください。host レコードタイプは競合を引き起こし、Satellite でホストの名前を変更できないため、このシナリオではサポートされていません。

  5. 対象の Capsule ごとに、Satellite Web UI で Capsule の設定を更新します。詳細は、「DHCP サービスとサブネットの関連付け」 を参照してください。

2.5. DHCP サービスとサブネットの関連付け

DHCP プロバイダーを設定または変更したら、Satellite Web UI で設定および変更された Capsule ごとに設定を更新する必要があります。

手順

  1. Satellite Web UI で、Infrastructure > Subnets に移動します。
  2. サブネット名を選択します。
  3. Subnet タブで、IPAMDHCP に設定します。
  4. Capsule タブで、DHCP Proxy を Capsule に設定します。
  5. Submit をクリックします。

2.6. 統合での DHCP の無効化

DHCP サービスを手動で管理し、Satellite Server に統合しない場合は、エラーを回避するために、Satellite がオペレーティングシステムでこのサービスを管理できないようにし、オーケストレーションを無効にする必要があります。

注記

Satellite で DHCP を無効にしても、オペレーティングシステム上の関連するバックエンドサービスは削除されません。

手順

  1. Satellite Web UI で、Infrastructure > Subnets に移動します。
  2. DHCP Capsule に関連付けられたサブネットごとに、以下を実行します。

    1. サブネットを選択します。
    2. Capsules タブで、DHCP Capsule フィールドを削除します。
    3. Submit をクリックします。
  3. Satellite Server および Capsule Server で、以下を入力します。

    # satellite-installer --foreman-proxy-dhcp false
    Copy to Clipboard Toggle word wrap
    注記

    特定のサブネットに対して Capsule が設定されていない場合、Satellite はオーケストレーションを実行しません。Capsule の関連付けを無効にすると、予期されるレコードと設定ファイルが存在しない場合は、既存のホストのオーケストレーションコマンドが失敗する可能性があります。

2.7. DHCP の問題のトラブルシューティング

Satellite は Satellite Server または Capsule Server で ISC DHCP サーバーを管理できます。Satellite は、DHCP の予約およびリースをリスト表示、作成、削除することができます。ただし、場合によってはいくつかの問題が発生することがあります。

同期していない DHCP レコード

DHCP のオーケストレーション中にエラーが発生した場合は、Satellite データベースと DHCP サーバーの DHCP レコードが一致しない場合があります。これを修正するには、Satellite データベースから不足している DHCP レコードを DHCP サーバーに追加してから、以下の手順に従って DHCP サーバーから不要なレコードを削除する必要があります。

手順

  1. DHCP サーバーに追加予定の DHCP レコードをプレビューするには、以下のコマンドを実行します。

    # foreman-rake orchestration:dhcp:add_missing subnet_name=NAME
    Copy to Clipboard Toggle word wrap
  2. 前の手順のプレビューの変更で問題がない場合は、上記のコマンドに perform=1 引数を指定して適用します。

    # foreman-rake orchestration:dhcp:add_missing subnet_name=NAME perform=1
    Copy to Clipboard Toggle word wrap
  3. Satellite と DHCP サーバーの DHCP レコードが同期されている状態を維持するには、DHCP サーバーから不要な DHCP レコードを削除します。Satellite は、すべてのマネージド DHCP サーバーにサードパーティーレコードが含まれていないことを前提とします。そのため、この手順では、想定外のレコードを削除する場合があります。DHCP サーバーから削除されるレコードをプレビューするには、以下のコマンドを入力します。

    # foreman-rake orchestration:dhcp:remove_offending subnet_name=NAME
    Copy to Clipboard Toggle word wrap
  4. 前の手順のプレビューの変更で問題がない場合は、上記のコマンドに perform=1 引数を指定して適用します。

    # foreman-rake orchestration:dhcp:remove_offending subnet_name=NAME perform=1
    Copy to Clipboard Toggle word wrap

PXE ローダーオプションの変更

PXE のローダーオプションが既存のホスト用に変更された場合には、DHCP の競合が発生します。この回避策として、DHCP エントリーを上書きしてください。

DHCP ファイルでの不正なパーミッション

オペレーティングシステムを更新すると、dhcpd パッケージが更新される場合があります。これが原因で、重要なディレクトリーやファイルのパーミッションがリセットされて、DHCP Capsule が必要な情報を読み取ることができなってしまいます。

詳細は、Red Hat ナレッジベースの DHCP error while provisioning host from Satellite server Error ERF12-6899 ProxyAPI::ProxyException: Unable to set DHCP entry RestClient::ResourceNotFound 404 Resource Not Found を参照してください。

DHCP Capsule エントリーの変更

Satellite は、DHCP Capsule セットが含まれるサブネットに割り当てられたホストの DHCP レコードのみを管理します。ホストを作成して、DHCP Capsule を消去または変更した場合に、ホストを削除しようとすると、削除のアクションに失敗します。

DHCP Capsule を設定せずにホストを作成してから DHCP Capsule を設定しようとすると、DHCP の競合が発生します。

dhcpd.leases ファイルで削除済みのホストエントリー

DHCP リースに対する変更は、dhcpd.leases ファイルの最後に追加されます。エントリーがこのファイルに追加されるので、dhcpd.leases ファイルに、同時に同じリースのエントリーが 2 つ以上存在する可能性があります。同じリースのエントリーが 2 つ以上ある場合には、ファイルの最後のエントリーが優先されます。リースファイルのグループ、サブグループ、ホストの宣言も、同じ方法で処理されます。リースが削除されると、{ deleted; } が宣言に追加されます。

第3章 TFTP 統合の設定

TFTP を Satellite に統合して、ネットワーク経由でオペレーティングシステムのセットアップを起動し、自動でインストールできます。

3.1. インストーラーが管理する TFTP サービスの有効化

ネットワーク内に TFTP サーバーがない場合は、インストーラー管理の TFTP サービスを使用して無人インストールを実行できます。インストーラー管理の TFTP サービスでは、そのサービス上のファイルを含め、TFTP サービスが Satellite によって完全に管理されるため、メンテナンスの手間を少なくして TFTP サーバーを実行できます。

手順

  • Satellite Server または Capsule Server を TFTP サーバーとして設定します。

    # satellite-installer \
    --foreman-proxy-tftp true \
    --foreman-proxy-tftp-managed true
    Copy to Clipboard Toggle word wrap

3.2. 汎用 TFTP サーバーの統合

ネットワーク内に TFTP サーバーがある場合は、このサービスを Satellite に統合できます。この統合により、既存の TFTP サーバーを引き続き使用できるようになります。このタイプの統合では、Satellite はネットワークファイルシステム (NFS) プロトコルを使用して TFTP サービスの root ディレクトリーにアクセスします。

注記

TFTP サーバー上のファイルも管理する、メンテナンスの手間が少ないソリューションを希望する場合は、インストーラー管理の TFTP サービスを使用します。

3.2.1. tftp で使用する Satellite Server の設定

TFTP サーバーを準備したら、Satellite Server または Capsule Server に統合します。

前提条件

  • NFS を使用して TFTP サーバーで /exports/var/lib/tftpboot を共有している。

手順

  1. 後で NFS 共有をマウントするディレクトリーを作成します。

    # mkdir -p /mnt/nfs/var/lib/tftpboot
    Copy to Clipboard Toggle word wrap
  2. /etc/fstab ファイルを編集し、NFS 共有のエントリーを追加して、システムの起動時に自動的にマウントします。

    tftp_server_fqdn:/exports/var/lib/tftpboot  /mnt/nfs/var/lib/tftpboot  nfs  rw,vers=3,auto,nosharecache,context="system_u:object_r:tftpdir_rw_t:s0"  0 0
    Copy to Clipboard Toggle word wrap
  3. NFS 共有をマウントします。

    # mount /mnt/nfs/var/lib/tftpboot/
    Copy to Clipboard Toggle word wrap
  4. Satellite Server または Capsule Server が TFTP サーバーを使用するように設定します。

    # satellite-installer \
    --foreman-proxy-tftp true \
    --foreman-proxy-managed false \
    --foreman-proxy-tftp-root /mnt/nfs/var/lib/tftpboot \
    --foreman-proxy-tftp-servername tftp_server_fqdn
    Copy to Clipboard Toggle word wrap
  5. 対象の Capsule ごとに、Satellite Web UI で Capsule の設定を更新します。詳細は、「TFTP サービスとサブネットの関連付け」 を参照してください。

3.3. TFTP サービスとサブネットの関連付け

TFTP プロバイダーを設定または変更したら、Satellite Web UI で設定および変更された Capsule ごとに設定を更新する必要があります。

前提条件

  • TFTP サーバーを設定している。

手順

  1. Satellite Web UI で、Infrastructure > Subnets に移動します。
  2. サブネット名を選択します。
  3. Capsules タブで、TFTP 用の Capsule を選択します。
  4. Submit をクリックします。

3.4. 統合のための TFTP の無効化

TFTP サービスを手動で管理し、Satellite に統合しない場合は、エラーを回避するために、Satellite がオペレーティングシステム上でこのサービスを管理できないようにし、オーケストレーションを無効にする必要があります。

注記

Satellite で TFTP を無効にしても、オペレーティングシステム上の関連するバックエンドサービスは削除されません。

手順

  1. Satellite Web UI で、Infrastructure > Subnets に移動します。
  2. TFTP Capsule に関連付けられているサブネットごとに以下を実行します。

    1. サブネットを選択します。
    2. Capsules タブで、TFTP Capsule フィールドを選択します。
    3. Submit をクリックします。
  3. Satellite Server で、次のように入力します。

    # satellite-installer --foreman-proxy-tftp false
    Copy to Clipboard Toggle word wrap
    注記

    特定のサブネットに対して Capsule が設定されていない場合、Satellite はオーケストレーションを実行しません。Capsule の関連付けを無効にすると、予期されるレコードと設定ファイルが存在しない場合は、既存のホストのオーケストレーションコマンドが失敗する可能性があります。

法律上の通知

Copyright © 2025 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る