Aller au contenu principal

Provisionnement des produits OmniCRM avec Ansible

Les produits OmniCRM sont provisionnés à l'aide de Ansible, permettant une gestion automatisée des services en fonction des exigences spécifiques de chaque produit et de son inventaire associé.

Flux de travail de provisionnement

Lorsqu'un produit est provisionné, OmniCRM transmet un ensemble de variables à Ansible qui sont définies à la fois par le produit lui-même et par les éléments d'inventaire sélectionnés. Ces variables incluent des détails importants tels que les ressources matérielles ou virtuelles requises, les configurations de service et tout paramètre supplémentaire nécessaire pour un provisionnement réussi.

Ansible gère ensuite l'ensemble du cycle de vie du provisionnement de service, y compris :

  • Provisionnement : Configuration du service en configurant le matériel ou le logiciel selon les spécifications du produit et de l'inventaire définis.
  • Déprovisionnement : Suppression automatique des services lorsqu'ils ne sont plus nécessaires, libérant ainsi l'inventaire et garantissant une gestion appropriée des ressources.
  • Rollbacks : En cas d'échec durant le processus de provisionnement, Ansible utilise sa fonctionnalité Rescue pour gérer les rollbacks, garantissant que toutes les tâches partiellement complétées sont annulées et que le système revient à un état cohérent.

En général, le personnel d'Omnitouch travaillera avec le client pour définir les exigences du produit et développer les playbooks Ansible nécessaires pour automatiser le processus de provisionnement. Cela garantit que chaque service est déployé de manière cohérente et fiable, réduisant le risque d'erreurs et s'assurant que toutes les étapes nécessaires sont complétées dans le bon ordre.

Variables Ansible

Les variables transmises à Ansible incluent :

  • Variables de produit : Celles-ci sont dérivées des configurations de produit OmniCRM et définissent comment le service doit être configuré.
  • Variables d'inventaire : Sélectionnées dans l'inventaire, celles-ci incluent des éléments tels que des modems, des cartes SIM, des blocs d'adresses IP ou des numéros de téléphone nécessaires pour le provisionnement.

Playbooks Ansible

Le processus de provisionnement est contrôlé par les Playbooks Ansible, qui sont responsables de l'exécution des tâches nécessaires pour mettre le produit ou le service en opération. Ces playbooks garantissent un processus de déploiement cohérent et répétable, minimisant les erreurs et s'assurant que toutes les étapes sont complétées dans le bon ordre.

En cas d'erreurs, la fonctionnalité Rescue d'Ansible entre en jeu, annulant automatiquement les modifications pour maintenir l'intégrité du système et éviter un provisionnement incomplet.

Déprovisionnement

Lorsqu'un service n'est plus nécessaire, les Playbooks Ansible sont également utilisés pour déprovisionner le service. Cela supprime toutes les configurations, libère l'inventaire dans le pool et garantit que le système reste exempt de services ou d'éléments inutilisés.

Rollback et gestion des erreurs

La fonctionnalité Rescue d'Ansible est utilisée tant lors du provisionnement que du déprovisionnement pour gérer les erreurs de manière élégante. Si une tâche échoue à un moment donné durant le provisionnement, le système annulera automatiquement les modifications pour revenir à un état cohérent. Cela garantit la fiabilité et réduit le risque de déploiements partiels ou échoués.