15.3. Ansible Playbook を使用した FQDN を使用した IdM ホストエントリーの存在の確認

本セクションでは、Ansible Playbook を使用して、Identity Management (IdM) にホストエントリーが存在することを確認する方法を説明します。ホストエントリーは、完全修飾ドメイン名 (FQDN) によってのみ定義されます。

以下の条件のいずれかが当てはまる場合は、ホストの FQDN 名を指定するだけで十分です。

  • IdM サーバーが DNS を管理するよう設定されていません。
  • ホストには静的 IP アドレスがないか、またはホストの設定時に IP アドレスが不明な状態です。FQDN によってのみ定義されたホストを追加すると、基本的に IdM DNS サービスにプレースホルダーエントリーが作成されます。たとえば、ラップトップは IdM クライアントとして事前設定されている場合がありますが、設定時には IP アドレスがありません。DNS サービスがレコードを動的に更新すると、ホストの現在の IP アドレスが検出され、DNS レコードが更新されます。
注記

Ansible を使用しないと、ipa host-add コマンドを使用してホストエントリーが IdM に作成されます。ホストを IdM に追加する結果は、IdM に存在するホストの状態です。Ansible の復元により、Ansible を使用してホストを IdM に追加するには、ホストの状態を present: state: present として定義する Playbook を作成する必要があります。

前提条件

  • IdM 管理者パスワードが分かっている。
  • ansible-freeipa パッケージが Ansible コントローラーにインストールされている。

手順

  1. inventory.file などのインベントリーファイルを作成し、そのファイルに ipaserver を定義します。

    [ipaserver]
    server.idm.example.com
  2. IdM に存在するホストの FQDN で Ansible Playbook ファイルを作成します。この手順を単純化するには、/usr/share/doc/ansible-freeipa/playbooks/host/add-host.yml ファイルのサンプルをコピーして変更できます。

    ---
    - name: Host present
      hosts: ipaserver
      become: true
    
      tasks:
      - name: Host host01.idm.example.com present
        ipahost:
          ipaadmin_password: MySecret123
          name: host01.idm.example.com
          state: present
          force: yes
  3. Playbook を実行します。

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-host-is-present.yml
注記

この手順では、IdM LDAP サーバーにホストエントリーを作成しますが、ホストを IdM Kerberos レルムに登録しません。そのためには、ホストを IdM クライアントとしてデプロイする必要があります。詳細は「Ansible Playbook で Identity Management クライアントのインストール」を参照してください。

検証手順

  1. admin として IdM サーバーにログインします。

    $ ssh admin@server.idm.example.com
    Password:
  2. ipa host-show コマンドを入力し、ホストの名前を指定します。

    $ ipa host-show host01.idm.example.com
      Host name: host01.idm.example.com
      Principal name: host/host01.idm.example.com@IDM.EXAMPLE.COM
      Principal alias: host/host01.idm.example.com@IDM.EXAMPLE.COM
      Password: False
      Keytab: False
      Managed by: host01.idm.example.com

この出力では、host01.idm.example.com が IdM に存在することを確認します。