Red Hat Training

A Red Hat training course is available for RHEL 8

Capítulo 66. Uso de Ansible para gestionar los registros DNS en IdM

En este capítulo se describe cómo gestionar los registros DNS en Identity Management (IdM) mediante un libro de jugadas de Ansible. Como administrador de IdM, puede añadir, modificar y eliminar registros DNS en IdM. El capítulo contiene las siguientes secciones:

66.1. Garantizar la presencia de registros DNS A y AAAA en IdM mediante Ansible

Esta sección muestra cómo un administrador de Identity Management (IdM) puede utilizar un libro de jugadas de Ansible para garantizar la presencia de registros A y AAAA para un determinado host de IdM. En el ejemplo utilizado en el procedimiento siguiente, un administrador de IdM garantiza la presencia de registros A y AAAA para host1 en la zona DNS idm.example.com.

Requisitos previos

  • Ha instalado el paquete ansible-freeipa en el controlador de Ansible. Este es el host en el que se ejecutan los pasos del procedimiento.
  • Conoce la contraseña del administrador de IdM.
  • La zona idm.example.com existe y es gestionada por IdM DNS. Para obtener más información sobre la adición de una zona DNS primaria en IdM DNS, consulte Uso de libros de juego de Ansible para gestionar zonas DNS de IdM.

Procedimiento

  1. Navegue hasta el directorio /usr/share/doc/ansible-freeipa/playbooks/dnsrecord:

    $ cd /usr/share/doc/ansible-freeipa/playbooks/dnsrecord
  2. Abra su archivo de inventario y asegúrese de que el servidor IdM que desea configurar aparece en la sección [ipaserver]. Por ejemplo, para indicar a Ansible que configure server.idm.example.com, introduzca:

    [ipaserver]
    server.idm.example.com
  3. Haga una copia del archivo de playbook de Ansible ensure-A-and-AAAA-records-are-present.yml. Por ejemplo:

    $ cp ensure-A-and-AAAA-records-are-present.yml ensure-A-and-AAAA-records-are-present-copy.yml
  4. Abra el archivo ensure-A-and-AAAA-records-are-present-copy.yml para editarlo.
  5. Adapte el archivo estableciendo las siguientes variables en la sección de tareas ipadnsrecord:

    • Establece la variable ipaadmin_password con tu contraseña de administrador de IdM.
    • Establezca la variable zone_name en idm.example.com.
    • En la variable records, establezca la variable name como host1, y la variable a_ip_address como 192.168.122.123.
    • En la variable records, establezca la variable name como host1, y la variable aaaa_ip_address como ::1.

      Este es el archivo de Ansible playbook modificado para el ejemplo actual:

    ---
    - name: Ensure A and AAAA records are present
      hosts: ipaserver
      become: true
      gather_facts: false
    
      tasks:
      # Ensure A and AAAA records are present
      - name: Ensure that 'host1' has A and AAAA records.
        ipadnsrecord:
          ipaadmin_password: Secret123
          zone_name: idm.example.com
          records:
          - name: host1
            a_ip_address: 192.168.122.123
          - name: host1
            aaaa_ip_address: ::1
  6. Guarda el archivo.
  7. Ejecuta el libro de jugadas:

    $ ansible-playbook -v -i inventory.file ensure-A-and-AAAA-records-are-present-copy.yml

Recursos adicionales

  • Para obtener más información sobre los registros A y AAAA, consulte los registros DNS en IdM.
  • Puede ver más ejemplos de playbooks de Ansible para el módulo ansible-freeipa ipadnsrecord en el archivo README-dnsrecord.md Markdown disponible en el directorio /usr/share/doc/ansible-freeipa/. El archivo también contiene las definiciones de las variables de ipadnsrecord.
  • Puede ver ejemplos de playbooks de Ansible para el módulo ipadnsrecord en el directorio /usr/share/doc/ansible-freeipa/playbooks/dnsrecord.