Le DevOps est un courant important de ces dernières années. Il reste néanmoins borné aux éditeurs de logiciels ou au fournisseurs SAAS. VeryFrog vous dévoile ici des outils DevOps qui ont toute leur place dans votre entreprise pour accompagner votre croissance. Et cerise sur le gâteau : ils sont tous gratuits !
Automatisation
L’automatisation est une notion centrale du mouvement DevOps : moins il y aura d’intervention humaine, moins grande sera la surface d’erreur. A cet égard, de nombreux outils sont disponibles pour automatiser vos tâches. Nous en retiendrons 3 qui sont pleinement pertinents pour votre système d’information.
Ansible
N’avez-vous jamais rêvé de déployer une application complexe sur tout votre parc en un clic ? Plutôt que de vous battre avec les GPO de votre Active Directory, penchez-vous sur les outils de gestion de configuration. Le mouvement DevOps a produit plusieurs utilitaires de “Configuration Management” (CM). Parmi les plus célèbre, citons Puppet, Chef ou SaltStack. Cependant, nous leur préférons Ansible pour plusieurs raisons:
- Sans agent : Ansible ne nécessite pas d’agent à installer sur vos équipements. Il utilise SSH ou WinRM pour s’intégrer sans difficulté dans un parc déjà existant.
- Support de Windows: Ansible possède un catalogue de modules dédiés à Windows extrêmement fourni. Grâce à cela, il remplacera aisément des solutions lourdes comme Ghost ou WDS.
- Configuration facile: Ansible utilise simplement du YAML pour sa configuration. Plus besoins d’apprendre un langage particulier comme avec Puppet ou DSC.
Du fait des ces atouts, Ansible vous permet d’apporter l’Infrastructure as a Code (IAAC) au sein de votre système d’information, de le rendre souple, prédictif et conforme à vos attentes.
Terraform
Terraform est un outil dédié au provisionning de machines virtuelles dans le cloud (AWS, GCE, …). Il fait lui aussi partie des outils IAAC du mouvement DevOps. Quel rapport avec votre SI ? Tout simplement, Terraform se rend compatible avec les fournisseur Cloud à travers un jeu de modules fournisseurs (les “providers”) et parmi ces providers on retrouve:
- VMware vSphere
- Proxmox
- HyperV
Vous pouvez donc piloter votre infrastructure virtuelle avec Terraform ! Créer vos configurations une seule fois puis déployer-les à l’infini selon les besoins de vos utilisateurs : environnement de test, de pré-production ou encore externalisation. Les applications sont sans fin.
Rundeck
N’en avez-vous pas marre d’être sans cesse interrompu pour des petites tâches informatiques ? Ne serait-ce pas plus simple si votre RH créait elle-même les comptes des nouveaux arrivants ? Rundeck à la rescousse ! Cet outil est à classer dans la catégorie “autonomisation” du mouvement DevOps et va vous faire gagner du temps.
Rundeck vous permet de décrire vos tâche d’administrationquotidiennes sous forme de job puis donner accès à ces jobs à vos utilisateurs. tout comme Ansible, Rundeck ne dispose pas d’agent : il utilise SSH et WinRM pour se connecter aux serveurs afin d’y effectuer les tâches décrites. Il est donc facile de l’intégrer dans un SI existant.
Grâce à cet outil, vous pouvez par exemple définir un job de création d’un utilisateur dans un active directory. Autorisez alors simplement votre RH à se connecter puis à utiliser ce job Rundeck et vous ne serez plus jamais dérangé ! Les possibilité sont infinies, et votre temps gagné aussi.
Monitoring
Le DevOps peut être vu comme une boucle vertueuse:
Au centre de cette boucle se trouve le “monitoring”, qui fournit un retour sur les déploiements. Pléthore d’outils gratuit existent aujourd’hui pour fournir des métriques pertinentes :
- Nagios/Centreon
- Cacti
- Zabbix
- Ganglia
- …
Néanmoins, ces outils ont montré leurs limites lors du passage à l’échelle chez les géants du Web. Pour y palier, des nouveaux outils sont apparus. Celui qui montre le plus d’enthousiasme est sans conteste Prometheus.
Ce dernier permet de rapporter des métriques classiques à travers du poll SNMP mais aussi des données spécifiques, propres chacun. Vous pouvez ainsi mesurer vos applicatifs métiers, vos solutions domotiques ou encore les statistiques de votre machine à café ! Le stockage de ces données se fait dans une base de donnée temporelle, soit intégrée soit externalisée. Vous pouvez par exemple utiliser un cluster InfluxDB pour stocker à l’infini vos métriques. Prometheus embarque un système d’Alerting extrêmement souple qui permet de définir des personnes, des groupes, des canaux de communications (mails, slack, pager, …) et de les mixer entre eux.
Prometheus ne prend aps en charge la visualisation. Cela peut paraître contraignant mais c’est bien tout le contraire. En déportant la visualisation à des outils comme Kibana ou Grafana, vous pouvez construire vos propres tableaux et fournir à l’équipe dirigeante des dashboards extrêmement ciblés.
N’ayez pas peur de remettre en cause les solutions classiques de monitoring. Le mouvement DevOps vous offre des outils bien plus souples et qui apporteront une véritable valeur ajoutée à l’entreprise via la création de tableaux de bords pertinents
Intégration Continue
L’intégration continue est un process bien connu des équipes de développement mais qu’on ne rencontre jamais dans les services informatiques classiques. Pourtant, elle vient parachever les concepts précédents. En effet, l’automatisation repose sur le principe de l’Infrastructure as a Code et le monitoring selon Prometheus se configure avec des fichiers YAML. Autrement dit, lorsqu’on insère du DevOps dans un système d’information, celui-ci se redéfinit à travers un ensemble de code informatique. Du coup, toutes les méthodes issues du développement prennent également sens pour votre service informatique. Ainsi, les configurations se retrouvent versionnées grâce à Git ou Mercurial, des tests unitaires permettent de s’assurer qu’une configuration est valide avant déploiement et des workflows de validation permettent de contrôler le travail de chacun avant une mise en production.
Là encore, plusieurs outils permettent d’implémenter de l’intégration continue dans votre entreprise. Nous avons choisi de mettre en avant Gitlab. Ce dernier est un logiciel complet qui s’intégrera facilement dans votre SI. Il propose un gestionnaire de code (et donc de vos configurations) à travers Git. Il permet du travail collaboratif en intégrant des tableau Kanban ou des Todo-Lists. Les utilisateurs peuvent même signaler des erreurs ou demander des améliorations à l’image d’un système de ticketing traditionnel. Enfin, Gitlab fournit un mécanisme d’Intégration Continue simple et efficace. Déclenchez vos tests unitaires simplement en committant vos modifications. Déployez efficacement vos changements en mergeant vos branches. Reconfigurez sereinement vos équipements réseaux en versionnant leur configuration dans Gitlab ou encore déployez vos environnements de tests en un clic en couplant l’intégration continue de Gitlab avec Terraform. C’est aussi facile que ça !
L’Intégration Continue va progressivement devenir le process central de votre service informatique, le centre névralgique de vos pipelines d’automatisation.
On le voit, les outils DevOps peuvent parfaitement s’intégrer dans votre système d’information. Plus encore, ils vont le faire passer dans une autre dimension, où les process seront automatisés – comprenez moins susceptibles de causer des erreurs – et où les tâches courantes se régleront soit en un clic, soit en totale autonomie par vos utilisateurs. N’hésitez pas à contacter VeryFrog pour vous aider à transformer votre SI selon les principe du mouvement DevOps et distancer vos concurrents grâce à des process informatisés toujours plus performants.