Réalisation

Les matériels sont préparés en maquette afin d’implémenter progressivement les fonctionnalités attendues après l’écriture des spécifications détaillées lors de l’utilisation d’une approche de gestion de projet « Waterfall » ou dans des phases itératives avec des « stories » lorsqu’on utilise une approche de gestion de projet Agile.

Quelle que soit la méthode de gestion de projet utilisée, les premières étapes sont toujours les mêmes :

  • Sortir les équipements des cartons
  • Mettre à jour les équipements
  • Configurer une adresse IP d’administration et un nom d’hôte
  • Injecter la configuration minimum nécessaire pour réaliser l’architecture permettant l’accès à l’ensemble des équipements

Dans un esprit d’automatisation, les principaux constructeurs proposent la fonction ZTP (Zero Touch Provisioning) ou ZTD (Zero Touch Deployment) qui permet d’automatiser la majeure partie du premier démarrage.

Cette approche nécessite une phase préparatoire plus importante, mais permet d’effectuer l’ensemble des tâches, de façon automatisée, dès le premier démarrage de l’équipement. La logique est pratiquement toujours la même :

  • Un serveur DHCP est provisionné avec l’adresse MAC de l’équipement, une adresse IP est attribuée, ainsi que des options permettant de renvoyer l’adresse d’un serveur TFTP et le nom d’un fichier contenant des instructions.
  • Si ces informations n’ont pas été données dans les options DHCP, un serveur TFTP est configuré pour renvoyer les fichiers d’instructions contenant l’adresse d’un serveur FTP, des informations de connexion, des noms de firmware pour la  mise à jour et des instructions de configuration.
  • Un serveur FTP est organisé pour mettre à disposition les firmwares et les fichiers de configurations.

Ce fonctionnement permet de mettre en œuvre rapidement une maquette dont les équipements sont connectés en topologie cible, rendant accessible tous les matériels pour effectuer les phases de configurations ultérieures.

L’automatisation poussée à son paroxysme permet d’utiliser des outils de programmation pour générer automatiquement le fichier de configuration DHCP, les fichiers d’instructions et les configurations spécifiques à chacun des équipements.

Le langage Python se détache largement comme étant le plus utilisé actuellement dans le domaine des réseaux. Le produit « Open Source » Ansible, écrit en Python, permet d’automatiser ces tâches décrites en langage YAML dans un « Playbook ». Le système va utiliser des « templates Jinja2 » et effectuer des itérations pour chaque équipement décrit dans le fichier « Inventory ». L’organisation sous forme de « Roles » facilite grandement le déroulement de tout le processus.

D’autres fonctions d’automatisation peuvent être proposées, par les constructeurs, pour créer des châssis virtuels, des liaisons agrégées, des topologies bridgées ou routées, des diffusions automatiques de VLANs, …

La capacité de ZTP trouve d’autres débouchés que celui de la mise en route en maquette. Une fois le réseau déployé en exploitation, l’adjonction de matériels complémentaires peut s’effectuer selon le même schéma, sans aucune intervention sur l’équipement avant sa première mise en route sur le réseau. Ainsi, toute l’automatisation s’administre depuis une localisation centralisée à l’aide de serveurs et de scripts appropriés. Plusieurs constructeurs présentent cette possibilité comme une fonction divisée en deux sous-ensembles. La partie « scripting » est réalisée par la personne compétente en réseau, système et développement, et la partie mise en place physique est réalisée par un technicien. Cette façon de présenter la nouvelle approche réseau permet d’alimenter les réflexions sur la mutation que doivent subir les programmes de formation des filières réseaux afin de les adapter aux nouvelles réalités technologiques de ce monde.

Licence

Partagez ce livre