Chapitre 25. Assurer la présence et l'absence de services dans IdM à l'aide d'Ansible

Avec le module Ansible service, l'administrateur de la gestion des identités (IdM) peut s'assurer que des services spécifiques qui ne sont pas natifs de l'IdM sont présents ou absents de l'IdM. Par exemple, vous pouvez utiliser le module service pour :

25.1. Assurer la présence d'un service HTTP dans IdM à l'aide d'un playbook Ansible

Cette section décrit comment assurer la présence d'un serveur HTTP dans IdM à l'aide d'un playbook Ansible.

Conditions préalables

  • Le système qui héberge le service HTTP est un client IdM.
  • Vous avez le mot de passe de l'administrateur IdM.

Procédure

  1. Créer un fichier d'inventaire, par exemple inventory.file:

    $ touch inventory.file
  2. Ouvrez le site inventory.file et définissez le serveur IdM que vous souhaitez configurer dans la section [ipaserver]. Par exemple, pour demander à Ansible de configurer server.idm.example.com, entrez :

    [ipaserver]
    server.idm.example.com
  3. Faites une copie du fichier /usr/share/doc/ansible-freeipa/playbooks/service/service-is-present.yml Ansible playbook. Par exemple :

    $ cp /usr/share/doc/ansible-freeipa/playbooks/service/service-is-present.yml /usr/share/doc/ansible-freeipa/playbooks/service/service-is-present-copy.yml
  4. Ouvrez le fichier /usr/share/doc/ansible-freeipa/playbooks/service/service-is-present-copy.yml Ansible playbook pour l'éditer :

    ---
    - name: Playbook to manage IPA service.
      hosts: ipaserver
      gather_facts: false
    
      vars_files:
      - /home/user_name/MyPlaybooks/secret.yml
      tasks:
      # Ensure service is present
      - ipaservice:
          ipaadmin_password: "{{ ipaadmin_password }}"
          name: HTTP/client.idm.example.com
  5. Adapter le dossier :

    • Modifier le mot de passe de l'administrateur IdM défini par la variable ipaadmin_password.
    • Changez le nom de votre client IdM sur lequel le service HTTP est exécuté, comme défini par la variable name de la tâche ipaservice.
  6. Save and exit the file.
  7. Exécutez le playbook Ansible. Spécifiez le fichier du livre de jeu, le fichier contenant le mot de passe protégeant le fichier secret.yml et le fichier d'inventaire :

    $ ansible-playbook --vault-password-file=password_file -v -i path_to_inventory_directory/inventory.file /usr/share/doc/ansible-freeipa/playbooks/service/service-is-present-copy.yml

Verification steps

  1. Se connecter à l'interface Web IdM en tant qu'administrateur IdM.
  2. Naviguez jusqu'à IdentityServices.

Si HTTP/client.idm.example.com@IDM.EXAMPLE.COM figure dans la liste Services, le playbook Ansible a été ajouté avec succès à IdM.

Ressources supplémentaires