Menu Close

Red Hat Training

A Red Hat training course is available for RHEL 8

41.6. Ansible 플레이북을 사용하여 IdM 호스트 그룹에서 호스트가 없는지 확인합니다.

이 섹션에서는 Ansible 플레이북을 사용하여 IdM(Identity Management)의 호스트 그룹에서 호스트가 없는지 확인하는 방법에 대해 설명합니다.

사전 요구 사항

절차

  1. inventory .file과 같은 인벤토리 파일을 생성하고 타겟 IdM 서버 목록으로 ipaserver 를 정의합니다.

    [ipaserver]
    server.idm.example.com
  2. 필요한 호스트 및 호스트 그룹 정보를 사용하여 Ansible 플레이북 파일을 생성합니다. ipahostgroup 변수의 name 매개 변수를 사용하여 호스트 그룹의 이름을 지정합니다. ipahostgroup 변수의 host 매개 변수를 사용하여 확인할 호스트 그룹에 없는 호스트 이름을 지정합니다. 이 단계를 간소화하기 위해 /usr/share/doc/ansible-freeipa/playbooks/hostgroup/ensure-hosts-and-hostgroups-are-absent-in-hostgroup.yml 파일에서 예제를 복사하고 수정할 수 있습니다.

    ---
    - name: Playbook to handle hostgroups
      hosts: ipaserver
      become: true
    
      tasks:
      # Ensure host-group databases is absent
      - ipahostgroup:
          ipaadmin_password: MySecret123
          name: databases
          host:
          - db.idm.example.com
          action: member
          state: absent

    이 플레이북은 databases 호스트 그룹에서 db.idm.example.com 호스트가 없는지 확인합니다. action: member 행은 플레이북이 실행될 때 데이터베이스 그룹 자체를 제거하기 위한 시도가 수행되지 않았음을 나타냅니다.

  3. 플레이북을 실행합니다.

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-hosts-or-hostgroups-are-absent-in-hostgroup.yml

검증 단계

  1. admin으로 ipaserver 에 로그인합니다.

    $ ssh admin@server.idm.example.com
    Password:
    [admin@server /]$
  2. 관리자용 Kerberos 티켓을 요청합니다.

    $ kinit admin
    Password for admin@IDM.EXAMPLE.COM:
  3. 호스트 그룹 및 포함된 호스트에 대한 정보를 표시합니다.

    $ ipa hostgroup-show databases
      Host-group: databases
      Member host-groups: mysql-server, oracle-server

db.idm.example.com 호스트가 databases 호스트 그룹에 존재하지 않습니다.