Menu Close
Settings Close

Language and Page Formatting Options

18.8. Ansible Playbook を使用して IdM ホストグループを存在させないようにする方法

本セクションでは、Ansible Playbook を使用して、Identity Management (IdM) にホストグループを存在させないようにする方法を説明します。

注記

Ansible を使用しない場合には、ipa hostgroup-del コマンドでホストグループエントリーを IdM から削除します。IdM からホストグループを削除すると、IdM にホストグループが存在しない状態になります。Ansible は冪等性に依存しているので、Ansible を使用して IdM からホストを削除するには、ホストの状態を Absent (state: absent) として定義した Playbook を作成する必要があります。

前提条件

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

手順

  1. inventory.file などのインベントリーファイル を作成し、そのファイルで、ターゲットに設定する IdM サーバーの一覧と合わせて ipaserver を定義します。

    [ipaserver]
    server.idm.example.com
  2. 必要なホストグループ情報を使用して Ansible Playbook ファイルを作成します。この手順は、/usr/share/doc/ansible-freeipa/playbooks/user/ensure-hostgroup-is-absent.yml ファイルのサンプルをコピーして変更し、簡素化できます。

    ---
    - name: Playbook to handle hostgroups
      hosts: ipaserver
      become: true
    
      tasks:
      - Ensure host-group databases is absent
        ipahostgroup:
          ipaadmin_password: MySecret123
          name: databases
          state: absent

    この Playbook では、IdM から databases ホストグループを存在させないようにします。state: absent は、IdM からホストグループが削除されていない限り、ホストグループの削除要求を意味します。

  3. Playbook を実行します。

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-hostgroup-is-absent.yml

検証手順

  1. admin として ipaserver にログインします。

    $ ssh admin@server.idm.example.com
    Password:
    [admin@server /]$
  2. admin の Kerberos チケットを要求します。

    $ kinit admin
    Password for admin@IDM.EXAMPLE.COM:
  3. 存在させないようにするホストグループの情報を表示します。

    $ ipa hostgroup-show databases
    ipa: ERROR: databases: host group not found

databases ホストグループが IdM に存在しません。