Tout d’abord, merci à Driss, Hicham et Malick de publier régulièrement du contenu agréable à lire et d’excellente qualité technique.
Je les remercie également de m’accueillir sur leur blog.
La mission que je me donne : en développer le contenu tout en préservant la qualité. La barre est haute, alors je vais attaquer directement par mes sujets de prédilections : l’automatisation et les overlays.
Et pour entrer directement dans le vif du sujet, je vous propose une série d’articles, cadencés à raison d’un par semaine, pour découvrir Ansible, un logiciel open source devenu incontournable pour automatiser l’administration et l’exploitation de réseaux
Ansible pour les experts réseaux.
Mon but est de donner les clés pour se lancer sur Ansible et en découvrant une à une les différentes notions plutôt que devoir se confronter à plusieurs en même temps, ce qui m’est arrivé quand j’ai découvert ce logiciel. Au fond, j’essaie d’écrire le guide qui m’a manqué pour apprendre Ansible plus rapidement.
Ma méthode est de partir d’une instruction élémentaire qui fonctionne, de l’analyser et d’en étendre très progressivement la portée.
Introduction : pourquoi Ansible (et pas un autre)
Ansible est un des nombreux logiciels open source permettant de contrôler à distance un parc de serveurs. Toutefois, dans le domaine de l’administration réseaux, Ansible a pris l’ascendant sur ses concurrents : Chef, Puppet, Salt, …
Pour nous, administrateurs réseaux, la principale force d’Ansible est d’être agentless : Ansible demande seulement aux serveurs distants d’avoir un serveur SSH actif pour pouvoir fonctionner, contrairement à ses concurrents qui installent des relais (agents) sur les distants. Ansible adresse donc parfaitement le domaine des réseaux où les équipements s’administrent en SSH, mais sur lesquels il est bien souvent impossible d’installer un logiciel.
Une autre force d’Ansible est d’avoir choisi Jinja2 comme langage de templating. Nous le verrons plus en détail, mais ce langage est un bon compromis entre puissance et complexité. Son apprentissage est rapide et sa puissance suffisante.
Enfin, comme pour tout développement Open Source qui se démarque, un grand soin a été apporté à la documentation
Par la suite, de nombreux modules ont été développés pour administrer les équipements réseaux et maintenant, Ansible est devenu une option incontournable pour automatiser son administration ou son exploitation.
Cette série d’articles vous propose de découvrir les bases d’Ansible en automatisant des tâches simples sur des routeurs Cisco. Nous allons nous lancer à l’eau dès le premier article en exécutant une commande à distance sur un seul équipement, puis itérer cette commande sur plusieurs équipements, ajouter et organiser des paramètres, et enfin lier des commandes entre elles.
Mon but sera atteint si vous êtes devenus suffisamment autonomes pour poursuivre vous-mêmes l’apprentissage d’Ansible.