Capítulo 66. Usando Ansible to manage DNS records in IdM
Este capítulo descreve como gerenciar registros DNS em Gerenciamento de Identidade (IdM) usando um livro de exercícios possível. Como administrador do IdM, você pode adicionar, modificar e excluir registros DNS no IdM. O capítulo contém as seguintes seções:
- Garantir a presença de registros DNS A e AAAA na IdM usando o Ansible
- Garantir a presença de registros DNS A e PTR na IdM usando o Ansible
- Garantir a presença de múltiplos registros DNS na IdM usando o Ansible
- Garantindo a presença de múltiplos registros CNAME na IdM usando o Ansible
- Garantir a presença de um registro SRV na IdM usando o Ansible
66.1. Garantir a presença de registros DNS A e AAAA na IdM usando o Ansible
Esta seção mostra como um administrador de Gerenciamento de Identidade (IdM) pode usar um Livro de Jogadas Anível para garantir a presença de registros A e AAAA para um determinado host IdM. No exemplo utilizado no procedimento abaixo, um administrador de IdM garante a presença de registros A e AAAA para host1 na zona DNS idm.example.com.
Pré-requisitos
- Você instalou o pacote ansible-freeipa no controlador Ansible. Este é o host no qual você executa as etapas do procedimento.
- Você sabe a senha do administrador da IdM.
- A zona idm.example.com existe e é gerenciada pela IdM DNS. Para mais informações sobre como adicionar uma zona DNS primária no DNS IdM, consulte Utilizando playbooks possíveis para gerenciar as zonas DNS IdM.
Procedimento
Navegue até o diretório
/usr/share/doc/ansible-freeipa/playbooks/dnsrecord
:$ cd /usr/share/doc/ansible-freeipa/playbooks/dnsrecord
Abra seu arquivo de inventário e certifique-se de que o servidor IdM que você deseja configurar esteja listado na seção
[ipaserver]
. Por exemplo, para instruir o Ansible a configurar server.idm.example.com, entre:[ipaserver] server.idm.example.com
Faça uma cópia do arquivo do livro de jogo ensure-A-and-AAAA-records-are-present.yml. Por exemplo:
$ cp ensure-A-and-AAAA-records-are-present.yml ensure-A-and-AAAA-records-are-present-copy.yml
- Abra o arquivo ensure-A-and-AAAA-records-are-present-copy.yml para edição.
Adapte o arquivo definindo as seguintes variáveis na seção de tarefas
ipadnsrecord
:-
Defina a variável
ipaadmin_password
para sua senha de administrador IdM. -
Defina a variável
zone_name
para idm.example.com. -
Na variável
records
, defina a variávelname
para host1, e a variávela_ip_address
para 192.168.122.123. Na variável
records
, defina a variávelname
para host1, e a variávelaaaa_ip_address
para ::1.Este é o arquivo Ansible playbook modificado para o exemplo atual:
--- - 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
-
Defina a variável
- Salvar o arquivo.
Execute o livro de brincadeiras:
$ ansible-playbook -v -i inventory.file ensure-A-and-AAAA-records-are-present-copy.yml
Recursos adicionais
- Para mais informações sobre os registros A e AAAA, consulte os registros DNS em IdM.
-
Você pode ver mais exemplos de playbooks possíveis para o módulo
ansible-freeipa
ipadnsrecord
no arquivoREADME-dnsrecord.md
Markdown, disponível no diretório/usr/share/doc/ansible-freeipa/
. O arquivo também contém as definições das variáveisipadnsrecord
. -
Você pode ver exemplos de playbooks possíveis para o módulo
ipadnsrecord
no diretório/usr/share/doc/ansible-freeipa/playbooks/dnsrecord
.