Cette vidéo va présenter un TP sur Rundeck et Ansible.
Elle fait suite aux vidéos précédentes sur le sujet.
Après avoir suivi ces vidéos, il y en a assez pour arriver ici assez facilement même si je n'ai pas passé beaucoup de temps sur Rundeck.
Time code et déroulement:
00:00 Introduction
01:25 Introduction
02:21 Présentation de Rundeck
03:45 Présentation d'Ansible
08:36 Pourquoi Rundeck avec Ansible
10:12 Playbook et job: Test réseau sur un matériel donné
18:26 Cas pratique / Le TP
21:40 Enoncé/pause
22:03 Création-vérification
37:22 Conclusion
Les liens:
Modules Ansible: https://docs.ansible.com/ansible/2.8/...
La doc Ansible: https://docs.ansible.com
Ansible-galaxy: https://galaxy.ansible.com
Collection netcommon: https://galaxy.ansible.com/ansible/ne...
Mes vidéos précédentes:
Découverte d'Ansible: • Découverte d'Ansible
Utilisation de base de Rundeck: • Installation et utilisation de base de Run...
Quelques regex sur Ansible: • Mini tuto - Sur Ansible afficher ou cherch...
Scanner des IPs avec Ansible: • Installer, mettre à jour Ansible en versio...
Trouver une sur IP Ansible: • Mini tuto - Dans Ansible, avec regex, trou...
Et d'autres (timestamps, boucles...) à retrouver dans la playlist "Logiciels":
• Logiciels
Contenu du playbook
===================
---
hosts: localhost
ignore_errors: yes
gather_facts: true
vars:
Network: ""
IpAddress: ""
Mask: ""
NetSize: ""
tasks:
Get Network infos
name: Set Network
set_fact:
Network: "192.168.1.0/24"
name: Set ip
set_fact:
IpAddress: "{{ Network | regex_search('\\b(?:[0-9]{1,3}\\.){3}[0-9]{1,3}\\b') }}"
name: Set Mask
set_fact:
Mask: "{{ Network | regex_findall('\\b[0-9]{1,3}\\b') }}"
name: Set size
set_fact:
NetSize: "{{ Network | ansible.netcommon.ipaddr('net') | ansible.netcommon.ipaddr('size') }}"
show result
name: Show result
debug:
msg:
"- {{ Network }}"
"- {{ IpAddress }}"
"- {{ Mask.4 }}"
"- {{ NetSize }}"
Ping all ip
name: All IP
debug:
msg:
"- {{ Network | ansible.netcommon.ipaddr('net') | ansible.netcommon.ipaddr('200') | regex_search('\\b(?:[0-9]{1,3}\\.){3}[0-9]{1,3}\\b') }}"
"- {{ Network | ansible.netcommon.ipaddr('net') | ansible.netcommon.ipaddr('1') | regex_search('\\b(?:[0-9]{1,3}\\.){3}[0-9]{1,3}\\b') }}"
"- {{ Network | ansible.netcommon.ipaddr('net') | ansible.netcommon.ipaddr('-1') | regex_search('\\b(?:[0-9]{1,3}\\.){3}[0-9]{1,3}\\b') }}"
debug:
msg: "That's all!"