Chapitre 16. Gérer les serveurs IdM à l'aide d'Ansible
Vous pouvez utiliser Red Hat Ansible Engine
pour gérer les serveurs dans votre topologie de gestion des identités (IdM). Vous pouvez utiliser le module server
dans le paquetage ansible-freeipa
pour vérifier la présence ou l'absence d'un serveur dans la topologie IdM. Vous pouvez également masquer une réplique ou rendre une réplique visible.
Cette section contient les rubriques suivantes :
- Vérification de la présence d'un serveur IdM à l'aide d'Ansible
- S'assurer qu'un serveur IdM est absent d'une topologie IdM en utilisant Ansible
- Assurer l'absence d'un serveur IdM malgré l'hébergement d'un dernier rôle de serveur IdM
- Veiller à ce qu'un serveur IdM soit absent mais pas nécessairement déconnecté des autres serveurs IdM
- S'assurer qu'un serveur IdM existant est caché à l'aide d'un playbook Ansible
- S'assurer qu'un serveur IdM existant est visible à l'aide d'un playbook Ansible
- S'assurer qu'un serveur IdM existant dispose d'un emplacement DNS IdM assigné
- S'assurer qu'aucun emplacement DNS IdM n'est attribué à un serveur IdM existant
16.1. Vérification de la présence d'un serveur IdM à l'aide d'Ansible
Vous pouvez utiliser le module ipaserver
ansible-freeipa
dans un playbook Ansible pour vérifier l'existence d'un serveur de gestion des identités (IdM).
Le module Ansible ipaserver
n'installe pas le serveur IdM.
Conditions préalables
-
Vous connaissez le mot de passe de l'IdM
admin
. Vous avez configuré votre nœud de contrôle Ansible pour qu'il réponde aux exigences suivantes :
- Vous utilisez la version 2.8 ou ultérieure d'Ansible.
-
Vous avez installé le paquetage
ansible-freeipa
sur le contrôleur Ansible. - L'exemple suppose que dans le répertoire ~/MyPlaybooks/ vous avez créé un fichier d'inventaire Ansible avec le nom de domaine complet (FQDN) du serveur IdM.
-
L'exemple suppose que le coffre-fort secret.yml Ansible stocke votre
ipaadmin_password
. -
La connexion
SSH
entre le nœud de contrôle et le serveur IdM défini dans le fichier d'inventaire fonctionne correctement.
Procédure
Naviguez jusqu'à votre répertoire ~/MyPlaybooks/ répertoire :
$ cd ~/MyPlaybooks/
Copiez le fichier
server-present.yml
Ansible playbook situé dans le répertoire/usr/share/doc/ansible-freeipa/playbooks/server/
:$ cp /usr/share/doc/ansible-freeipa/playbooks/server/server-present.yml server-present-copy.yml
-
Ouvrez le fichier
server-present-copy.yml
pour le modifier. Adaptez le fichier en définissant les variables suivantes dans la section
ipaserver
task et enregistrez le fichier :-
Fixer la variable
ipaadmin_password
au mot de passe de l'IdMadmin
. -
Attribuez à la variable
name
la valeurFQDN
du serveur. L'adresseFQDN
du serveur de l'exemple est server123.idm.example.com.
--- - name: Server present example hosts: ipaserver vars_files: - /home/user_name/MyPlaybooks/secret.yml tasks: - name: Ensure server server123.idm.example.com is present ipaserver: ipaadmin_password: "{{ ipaadmin_password }}" name: server123.idm.example.com
-
Fixer la variable
Exécutez le playbook Ansible et indiquez le fichier du playbook et le fichier d'inventaire :
$ ansible-playbook --vault-password-file=password_file -v -i inventory server-present-copy.yml
Ressources supplémentaires
- Voir Installation d'un serveur de gestion des identités à l'aide d'un playbook Ansible.
-
Voir le fichier
README-server.md
dans le répertoire/usr/share/doc/ansible-freeipa/
. -
Voir les exemples de playbooks dans le répertoire
/usr/share/doc/ansible-freeipa/playbooks/server
.