Prérequis Lab Ansible automation réseau

1. Installation de GNS3 Server sur un serveur (distant)

Installation de GNS3 Server sur un serveur (distant).

cd /tmp
curl https://raw.githubusercontent.com/GNS3/gns3-server/master/scripts/remote-install.sh \
> gns3-remote-install.sh
bash gns3-remote-install.sh --with-openvpn

Il sera nécessaire de redémarrer matériellement le serveur.

On charge une topologie mise à disposition et on attaque la gestion directement à partir de l’hôte de virtualisation ou à partir d’un hôte dans la topologie.

2. Préparation des périphériques

Les noeuds gérés, s’ils sont Unix, doivent disposer de Python 2.4 ou version ultérieure. Pour les noeuds gérés avec Python 2.5 ou antérieur, le paquet python-simplejson est également requis.

Depuis sa version 1.7, Ansible peut également gérer les noeuds Windows. Dans ce cas, on utilise PowerShell à distance de manière native, au lieu de SSH.

Matériel d’infrastructure réseau (constructeurs), pare-feux, serveurs de stockage, fournisseurs IaaS, solutions de virtualisation …

hostname rtr1
int g0/7
 ip add dhcp
 no shut
ip domain-name lan
username root privilege 15 password testtest
ip ssh version 2
ip scp server enable
crypto key generate rsa modulus 2048
line vty 0 4
 login local
 transport input all
end
wr

3. Installation Ansible sur le contrôleur

Les machines de contrôle doivent être un hôte Linux / Unix (par exemple, Red Hat Enterprise Linux, Debian, CentOS, OS X, BSD, Ubuntu), et Python 2.6 ou 2.7 est requis (le support Python 3 est disponible en tant que “tech preview” depuis ansible 2.2). Avec une version Windows 10 Pro, il est possible d’utiliser de commander Ansible avec WSL, voir Can Ansible run on Windows?

curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py"
python get-pip.py
pip install ansible

4. Fichiers source

(…)

git clone https://github.com/goffinet/networking-workshop