Capítulo 29. Gerenciamento de anfitriões usando Livros didáticos Ansíveis
Ansible é uma ferramenta de automação usada para configurar sistemas, implantar software e realizar atualizações rolantes. Ansible inclui suporte para Gerenciamento de Identidade (IdM), e você pode usar os módulos Ansible para automatizar o gerenciamento do host.
Este capítulo descreve as seguintes operações realizadas na administração de anfitriões e entradas de anfitriões usando Livros de Brinquedos Ansíveis:
-
Garantir a presença de entradas de anfitriões IdM que só são definidas por seus
FQDNs
- Garantindo a presença de entradas do host IdM com endereços IP
- Garantir a presença de múltiplas entradas no host IdM com senhas aleatórias
- Assegurar a presença de um host IdM com múltiplos endereços IP
- Garantindo a ausência de entradas do host IdM
29.1. Assegurar a presença de uma entrada de um host IdM com FQDN usando Livros de Jogadas Ansíveis
Esta seção descreve como garantir a presença de entradas de anfitriões no Gerenciamento de Identidade (IdM) usando Livros de Jogadas Ansíveis. As entradas do host são definidas apenas por seus fully-qualified domain names
(FQDNs).
A especificação do nome FQDN
do anfitrião é suficiente se pelo menos uma das seguintes condições se aplicar:
- O servidor IdM não está configurado para gerenciar o DNS.
-
O host não tem um endereço IP estático ou o endereço IP não é conhecido no momento em que o host é configurado. A adição de um host definido apenas por um
FQDN
cria essencialmente uma entrada de espaço reservado no serviço DNS do IdM. Por exemplo, os laptops podem ser pré-configurados como clientes IdM, mas não possuem endereços IP no momento em que são configurados. Quando o serviço DNS atualiza dinamicamente seus registros, o endereço IP atual do host é detectado e seu registro DNS é atualizado.
Sem Ansible, as entradas do host são criadas no IdM usando o comando ipa host-add
. O resultado da adição de um host ao IdM é o estado do host que está presente no IdM. Devido à possível dependência do Idempotence, para adicionar um host ao IdM usando o Ansible, você deve criar um playbook no qual você define o estado do host como presente: state: present.
Pré-requisitos
- Você sabe a senha do administrador da IdM.
- O pacote ansible-freeipa é instalado no controlador Ansible.
Procedimento
Criar um arquivo de inventário, por exemplo
inventory.file
, e definiripaserver
no mesmo:[ipaserver] server.idm.example.com
Crie um arquivo de playbook possível com o
FQDN
do anfitrião cuja presença na IdM você quer garantir. Para simplificar esta etapa, você pode copiar e modificar o exemplo no arquivo/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
Execute o livro de brincadeiras:
$ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-host-is-present.yml
O procedimento resulta na criação de uma entrada de host no servidor LDAP da IdM, mas não na inscrição do host no reino da IdM Kerberos. Para isso, deve-se implantar o host como um cliente IdM. Para detalhes, consulte Instalando um cliente de Gerenciamento de Identidade usando um livro de exercícios.
Etapas de verificação
Faça o login em seu servidor IdM como administrador:
$ ssh admin@server.idm.example.com Password:
Digite o comando
ipa host-show
e especifique o nome do anfitrião:$ 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
A saída confirma que host01.idm.example.com existe na IdM.