16.2. S'assurer qu'un serveur IdM est absent d'une topologie IdM en utilisant Ansible
Utiliser un playbook Ansible pour s'assurer qu'un serveur de gestion des identités (IdM) n'existe pas dans une topologie IdM, même en tant qu'hôte.
Contrairement au rôle ansible-freeipa
ipaserver
, le module ipaserver
utilisé dans ce playbook ne désinstalle pas les services IdM du serveur.
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-absent.yml
Ansible playbook situé dans le répertoire/usr/share/doc/ansible-freeipa/playbooks/server/
:$ cp /usr/share/doc/ansible-freeipa/playbooks/server/server-absent.yml server-absent-copy.yml
-
Ouvrez le fichier
server-absent-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. -
Assurez-vous que la variable
state
est définie surabsent
.
--- - name: Server absent example hosts: ipaserver vars_files: - /home/user_name/MyPlaybooks/secret.yml tasks: - name: Ensure server server123.idm.example.com is absent ipaserver: ipaadmin_password: "{{ ipaadmin_password }}" name: server123.idm.example.com state: absent
-
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-absent-copy.yml
- Assurez-vous que tous les enregistrements DNS du serveur de noms (NS) pointant vers server123.idm.example.com sont supprimés de vos zones DNS. Ceci s'applique indépendamment du fait que vous utilisiez un DNS intégré géré par IdM ou un DNS externe.
Ressources supplémentaires
- Voir Désinstallation d'un serveur IdM.
-
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
.