Automatiser les équipements réseau avec cli_command
Envoyez la configuration aux commutateurs et aux routeurs.
Automatiser les équipements réseau avec cli_command est une leçon DevOps Bootcamp gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage DevOps Bootcamp, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours DevOps Bootcamp comprend 4 leçons au total.
Les serveurs ne sont pas les seules cibles
Ansible peut aussi gérer les routeurs et les commutateurs, pas seulement les hôtes Linux. L’automatisation réseau transmet la configuration aux appareils via SSH ou une API. 🌐
Pourquoi les appareils réseau sont différents
Les commutateurs ne disposent généralement pas de Python : Ansible ne peut donc pas y copier de modules. La connexion network_cli exécute plutôt les commandes à distance via l’interface CLI de l’appareil.
vars:
ansible_connection: ansible.netcommon.network_cli
ansible_network_os: cisco.ios.iosDécouvrez cli_command
Le module cli_command envoie une commande brute à un appareil réseau et renvoie sa sortie, comme si vous la tapiez vous-même à l’invite de l’appareil.
- name: Show version
ansible.netcommon.cli_command:
command: show versionCapturez la sortie
Utilisez register pour enregistrer ce que renvoie l’appareil. Le résultat est placé dans stdout, prêt à être inspecté ou analysé ultérieurement.
- name: Read running config
ansible.netcommon.cli_command:
command: show running-config
register: cfgEnvoyez des commandes de configuration
Pour modifier la configuration, l’appareil doit être en mode configuration. cli_config gère pour vous l’entrée dans ce mode et la sortie de celui-ci en toute sécurité.
- name: Set hostname
ansible.netcommon.cli_config:
config: hostname core-sw01Répondez aux invites interactives
Certaines commandes demandent une confirmation. cli_command peut répondre automatiquement au moyen de paires prompt et answer, afin que le play ne reste jamais bloqué.
- ansible.netcommon.cli_command:
command: reload
prompt:
- Proceed with reload
answer:
- 'y'Neutre vis-à-vis du fournisseur
La même tâche cli_command fonctionne avec Cisco, Juniper ou Arista. Seul ansible_network_os change, ce qui vous permet de conserver un style cohérent.
Utilisez les modules de la plateforme quand c’est possible
Pour des modifications structurées et idempotentes, préférez des modules comme cisco.ios.ios_config. Utilisez cli_command lorsqu’aucun module spécialisé ne convient.
- cisco.ios.ios_config:
lines:
- description uplink to core
parents: interface GigabitEthernet0/1Identifiants via SSH
Les appareils réseau s’authentifient toujours via SSH. Définissez ansible_user ainsi qu’un mot de passe ou une clé chiffré afin que les plays se connectent correctement.
vars:
ansible_user: netadmin
ansible_password: "{{ vault_net_pass }}"Enregistrez la configuration active
Les modifications restent dans la configuration active jusqu’à leur enregistrement. Exécutez une commande write afin que les paramètres persistent après un redémarrage de l’appareil. 💾
- ansible.netcommon.cli_command:
command: write memoryOrigine de ces modules
cli_command est fourni dans la collection ansible.netcommon. Installez-la depuis Galaxy avant de pouvoir l’utiliser dans vos playbooks réseau.
ansible-galaxy collection install ansible.netcommonVérification rapide
Vérifions comment vous communiquez avec un commutateur.
Récapitulatif
Le module cli_command, via la connexion network_cli, permet à Ansible d’exécuter et d’enregistrer des commandes sur des commutateurs et des routeurs via SSH. ✅
Questions Fréquemment Posées
La leçon « Automatiser les équipements réseau avec cli_command » est-elle gratuite ?
Oui — le texte complet de « Automatiser les équipements réseau avec cli_command » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours DevOps Bootcamp, passe à CoddyKit PRO. Le cours DevOps Bootcamp comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Automatiser les équipements réseau avec cli_command » ?
Envoyez la configuration aux commutateurs et aux routeurs. Tu pratiques DevOps Bootcamp avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer DevOps Bootcamp ?
Aucune expérience préalable n'est requise. DevOps Bootcamp sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.
Combien de temps prend la leçon « Automatiser les équipements réseau avec cli_command » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon DevOps Bootcamp ?
Oui. Chaque leçon DevOps Bootcamp inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Automatiser les équipements réseau avec cli_command
- delegate_to et run_once pour l’orchestration
- Coordonner les couches Web, application et DB
- Retirer puis réactiver un équilibreur de charge