Rapport de Stage Emmanuel MOMBO

Télécharger au format docx, pdf ou txt
Télécharger au format docx, pdf ou txt
Vous êtes sur la page 1sur 52

SOMMAIRE

SOMMAIRE

GLOSSAIRE..................................................................................................................................................

LISTE DES FIGURES...................................................................................................................................

LISTE DES TABLEAU..................................................................................................................................

DEDICACE....................................................................................................................................................

REMERCIEMENTS.....................................................................................................................................VII

INTRODUCTION............................................................................................................................................

Première Partie : Présentation de ST DIGITAL..............................................................................................

Chapitre 1 : Présentation générale de ST DIGITAL......................................................................................

Section 1 : Historique et Activités de ST DIGITAL..................................................................................

Section 2 : Organisation et Fonctionnement de ST DIGITAL...................................................................

Chapitre 2 : Présentation du Service Technique...............................................................................................

Section 1 : Organisation du service technique...............................................................................................

Section 2 : Accueil et formation du Service informatique.............................................................................

Deuxième Partie : Automatisation des réseaux avec Ansible..........................................................................

Chapitre 1 : Généralité sur L’automatisation des réseaux..............................................................................

Section 1 : L’automatisation des réseaux...................................................................................................

Section 2 : Présentation de Ansible..........................................................................................................

Chapitre 2 : Implémentation de la solution..................................................................................................

Troisième Partie : Remarques, Suggestions et apport du stage......................................................................

Chapitre I : Remarques et Suggestions.........................................................................................................

Section 1 : Remarques..............................................................................................................................

I
Section 2 : Suggestions.............................................................................................................................

Chapitre II : Apport du stage au sein de ST DIGITAL................................................................................

Section 1 : Acquisition des Compétences techniques :.............................................................................

Section 2 : Adaptation au Climat d’entreprise :........................................................................................

CONCLUSION..............................................................................................................................................

WEBOGRAPHIE :.........................................................................................................................................

Annexe 1 : Installation de Ansible.................................................................................................................

Annexe 2 : playbook.......................................................................................................................................

II
GLOSSAIRE

IaC : Infrastructure as Code

SSH: Secure Shell

HSRP: Hot Standby Router Protocol

DHCP: Dynamic Host Control Protocol

SNMP: Simple Network Management Protocol

CDN: Content Delivery Network

NETCONF: Network Configuration Protocol

XML: Extensible Markup Language

YANG: Yet Another Next Generation

NMS: Network Management Systems

NAPALM: Network Automation and Programmability Abstraction Layer with Multivendor support

DNA: Digital Network Architecture

OSPF: Open Shortest Path First

ISE: Identity Service Engine

NDP: Network Data Platform

SDN: Software Defined Network

YAML: YAML, Ain’t Markup Language

III
LISTE DES FIGURES
Figure 1 : Organigramme de ST DIGITAL
Figure 2 : plan de contrôle et plan de données
Figure 3 : Automatisation de réseaux
Figure 4 : Pile du protocole NETCONF
Figure 5 : Cisco DNA Center
Figure 6 : Ansible
Figure 7 : Modèle d'infrastructure Cisco Tier-3
Figure 8 : fichier de configuration Ansible
Figure 9 : Inventaire de l'infrastructure
Figure 10 : Playbook de la configuration des hostname
Figure 11 : playbook de la création des vlan
Figure 12 : playbook de configuration des vlan
Figure 13 : playbook de configuration du HSRP
Figure 14 : Playbook du trunk des interfaces
Figure 15 : Playbook de la configuration du DHCP
Figure 16 : Configuration de Etherchannel
Figure 17 : Playbook de l'adressage
Figure 18 : Dictionnaire de l'adressage
Figure 19 : Template de l'adressage
Figure 20 : Configuration du protocole OSFP
Figure 21 : Lancement d'un playbook
Figure 22 : exécution d'un playbook
Figure 23 : portail Microsoft 365

IV
LISTE DES TABLEAU

Tableau 1 : Commande de Ansible

Tableau 2 : Configuration de base de l’infrastructure

V
DEDICACE

A ma famille…

VI
REMERCIEMENTS

Je voudrais tout d’abord remercier le tout puissant et miséricordieux pour la force et la patience qu’il
m’a donné afin de réaliser ce modeste travail. Je tiens également à remercier mes encadreurs Monsieur
Raoul OSSENE et Monsieur Jonathan KOUOH pour leur disponibilité, l’aide et les précieux conseils
qu’ils m’ont apportés durant toute la période de ce stage. Mes remerciements vont à l’endroit du corps
professoral et administratif de l’Institut National de la Poste et des Technologies de de l’Information et
de la Communication (INPTIC) dont :

- Dr Malcom DJENNO NGOMANDA, directeur de l’institut,


- Madame SAVAGE, Chef de département Réseaux et Systèmes Numérique

A mon père Jean Olivier MOMBO qui m’as transmis la passion que j’ai aujourd’hui pour
l’informatique, à ma mère MOMBO Angèle qui m’a toujours soutenu et poussé à aller de l’avant, à mes
sœurs et a mes frères pour leurs soutiens tout le long de cette année.

Enfin, je tiens également à remercier la société ST DIGITAL qui a bien voulu m’accueillir dans ses
locaux à travers son Directeur Madame Laïka MBA, de m’avoir donné l’occasion d’effectuer mon stage
au sein de l’entreprise dont elle a la charge et enfin à remercier tout le staff de ST DIGITAL pour
l’accueil chaleureux et la bienveillance dont il a fait preuve.

VII
INTRODUCTION

ST DIGITAL est situé dans le quartier Bessieux, au 3ème étage de l’Immeuble COFINA, c’est une
Entreprise de Services Numériques qui accompagne les entreprises dans leurs transformations digitales.

Quelque soit la taille ou le secteur d’activité d’une entreprise moderne, le passage au numérique est un
enjeu majeur. En effet que ce soit pour la gestion des documents, le stockage, le traitement des
informations, la collaboration, le numérique est une solution qui répond parfaitement aux besoins des
entreprises dans le contexte actuel. La récente pandémie nous a encore montré toute l’importance des
solutions telle que le télétravail. C’est dans ce cadre que la société ST DIGITAL offre aux entreprises
ses services.

L'infrastructure réseau est l'ensemble des équipements, des logiciels, et des services qui permettent de
connecter les ordinateurs et les autres équipements informatiques entre eux. Elle peut inclure des
routeurs, des commutateurs, des passerelles, des pare-feux, des serveurs d'application, et d'autres
équipements. Elle permet de créer des réseaux locaux et étendus qui permettent aux utilisateurs de
partager des données, des fichiers, des applications, et de communiquer en ligne. Les réseaux locaux
peuvent couvrir une zone géographique limitée, comme un bâtiment ou un campus.

Les infrastructures réseaux doivent respecter des modèles de conception qui en assure la résilience. Les
architectures Tier-3 de Cisco par exemple sont des modèles qui répondent aux besoins des entreprises
dans le contexte actuel. Mais ces dernières peuvent représenter un grand nombre de périphériques
réseaux à administrer, ce qui peut représenter une charge de travail énorme pour les administrateurs,
occasionnant des erreurs, et plus généralement une mauvaise gestion du réseau. Il faut donc disposer
d’outils pour l’automatisation du réseau, notamment de certaines tâches répétitives facilitant la vie du
personnel.

C'est donc durant ce stage au service Infrastructure et Cloud, que nous avons eu pour projet de faire une
étude de l’automatisation d’une infrastructure réseau avec Ansible, afin d’en apprendre le
fonctionnement dans ce cas d’usage bien précis. En vue de relater de manière fidèle et analytique le
compte rendu des mois passés au sein de la société ST DIGITAL, il apparaît logique de présenter à
préalablement l’entreprise, de présenter les outils et protocoles de configuration enfin de présenter et
déployer Ansible.

VIII
Première Partie : Présentation de ST DIGITAL

Chapitre 1 : Présentation générale de ST DIGITAL


Section 1 : Historique et Activités de ST DIGITAL

ST DIGITAL est une société de services numériques panafricaine dont la mission est l'accompagnement
des entreprises à la transformation digitale et les services cloud. Elle est actuellement présente dans 6
pays de la sous-région (Cote Ivoire, Cameroun, Togo, Bénin, Congo et Gabon) et dessert ses clients
dans toute l'Afrique de l'Ouest et Centrale.

Créée en octobre 2020, la filière locale STD GABON, est la plus jeune filière du groupe STD.

L'offre de service de ST DIGITAL se présente sous six axes :

 La Formation
 Le Conseil en transformation digitale
 L'Infrastructure et le Cloud
 Les outils de travail collaboratifs
 Les solutions métiers
 La cybersécurité.

ST DIGITAL est également le premier acteur indépendant à opérer un Datacenter de catégorie Tiers 3
en Afrique Centrale. L'offre de service Datacenter de ST DIGITAL se compose du IAAS (Infrastructure
as a Service), du SAAS (Software as a Service) et de la colocation d'équipements.

Étant partenaire officiel de MICROSOFT, ORACLE et SAP. Les services de ST DIGITAL vont de la
formation officielle des éditeurs MICROSOFT, SAP et ORACLE jusqu’aux Audits SI & Conseils en
système d’information en passant par l’intégration, le support et la tierce maintenance applicative sur les
applications MICROSOFT, ORACLE et SAP.

ST DIGITAL a également d’autres partenaires comme ODOO, SUSE, JABRA, CRAYON,


KASPERSKY, VMWARE, ou encore FORTINET.

Le siège de ST DIGITAL est situé au quartier Bessieux au 3ème étage de l’immeuble Cofina.

IX
Section 2 : Organisation et Fonctionnement de ST DIGITAL

Comme toute entreprise, ST DIGITAL dispose d’une hiérarchie pour assurer son bon fonctionnement.

2.1 - La Direction Générale :

Elle assure le pilotage de l’entreprise. C’est la direction qui dicte la politique de l'entreprise, choisit les
différents prestataires de services, et représente l’entreprise aux yeux de l’état. Elle est sa voix et son
porte-parole.

2.2 - La Direction Administrative et Financière :

Elle est chargée de l’administration de l’entreprise, et de la gestion des finances de cette dernière. Elle
débloque le budget des différents projets, s’assure du paiement de diverses charges, taxes et salaires.
C’est aussi elle qui gère la trésorerie de l’entreprise.

2.3 - La Direction Commerciale :

Elle gère le service commercial, s’assure de l’exécution de la vente, et s’assure du recouvrement de


paiement.

2.4 - La Direction des opérations :

Elle est responsable du montage des propositions commerciales, de la gestion des relations avec les
partenaires, et s’assure du suivi de l’exécution des projets.

2.6 - La Direction des Services :

Sa principale fonction est la réalisation de projets, et le support technique avant-vente. C'est le service
technique qui supervise et gère les consultants.

2.7 - L’Office Manager :

L'Office Manager est chargé de la logistique et de l’administration du bureau. Il est chargé des
formalités administratives, des courses diverses, du point d’accueil, de la logistique des sessions avant
pendant et après ces dernières, de l'accueil et de la gestion de la logistique des membres du groupe ST
DIGITAL en séjour au Gabon.

X
2.8 - le Commercial :

Il se charge de vendre l’offre de service ST DIGITAL aux entreprises, aux particuliers et aux
gouvernements. Il est responsable de la prospection, de la rencontre des clients, de la préparation des
offres, du suivi, et du pilotage commercial. Elle bénéficie de formation en cas de disponibilité.

2.9 - Le Consultant Technique :

Il est chargé du déploiement et de la gestion de projet. Il doit avoir les compétences nécessaires pour
conduire les missions qui lui sont attribuées. Il fait aussi des démonstrations d’offre de solutions
techniques aux clients, aide à rédiger les offres et les réponses aux appels d’offres en support de la
Direction des Operations. Il bénéficie lui aussi de formation afin de monter en compétences.

2.10 - Organigramme de ST DIGITAL :

Figure 1 : Organigramme de ST DIGITAL

XI
Chapitre 2 : Présentation du Service Technique

Section 1 : Organisation du service technique

Le service technique de ST DIGITAL est sous la tutelle de la direction technique de l’entreprise. Elle est
divise en V-TEAM qui s’occupe chacune un secteur particulier dans l’offre des services de l’entreprise :

 Transformation Digitale : elle offre des conseils en transformation digitale ;


 Infrastructure & Cloud : elle met en place tout type infrastructure (Solutions et Architecture
réseaux, services d’hébergement cloud)
 Cybersécurité : elle effectue des services de sécurité (tests d’intrusion, feuille de route
cybersécurité, audit sécurité, formation cybersécurité)
 Solutions métiers : elle fait la mise en place d’applications métiers et automatisation des
processus métiers (Boutique en ligne, Portail partenaire, portail logistique, application mobile)
 Travail Collaboratif : elle s’occupe des solutions de travail collaboratif et de communication
unifiée (déploiement de Microsoft 365, SharePoint, Exchange, Produits de communication
unifiée)
 Adoption et formation : elle fait des formation, montée en compétences et accompagnement à
l’adoption (programme interentreprises formation intra entreprise, atelier d’optimisation,
séminaire)

Section 2 : Accueil et formation du Service informatique

Nous avons passé un entretien avec Jonathan KOUOH, Consultant senior ensuite avec Carine de la
Direction des Services afin de discuter des compétences académiques, et des expériences
professionnelles précédentes. C'est au sein de la V-TEAM Infrastructure et Cloud que nous avons été
intégré en tant que consultant junior, sous la supervision de Jonathan au terme de ses entretiens.

Dès lors, nous avons dû nous familiariser avec les produits et services que propose notre entreprise,
notamment à travers des séances de formation. Aussi, nous avons été affecté à un poste, et associé aux
différents projets en cours, d’abord pour une période d’observation dans un premier temps, ensuite une
fois familiarisé, nous sommes intégrés aux différents projets selon les besoins de l’entreprise.

XII
Deuxième Partie : Automatisation des réseaux avec Ansible 
Chapitre 1 : Généralité sur L’automatisation des réseaux
Section 1 : L’automatisation des réseaux

1.1 - les réseaux :

La définition d’un réseau dans les technologies de l’information peut être la mise en relation d’au moins
deux systèmes informatiques. Cette connexion peut se faire par plusieurs moyens physique ou virtuel.
Le réseau le plus basique comporte deux ordinateurs connectés entre eux, chacun ayant accès aux
données de l’autre, ils peuvent partager des ressources, comme du stockage, des programmes, des
périphériques…

Mais avec l’avènement d’internet, ces systèmes informatiques peuvent aussi entre deux infrastructures
composées de plusieurs équipements réseaux, tels que des modems qui servent à transmettre des signaux
numériques via des supports analogiques ; des routeurs, qui assurent la retransmission des données
(paquets) en traçant un chemin dans l’océan des équipements réseaux interconnectés, à l’aide de
différents protocoles de routages ; les commutateur ou switch qui servent à interconnecter plusieurs
éléments d’un réseau interne, tout en gérant les informations sur le routage, la sécurité ou la
segmentation des réseaux.

La croissance des entreprises, telles que les opérateurs internet, les CDN (Content Delivery Network) ou
encore les grandes firmes et administrations les amènent à investir de plus en plus dans les réseaux pour
leur administration, leurs extensions, ou encore leur modernisation. En effet ces opérations peuvent être
couteuses, en temps, en mains-d’œuvre et en argent. L'administration de tel réseau composé de centaines
d’équipements peut s’avérer fastidieuse.

Dans le domaine des réseaux, un plan est une conception abstraite de l'endroit où se déroulent certains
processus. Les deux plans couramment référencés dans les réseaux sont le plan de contrôle et le plan de
données.

XIII
Le plan de donnée est la partie d’un réseau qui contrôle la façon dont les paquets sont acheminés, c’est-
à-dire comment les données sont envoyées d’un endroit à un autres. Comme exemple, le processus de
création d’une table de routage, est considéré comme faisant partie du plan de contrôle.

Le plan de données contrairement au plan de contrôle, qui détermine comment les paquets doivent être
transmis, transmet réellement les paquets. Le plan de données est également appelé plan
d'acheminement.

Figure 2 : plan de contrôle et plan de données

De façon général chaque équipement réseaux comporte son plan de contrôle et son plan de données.
Pour les réseaux classiques, chaque équipement doit être configurer individuellement, tout en tenant
compte de la configuration des autres équipements. Cela représente un cout énorme en temps, en
praticité et les erreurs sont difficile à détecter (propice aux erreurs), car il faut repasser sur chacun des
équipements afin d’inspecter les configurations effectuées.

1.2 - Automatisation des réseaux

Il est difficile de parler de l’automatisation des réseaux sans comprendre la notion de devops, et
d’infrastructure as code. Le DevOps est un mouvement culturel et une approche des processus d'affaires
qui visent à améliorer la collaboration et l'efficacité des équipes informatiques en intégrant les pratiques
de développement logiciel et d'exploitation informatique. L'automatisation des réseaux et l'Infrastructure

XIV
as Code (IaC) sont des éléments clés du DevOps, car ils permettent d'automatiser les tâches répétitives
et les processus de déploiement d'infrastructure et d'application.

L'automatisation des réseaux peut être réalisée à l'aide d'outils logiciels tels que Ansible, Puppet, ou
Chef. Ces outils permettent de créer des scripts ou des "recettes" qui décrivent les tâches à accomplir
pour configurer et déployer l'infrastructure et les applications. Ces scripts peuvent être exécutés de
manière automatisée, ce qui permet de gagner du temps et d'éviter les erreurs humaines.

L'Infrastructure as Code (IaC) est une approche qui consiste à décrire l'infrastructure informatique sous
forme de code, plutôt que de la configurer manuellement. Cela permet de rendre l'infrastructure plus
facile à gérer et à maintenir en utilisant les mêmes outils et les mêmes processus que pour le
développement logiciel. En utilisant l'IaC, les équipes informatiques peuvent également intégrer
l'infrastructure dans le cycle de développement logiciel, ce qui leur permet de déployer et de mettre à
jour l'infrastructure de manière rapide et fiable.

En résumé, le DevOps utilise l'automatisation des réseaux et l'Infrastructure as Code (IaC) pour
améliorer la collaboration et l'efficacité des équipes informatiques en automatisant les tâches répétitives
et les processus de déploiement d'infrastructure et d'application. Cela peut accélérer la livraison de
nouvelles fonctionnalités et améliorer la qualité des logiciels en utilisant des méthodologies agiles et en
intégrant l'infrastructure dans le cycle de développement logiciel.

XV
Figure 3 : Automatisation de réseaux

1.3 - Les Outils et Protocoles :

Dans cette partie, nous présentons les différents outils que nous pouvons utiliser pour l’automatisation
des réseaux, la programmation, les scripts, les solutions propriétaire

Il existe plusieurs solutions pour automatiser un réseau. La plupart des solutions d’automatisation de
réseaux se situent entre deux extrêmes : l’automatisation a l’aide de script Shell et le logiciel
d’automatisation, en passant par les modules de programmation. Aussi ses solutions utilisent des
protocoles que nous commencerons par définir.

1.3.1 - Le SSH : Secure Shell :

Le Secure Shell (SSH) est un programme et un protocole de connexion sécurisé. Le protocole de


connexion impose un échange de clés de chiffrement en début de connexion. Ensuite, tous les segments
TCP sont authentifiés et chiffrés. Il devient donc impossible d'utiliser un sniffer pour voir ce que fait
l'utilisateur contrairement à un protocole non sécurisé comme Telnet par exemple.

XVI
Le protocole SSH a été conçu avec l'objectif de remplacer les différents protocoles non chiffrés comme
rlogin, Telnet, rcp et rsh.

Par défaut, le protocole SSH utilise le port TCP/22, et est utilisé pour ouvrir un Shell sur une machine
distante. La première version ayant des problèmes de sécurité, c’est actuellement la version 2 qui est
largement utilisée. Cette version possède en plus un protocole de transfert de fichier SSH File Transfer
Protocol (SFTP).

SSH utilise deux méthodes d’authentification, une par mot de passe et une par clé. Pour la première il
faut des informations de connexion ou une phrase secrète. La seconde méthode utilise la cryptographie
asymétrique avec un système de clé publique et clé privée. La clé publique est distribuée sur les
systèmes auxquels on souhaite se connecter, tandis que la clé privée reste uniquement sur le poste
duquel on se connecte.

Il existe plusieurs implémentations logicielles du SSH, les plus utilisés étant le projet libre d’outils
OpenSSH et PuTTY.

1.3.2 - NETCONF (Network Configuration Protocol)

NETCONF est un protocole réseaux relativement récent normalisé en décembre 2006 avec le RFC 4741
et révisé en 2011 avec le RFC 6241. Ce protocole est basé sur du XML, et permet la gestion et la
configuration d’équipement réseau au travers des protocoles comme le SSH.

Il est implémenté dans la plupart des équipements réseaux des constructeurs actuels.

Comme le montre le schéma si dessous la pile du protocole NETCONF il utilise pour le transport le
SSH, et le XML selon un modèle qui contient les procédures, les opérations à effectuer et les différentes
données de configurations ou encore les messages. Ce modèle, c’est le YANG qui peut décrire des
données de configuration, accessibles en lecture et écriture : par exemple l’adresse IP statique d’une
interface ou des données de fonctionnement, accessibles en lecture seule : par exemple l’état d’une
interface (UP ou DOWN).

XVII
Figure 4 : Pile du protocole NETCONF

1.3.3 - Le SNMP

(SNMP), Simple Network Management Protocol en français « protocole simple de gestion de réseau »,
est un protocole de communication qui permet aux administrateurs réseau de gérer les équipements du
réseau, de superviser et de diagnostiquer des problèmes réseaux et matériels à distance. Il utilise le port
UDP 161 et 162.

Les systèmes de gestion de réseau du SNMP sont basés sur trois éléments principaux : un superviseur
(manager), des nœuds (nodes) et des agents.

L'architecture de gestion du réseau proposée par le protocole SNMP est donc fondée sur trois principaux
éléments :

Les équipements gérés (managed devices) sont des éléments du réseau (ponts, commutateurs,
concentrateurs, routeurs ou serveurs), contenant des « objets de gestion » (managed objects) pouvant
être des informations sur le matériel, des éléments de configuration ou des informations statistiques ;

Les agents, c'est-à-dire les applications de gestion de réseau résidant dans un périphérique, sont chargés
de transmettre les données locales de gestion du périphérique au format SNMP ;

Les systèmes de gestion de réseau (Network Management Systems notés NMS), c'est-à-dire les consoles
à travers lesquelles les administrateurs peuvent réaliser des tâches d'administration.

XVIII
Aussi ce dernier est plus utilisé dans le domaine de la supervision.

Maintenant que nous avons vu quelques protocoles pour l’automatisation des réseaux, il convient dans
cette partie de présenter quelques solutions et outils d’automatisation.

1.3.4 - Python :

Python est un langage de programmation interprété, multiparadigme et multiplateformes. Il favorise la


programmation impérative, structurée, fonctionnelle et orientée objet. Le langage python est placé sous
licence libre et fonctionne sur la plupart des plateformes informatiques, des smartphones aux serveurs,
de Windows à Unix, en passant pas MacOs, ou encore Android. Il a été conçu en tenant compte de la
productivité de ses utilisateurs tout en offrant des outils de haut niveau et une syntaxe simple à utiliser.
C’est un langage fortement typé et dynamique. Il est actuellement développé par la Python Software
Fondation, et la version stable actuelle est la 3.11.

Python est un langage de programmation qui peut s’utiliser dans de nombreux contexte et s’adapter à
tout type d’utilisation grâce à des bibliothèques spécialisées. C’est notamment le cas du réseau avec des
bibliothèques comme pyATS, Netmiko, NAPALM, Genie, et NCClient.

Quel que soit le module utilisé, l’automatisation avec python ne change pas : il repose sur des scripts
dont la syntaxe est propre au module utilisé et qui exécute des taches d’automatisation définies. Un des
grands avantages de de l’automatisation avec python, c’est que pour certaines de ses bibliothèques
comme NAPALM (Network Automation and Programmability Abstraction Layer with Multivendor
support) est multiplateformes. On peut exécuter un même script sur deux équipements de marque
différente et avoir le résultat demandé. Ils sont donc particulièrement efficaces dans un environnement
hétérogène.

1.3.5 - Cisco DNA Center :

Cisco DNA Center est une plateforme de pilotage centralisée propriétaire qui permet d'automatiser la
gestion des réseaux d'entreprises et fournit la visibilité complète du réseau.

XIX
En 2007, le SDN (Software Defined Access) est apparu dans l’objectif de tout automatiser, et même, de
se débarrasser de la CLI, en la remplaçant par un logiciel unique et centraliser, qui est le Cisco DNA
Center (Digital Network Architecture), solution propre à la marque.

Mais aujourd’hui, le SDN, concerne plutôt les data center et se concentre principalement sur les
applications. Comme les réseaux d’entreprise utilisent encore beaucoup d’appareils matériels, l’idée
serait de proposer de nouveaux services, comme il y’a actuellement dans les datacenters. Par exemple, si
nous avons besoin d’un nouveau pare-feu, et bien, ce serait plus simple, qu’en seulement quelques clics,
nous puissions obtenir un ASA virtuel, directement dans notre entreprise.

Le principe repose sur une « fabric » programmable, bâtie sur l’ensemble des équipements du réseau de
l’entreprise. On y voit cinq composants : la Fabric, le contrôleur APIC-EM, l’ISE (Identity Services
Engine), le NDP (Network Data Platform) et le DNA center

Figure 5 : Cisco DNA Center

1.3.6 - les SDN :

Dans cette partie nous faisons une petite présentation des SDN qui sont un ensemble de technologie que
permet la centralisation du contrôle d’un réseaux.

XX
Le SDN qui veut dire Software Defined Network en français réseaux définit par logiciel est une
approche de l’architecture réseau qui permet de contrôler le réseau de manière intelligente et centralisée
à l’aide d’application logiciel ou d’un contrôleur dédier. Le SDN vise une plus grande souplesse dans le
déploiement des infrastructure réseau, en s'inspirant sur les technologies issues du cloud computing ou
encore de la virtualisation.

En effet les SDN répondent à des problématiques différentes grâces aux différentes offres et outils. Il
peut être implémenté aussi bien dans un data center que dans une infrastructure d’entreprise. Les SDN
bénéficient d’une sécurité accrue avec la flexibilité de ses fonctions de routage, mais aussi de la
virtualisation des fonctions réseau. C’est donc la sécurité qui s’adapte au réseau. De plus l’accès aux
données des flux réseaux est largement simplifié, étant contrôlé en temps réel par le contrôleur SDN ce
qui permet une détection en temps réel des attaques, ou de mener plus facilement des analyses sur des
incidents.

La scalabilité qui est la capacité du réseau à s’étendre est un élément très important quand on parle des
SDN. Grâce à sa dimension de « programmabilité », le SDN permet de changer le fonctionnement d’un
réseau, de rajouter de nouvelles pièces ou service avec de délais très réduits. Ce réseau piloté par
logiciel fait abstraction du matériel et du logiciel, en séparant le plan de contrôle et le plan de données.
Les services liés au réseau (priorité, routage, …) sont regroupés dans le contrôleur qui gère entièrement
le réseau. Des règles peuvent donc être établies afin d’automatiser certaines tâches.

1.3.7 - Git :

Quand on administre des centaines d’équipements réseaux, la gestion des versions de configurations, de
nos équipements doit se faire de façon efficace.

Un logiciel de versioning, ou logiciel de gestion de version est un logiciel qui permet de conserver un
historique des modifications effectuées sur un projet afin de pouvoir rapidement identifier les
changements effectués et de revenir à une ancienne version en cas de problème.

Git est un logiciel de gestion de versions décentralisé. C'est un logiciel libre et gratuit, créé en 2005, et
distribué sous licence publique.

XXI
Git indexe les fichiers d'après leur somme de contrôle calculée avec la fonction de hachage SHA-1.
Quand un fichier n'est pas modifié, la somme de contrôle ne change pas et le fichier n'est stocké qu'une
seule fois. En revanche, si le fichier est modifié, les deux versions sont stockées, dans un dépôt, qui peut
être un répertoire local comme notre disque dur ou en ligne, sur GitHub par exemple.

Section 2 : Présentation de Ansible

2 - Présentation de Ansible :

Ansible est un gestionnaire de configuration et un outil de déploiement et d’orchestration très populaire


et central dans le monde de l'infrastructure as code (IaC).

Il fait donc également partie de façon centrale du mouvement DevOps, car il s’apparente à un véritable
couteau suisse de l’automatisation des infrastructures.

Ansible a été conçu avec plusieurs objectifs en vue :

Le minimum par nature. Les systèmes de gestion ne devraient pas imposer des dépendances
supplémentaires sur l’environnement.

La cohérence. cf. notion de test unitaire (procédure permettant de vérifier le bon fonctionnement d’une
partie précise d’un logiciel ou d’une portion d’un programme).

La sécurité. Ansible ne déploie pas des agents sur les nœuds. Un protocole de transport comme
OpenSSH ou HTTPS est seulement nécessaire pour commencer une gestion.

La fiabilité. Lorsqu’il est écrit soigneusement, un livre de jeu Ansible peut être idempotent afin d’éviter
des effets secondaires inattendus sur les systèmes gérés.

Une courbe d’apprentissage faible. Les livres de jeux Ansible utilisent un langage simple et descriptif
basé sur YAML et les modèles Jinja2.

2.1 - Fonctionnalité :

Ansible permet d’automatiser trois types de tâches :

XXII
Provisioning : configurer les différents serveurs et équipements dont vous avez besoin dans votre
infrastructure.

Configuration : modifier la configuration d’une application, d’un système d’exploitation ou d’un


périphérique, démarrer et arrêter les services, installer ou mettre à jour des applications, mettre en œuvre
une politique de sécurité, ou effectuer une grande variété d’autres tâches de configuration.

Déploiement d’applications : adopter une démarche DevOps en automatisant le déploiement


d’applications développées en interne sur vos environnements de production.

2.2 - Fonctionnement d’ansible :

La grande force d’Ansible est qu’il est facile à mettre en œuvre, car il est agent-less et ne nécessite
qu’une connexion SSH et la présence de python pour lancer les taches à réaliser.

Lorsqu’il y a plusieurs machines à gérer, Ansible exécute les opérations en parallèle. Cela permet de
gagner un temps considérable. Cependant, les tâches sont effectuées dans un ordre défini par l’utilisateur
lors du choix de la stratégie : Par défaut Ansible attendra d’avoir fini une tâche (sur tous les hôtes) pour
passer à la suivante.

Ansible et plus particulièrement ses modules sont idempotents. Cela signifie qu’une opération donnera
le même résultat qu’on l’exécute une ou plusieurs fois. Par exemple, on va vérifier si un utilisateur
existe : si c’est le cas, on ne fera rien, mais si l’utilisateur n’existe pas alors on viendra le créer.

2.3 - les différentes notions :

Pour comprendre Ansible, il faut prendre en compte plusieurs notions :

Node Manager : ou Control Node, est le poste depuis lequel tout est exécuté via des connexions,
essentiellement en SSH, aux nodes de l’inventaire. À sa connexion SSH.

Playbook: Un playbook Ansible est une séquence de tâches ou de rôles décrits dans un fichier ou
format yaml.

XXIII
L'automatisation avec ansible repose sur l’utilisation de playbooks. Les playbooks sont écrits selon un
langage d’automatisation simple et puissant. Les livres de jeu peuvent orchestrer avec précision
plusieurs parties d’une topologie d’infrastructure avec un contrôle très détaillé du nombre de machines à
traiter à la fois.

L’approche de Ansible en matière d’orchestration est une approche simple et précise : le code
d’automatisation devrait être pérenne et il devrait y avoir très peu de choses à retenir sur la syntaxe ou
des fonctionnalités spéciales.

Les livres de jeu sont écrits en langage YAML, Ain’t Markup Language. YAML expose un minimum de
syntaxe et propose un modèle de configuration ou de processus plutôt qu’un langage de script ou de
programmation. Chaque livre de jeu est composé d'un ou plusieurs “jeux (plays)” énoncés dans une
liste.

Un jeu est une analogie sportive qui définit un état ou un modèle et qui se “rejoue” de différentes
manières à d’autres moments.

Le but d’un “jeu” est de faire correspondre un “groupe” contenant des “hôtes (hosts)” dans des “rôles”
bien définis représentés par des objets Ansible appelés des “tâches (tasks)”. Sur le plan fondamental,
une “tâche” Ansible n’est rien de plus qu’un appel à un module Ansible accompagné de paramètres. Un
module est un programme Ansible en vue de réaliser certaines actions sur les “hôtes”.

Un module est généré sur le contrôleur, il est copié, exécuté et effacé sur les nœuds (dans le cadre de
l’automation des serveurs). Par contre, quand il s’agit de gérer des périphériques du réseau, comme des
commutateurs (switches) ou des routeurs, un module est généré et exécuté localement sur le contrôleur
pour agir sur la cible.

Inventaire : La liste des systèmes cibles gérés par Ansible est appelée un inventaire. C'est une source de
données listant les cibles devant être gérées par Ansible qui peuvent être organisées en groupes. On
distingue deux types d’inventaire :

 L’inventaire statique constitué d’un fichier décrivant la hiérarchie des équipements ;


 L’inventaire dynamique fourni par un système centralisé au travers d’un plugin, recensant tous
les serveurs de l’infrastructure (ex AWS, AZURE, ESXI...) ;

XXIV
Module : Les modules Ansible sont des “bouts de codes” écrits principalement en Python (mais tout
langage supportant les retours JSON est autorisé) pour modifier l’état d’une propriété d’un hôte. Les
modules sont invoqués par l’exécution de tâches soit directement dans la ligne de commande
ansible ou dans des livres de jeu avec la commande ansible-playbook.

Template : Comme son nom l’indique, un template est un modèle permettant de générer un fichier
cible. Ansible utilise Jinja2, un gestionnaire de modèles écrit pour Python. Les « Templates » Jinja2
permettent de gérer des boucles, des tests logiques, des listes ou des variables.

Rôle : Afin d’éviter d’écrire encore et encore les mêmes playbooks, les rôles Ansible apportent la
possibilité de regrouper des fonctionnalités spécifiques dans ce qu’on appelle des rôles. Ils seront
ensuite intégrés aux playbooks Ansible.

Figure 6 : Ansible

2.4 - les commandes de Ansible :

Outils Description Exemple

ansible Permets d'exécuter un simple module ansible all -m


Ansible sur un inventaire mode ad- ping
hoc(en ligne de commandes)

XXV
ansible-console Ouvre une console interactive Commandes classiques
permettant de lancer plusieurs actions
sur un inventaire.

ansible-config Affiche l'ensemble des paramètres ansible-


Ansible. list: affiche la liste complète config[list|
des options d'Ansible à disposition. dump|view]
dump: affiche la configuration dans le
contexte actuel. view: affiche le
contenu d'un fichier de configuration
Ansible

ansible-playbook Exécute un playbook Ansible sur un ansible-playbook


inventaire. playbook.yml

ansible-vault Permets de chiffrer des données qui ne


doivent pas être divulguées

ansible- Affiche les données d'un inventaire ansible-


inventory Ansible inventory -i
inventory --
graph

ansible-galaxy Permets d'installer des rôles et des


collections Ansible

ansible-doc Permets d'obtenir de l'aide pour utiliser ansible-doc ping.


Ansible. Plutôt pratique pour se guider.

2.5 - Présentation de Ansible Tower/AWX :

Ansible Tower est une plateforme logicielle qui permet de gérer et d'automatiser les tâches
d'infrastructure et de déploiement d'applications. Il est basé sur le logiciel Ansible, un outil de
configuration et de déploiement automatisé pour les systèmes informatiques, et ajoute des
fonctionnalités telles que l'interface graphique.

XXVI
Avec Ansible Tower, les équipes informatiques peuvent facilement créer et gérer des workflows
d'automatisation, ce qui leur permet d'automatiser les tâches répétitives et de gagner du temps. La
plateforme offre également une interface graphique intuitive, ce qui facilite l'utilisation et la gestion des
workflows.

En outre, Ansible Tower permet aux équipes de suivre les versions et de contrôler les changements
apportés à leur infrastructure, ce qui peut améliorer la fiabilité et la stabilité des opérations. La
plateforme offre également des fonctionnalités de gestion des accès et des autorisations, ce qui permet
de gérer les utilisateurs et les rôles de manière centralisée.

Enfin, Ansible Tower offre une surveillance en temps réel des tâches d'automatisation, ce qui permet
aux équipes de contrôler l'exécution des workflows et de détecter rapidement les problèmes potentiels.
Cela peut aider les équipes informatiques à mieux gérer leur infrastructure et à réagir rapidement aux
problèmes.

En résumé, Ansible Tower est une plateforme logicielle utile pour les équipes informatiques qui
souhaitent automatiser leurs tâches d'infrastructure et de déploiement d'application, ce qui peut
améliorer l'efficacité et la fiabilité des opérations.

XXVII
Chapitre 2 : Implémentation de la solution

1 – Présentation de l’infrastructure :

La conception d’un réseau d’entreprise se fait selon des modèles de conception qui servent à construire
des réseaux en respectant certaines règles d’architecture qui leur permettent de répondre aux besoins
actuels et futurs des entreprises et de leurs utilisateurs.

Un bon modèle de conception doit respecter certains principes :

Modularité : il supporte facilement la croissance et les changements ; faire évoluer le réseau est facilité
par l’ajout de nouveaux modules au lieu redessiner entièrement l’architecture du réseau.

Résilience : il supporte la haute disponibilité (HA) proche des 100 % de disponibilité

Flexibilité : les changements dans l’entreprise peuvent être adaptés au réseau rapidement selon les
besoins

Sécurité : la sécurité est intégrée au niveau de chaque couche

Notre réseau, afin de respecter les critères de modèle de conception, sera un modèle hiérarchique à trois
couches (tier 3).

Figure 7 : Modèle d'infrastructure Cisco Tier-3 XXVIII


Dans un modèle de conception 3 Tier, on trouve trois couches d’agrégation du trafic. D’une extrémité à
l’autre du réseau, le trafic pourrait passer par deux couches :

 Core : Backbone haute vitesse pour transférer rapidement les paquets. Fournit de la haute
disponibilité et s’adapte rapidement aux changements.
 Distribution : Agrège, les connexions des locaux techniques. Utilise des commutateurs pour
segmenter et organiser le système d’information en groupes, profils utilisateurs et afin d’isoler
les problèmes.
 Access : permets aux utilisateurs d’accéder aux périphériques du réseau.

La couche Access est celle qui connecte les utilisateurs finaux (end users) au réseau. Les commutateurs
(switches) de couche Access offrent une connectivité de type L2 (Couche 2 du modèle OSI) notamment
avec la technologie VLAN. On reconnaîtra un périphérique de couche Access par les fonctionnalités
suivantes :

 Connectivité aux périphériques terminaux, haute densité de ports, interfaces montantes


 Haute Disponiblité – alimentation redondante et support des First Hop Redundancy Protocols
(FHRP).
 Convergence – fournit du Power over Ethernet (PoE) pour les téléphones IP et les points
d’accès sans fil, quality of service (QoS).
 Securité – comprend d’office les fonctionnalités port security, DHCP snooping, Dynamic ARP
inspection, IP source guard.
 La couche Distribution fournit l’interconnexion entre les couches Access et Core. On reconnaîtra
un périphérique de couche Distribution par les fonctionnalités suivantes.
 Lieu d’agrégation : disponibilité et réduction de complexité.
 Haute disponibilité, “fast path recovery”, répartition de charge, qualité de service (QoS), et
sécurité.
 Route summarization et manipulation de paquets, point de reDistribution entre des domaines de
routage, filtrage de paquets et politiques de routage.
 Termine les VLANs.
 Redondance de la passerelle : First Hop Redundancy Protocol (HSRP, VRRP, GLBP).

XXIX
La couche Core fournit la connectivité entre tous les périphériques de la couche Distribution. On
l’appelle aussi le “Backbone”, la dorsale du réseau dont le rôle principal est de transférer de la manière
la plus efficiente un gros volume de trafic du réseau.

• Agrège le trafic des commutateurs de Distribution


• Implémente des protocoles et des technologies évolutives et de la répartition de charge
• Transfert “haute vitesse” au niveau L3.
• Utilise de la redondance de niveau L3.

2 – Préparation de l’infrastructure :

Pour pouvoir automatiser un réseau, il est nécessaire qu’au moins un protocole de configuration soit
configuré, sur les nœuds (manage node). La configuration des équipements sera faite selon le tableau
suivant :

Couche Équipeme Interface de Configuration


nt management

Access ASW1 Vlan 1 Username cisco


priv 15 pass
Cisco Ip
cisco
IOSvL2 add192.168.122.1
00/24 Ip domain-name
st.digital
ASW2 Vlan 1
No shut
Cisco Ip
IOSvL2 add192.168.122.1 Crypto key gen
01/24 rsa

ASW3 Vlan 1 1024

Cisco Ip Ip ssh version 2


IOSvL2 add192.168.122.1 Line vty 0 4
02/24
Transport
ASW3 Vlan 1

XXX
Cisco input ssh
IOSvL2 Ip Login local
add192.168.122.1
03/24

Distribut DSW1 Vlan 1


ion Ip
Cisco
IOSvL2 add192.168.122.1
04/24

DSW2 Vlan 1

Cisco Ip
IOSvL2 add192.168.122.1
05/24

DSW2 Vlan 1

Cisco Ip
IOSvL2 add192.168.122.1
06/24

Core CSW1 Vlan 1

Cisco Ip
IOSvL2 add192.168.122.1
07/24

CSW2 Vlan 1
Cisco Ip
IOSvL2 add192.168.122.1
08/24

CSW2 Vlan 1
Cisco IP
IOSvL2 add192.168.122.1

XXXI
09/24

Comme nous pouvons le voir sur le tableau au-dessus, nous avons activer le uniquement le SSH sur nos
équipements. Bien que répétitives, ces étapes sont nécessaires pour pouvoir communiquer avec nos
différents périphériques et équipements.

3 – Mise en place du nœud de contrôle Ansible :

3.1 - Configuration et inventaire :

Bien qu’étant multiplateforme, la configuration de notre nœud ansible requière d’être familier avec le
système de fichier du système d’exploitation sur lequel nous installons notre nœud de contrôle. Notre
choix c’est porté sur Ubuntu, un système Debian. Parmi les fichiers nécessaires pour pourvoir exploiter
notre moteur d’automatisation, deux sont indispensables : le fichier de configuration et l’inventaire.

3.1.1 - le fichier de configuration :

Il décrit le fonctionnement d’Ansible. Ce document propose d’examiner les principales options de


configuration de Ansible sur le nœud de contrôle. Son architecture sans agent laisse le soin à chacun de
configurer finement et personnellement le comportement par défaut de la solution. On peut changer ces
variables de configuration en renseignant un fichier de configuration. Ansible cherchera dans l’ordre (le
premier trouvé sera utilisé et les autres seront ignorés) :

Le contenu de la variable d’environnement ANSIBLE_CONFIG (Si la variable d’environnement est


valorisée)

L’emplacement ./ansible.cfg (dans le dossier courant, le répertoire de travail)

L’emplacement ~/.ansible.cfg (à la racine du dossier utilisateur comme fichier caché)

L’emplacement /etc/ansible/ansible.cfg (dans le dossier de configuration du logiciel)

Ce document comporte par défaut plusieurs sections, la plus importante étant la section [default].

XXXII
Figure 8 : fichier de configuration Ansible

Nous avons configuré quatre paramètres, notons que les paramètres non configurés sont définis par
défauts par Ansible :

inventory qui spécifie l’emplacement de notre inventaire ;

host_key_checking qui va vérifier et accepter manuellement de clés SSH. Elles doivent donc être
prés enregistrer. Si notre environnement est sécurisé, ce doit être désactivé ;

Deprecation_warnings qui va afficher les clés et valeurs définies dans les playbooks. Noud
désactivons ce paramètre

Timeout qui définit la durée d’une requête sans réponse

3.1.2 - L’inventaire :

Notre inventaire se présente sous la forme d’un fichier YAML selon une hiérarchie bien précise.

XXXIII
Figure 9 : Inventaire de l'infrastructure

Au plus haut niveau nous avons notre réseau, dans lequel nous pouvons voir nos switches. Ces derniers
sont repartis sur trois niveaux : le niveau accès, le niveau distribution, et le niveau cœur. C'est aussi ici
que nous renseignons l’adressage de nos différents équipements, le type de connexion utilisé (ici,
network_cli), les paramètres d’authentifications, et le module d’utilisé. Ici, nous utilisons des
équipements Cisco, ce sera donc un module réseau, cisco.ios. Rappelons qu’il existe un grand
nombre de modules pour plusieurs utilisations, et taches.

3.2 - Préparation des Playbook :

Pour la configuration de notre infrastructure, nous automatiserons plusieurs tâches :

• La configuration des noms d’hôtes de nos périphériques


• La création des vlan sur les couches, accès et distribution ;
• Les accès des switches aux vlan
• La configuration du protocole HSRP sur la couche distribution ;
• La configuration des interfaces en mode “trunk” entre les couches accès et distribution

XXXIV
• Le DHCP sur la distribution,
• L'Etherchannel
• L'adressage
• Le protocole OSPF entre les couches Core et distribution

Pour chacune de ces taches des playbooks seront créés, en YAML, et afin d’éviter les longs fichiers de
configuration, pour l’adressage sera utilisé un template.

3.2.1 - La configuration des noms d’hôte (Hostname) :

Figure 10 : Playbook de la configuration des hostname

Ce playbook va appliquer à chacun des éléments du groupe switch de notre inventaire le nom tel que
défini dans la variable inventory_hostname de ce dernier. Cela veut dire que chacun des switchs
de notre infrastructure aura le noms d’hôte défini dans notre inventaire.

3.2.2 - La création de vlan :

XXXV
Figure 11 : playbook de la création des vlan

Ici notre playbook créera des vlan dans tous les équipements de la couche distribution et accès : nous
allons segmenter notre réseau en le découpant en trois vlans. Notons que nous pourrons en déployer
plusieurs à la demande en les rajoutant dans notre playbook.

3.2.3 – Configuration des vlan :

Figure 12 : playbook de configuration des vlan

Notre playbook ici va configurer les ports, selon les vlan auxquels ces derniers ont accès. Il utilise le
module cisco.ios.ios_l2_interfaces qui sert à administrer les interfaces des switchs de
niveau 2 (layer-2 switch).

XXXVI
3.2.4 - La configuration du protocole HSRP sur la couche distribution :

Figure 13 : playbook de configuration du HSRP

Notre playbook ici est chargé de l’automatisation de la configuration du protocole HSRP sur le switch
DSW1. Il utilise le module cisco.ios.ios_config. Ce module nous permet d’utiliser les
commandes cisco ios pour différente configuration. C'est pourquoi nous pouvons reconnaitre des
commandes ios dans ce playbook. Pour ne pas allonger cette section, nous mettrons en annexe les
configurations de DSW2 et DSW3. Notons que ces dernières sont dans le même playbook.

3.2.5 - le “Trunking” des interfaces :

Ce playbook va "trunker” les ports, entre la couche distribution et la couche accès. Il utilise le module
cisco.ios.ios_l2_interfaces qui sert à administrer les interfaces des switchs de niveau 2
(layer-2 switch).

XXXVII
Figure 14 : Playbook du trunk des interfaces

3.2.6 - Configuration DHCP au niveau de la distribution :

XXXVIII
Sur ce playbook, nous pouvons observer l’automatisation de la configuration du DHCP sur la
distribution, pour le réseau d’accès. Il utilise le module cisco.ios.ios_config. Ce module nous
permet d’utiliser les commandes Cisco ios pour différentes configurations.

3.2.7 - la configuration de Etherchannel :

Figure 15 : Playbook de la configuration du DHCP

Figure 16 : Configuration de Etherchannel

XXXIX
Notre playbook nous montre la configuration de l’Etherchannel. Nous utilisons le module
cisco.ios.ios_lacp_interfaces. Ce module a pour rôle principal la configuration de
l’Etherchannel en mode LACP (active).

3.2.8 - l’adressage :

L'adressage d’un réseau selon la taille de ce dernier peut nous emmener à faire de long playbook. Dans
l’optique de l’automatisation de cette étape, nous pouvons utiliser les templates. Pour cela nous aurons

Figure 17 : Playbook de l'adressage


besoin du playbook de l’automatisation d’adressage, de son template et du dictionnaire d’adresse IP
(fichier écrit soit en JSON, soit en YAML).

Nous pouvons voir deux paramètres dans le playbook d’adressage :

Le vars_file : il spécifie l’emplacement du dictionnaire sur lequel le Template va récupérer les


données. Dans notre case il s’agit juste de l’interface et de l’adresse IP associée à ce dernier. Il est
relativement simple à remplir ;

XL
Figure 18 : Dictionnaire de l'adressage

Le src : il spécifie l’emplacement du template à utiliser. Il s’agit d’un script qui vas récupérer les
interfaces et leurs adresses IP, ensuite vas les passer au module cisco.ios.ios_config qui va
automatiquement faire les configurations nécessaires.

Figure 19 : Template de l'adressage

3.2.9 - la configuration du protocole OSPF entre les couches Core et distribution :

XLI
Figure 20 : Configuration du protocole OSFP

Nous utilisons le module cisco.ios.ios_config pour la configuration de l’OSPF sur les


périphériques de la couche Core et Distribution dans ce playbook.

4 - Lancement des taches d’automatisation :

L’exécution des tâches d’automatisation avec ansible se fait avec la commande ansible-playbook. Une
fois configurer nous pouvons lancer le playbook en précisant le chemin de l’inventaire si nous ne
l’avons pas renseigné. La syntaxe est :

Ansible-playbook playbook.yml –i inventaire.yml

Depuis notre nœud de contrôle, préalablement connecté à notre infrastructure, nous exécutons les
différents playbooks préalablement créés.

L’exécution d’un playbook se fait en deux étapes : d’abord le lancement. Pendant cette phase, la console
affiche la portée du playbook (équipement spécifique, couche, …). Ensuite l’exécution, la console
affiche la tâche à effectuer, les équipements affectés par ce changement et un récapitulatif des
opérations.

XLII
Figure 21 : Lancement d'un playbook

Figure 22 : exécution d'un playbook

Il en est de même pour l’exécution de tous les playbooks. Nous avons toujours l’affichage des taches à
exécuter, la portée (la couche ou l’équipement concerné) et un résumé du déroulement de l’exécution.

L’exécution des playbooks automatise alors la totalité de notre réseau.

5 - difficultés rencontrées :

L’automatisation réseau avec ansible ne se met pas en place de façon aisé. Elle demande un large
éventail de connaissance et de compétence :

 L’administration système linux : selon la version de ansible utilisé, une version précise de
python peut être requise. Il faut savoir changer les variables d’environnement sous linux afin de
changer la version par défaut de python. Aussi il faut connaitre les emplacements des différents
fichiers de configuration pour éditer certains paramètres afin d’assurer la connexion ssh.
Evidement il faut être à l’aise avec la ligne de commande et la lecture de logs pour pouvoir faire
du troubleshooting sur notre Nœud Ansible.
 La programmation : Ansible étant basé sur python, certain script notamment jinja2 même étant
simple demande une bonne connaissance de la programmation python. De plus la préparation
des playbooks en YAML aussi demande une parfaite maitrise de ce dernier. Le moindre espace
de trop par exemple peut rendre nos playbooks inutilisables.

XLIII
XLIV
Troisième Partie : Remarques, Suggestions et apport du stage

Chapitre I : Remarques et Suggestions


Section 1 : Remarques

Pendant la durée de notre stage au cours de ST DIGITAL, nous avons pu faire quelques observations
aussi bien au sein de l’entreprise que chez nos différents clients :

Avec le cloud computing et les solutions d'intégration les entreprises peuvent utiliser à la demande les
services informatiques sans se soucier des problématiques d'infrastructures de sécurité et de
maintenance, et ainsi se concentrer sur les tâches relatives au cœur de métier de cette dernière. Mais cela
s’accompagne d’une certaine dépendance à un fournisseur d’accès internet.

Pour beaucoup d’entreprises, la possession d’équipement physique est l’assurance d’une certaine
autonomie. En effet ils ne sont pas dépendant d’une connexion internet pour pouvoir continuer à opérer.
Mais de la même ils n’ont qu’au ressources de leurs infrastructures uniquement quand ils sont dans leurs
locaux.

Section 2 : Suggestions

Aux points soulever nous pouvons au moins apporter un chemin de réflexion :

Les si les solutions cloud sont intéressantes, la nécessité d’avoir une connexion internet permanente
demeure leur grand point faible. Une première solution serait déjà une redondance de ligne de
préférence avec des opérateurs différents.

Aussi pour profiter de la continuité de services dans un environnement ou une connexion internet
permanente n’est pas toujours disponible, il vaut mieux privilégier une architecture hybride. En effet
l’avantage d'une architecture hybride est qu'elle peut combiner les avantages des différents types
d'architectures, tels que le cloud et les systèmes sur site. Cela permet de tirer parti des meilleures
technologies et de créer une solution adaptée aux besoins spécifiques de l'entreprise. Une architecture
hybride peut également offrir une plus grande flexibilité et une meilleure évolutivité, ce qui peut être
utile pour les entreprises en constante croissance ou en phase de changement.

XLV
Chapitre II : Apport du stage au sein de ST DIGITAL

Section 1 : Acquisition des Compétences techniques :

Notre stage à St digital Gabon nous a permis d'avoir une connaissance approfondie du service cloud de
Microsoft, notamment les outils de collaboration avec Microsoft 365 et le cloud computing avec
Microsoft Azure.

Microsoft 365 est une suite d'applications en ligne qui permet aux utilisateurs de travailler de manière
collaborative. La suite comprend des outils de productivité tels que Word, Excel, PowerPoint, OneNote,
et Outlook, ainsi que des services de stockage en ligne tels que OneDrive et SharePoint.

Microsoft 365 permet aux utilisateurs de travailler sur des documents en temps réel, ce qui leur permet
de partager et de collaborer facilement sur des projets. La suite offre également des fonctionnalités de
communication en ligne, telles que les appels audio et vidéo, les discussions de groupe, et les réunions
en ligne, ce qui permet aux utilisateurs de rester connectés et de travailler ensemble de manière efficace.

En outre, ils offrent des fonctionnalités de gestion des tâches et des projets, ce qui permet aux
utilisateurs de planifier et de suivre les progrès des projets en temps réel. La suite offre également des
fonctionnalités de sécurité avancées, ce qui permet aux utilisateurs de protéger leurs données et leurs
communications en ligne.

XLVI
Figure 23 : portail Microsoft 365

Section 2 : Adaptation au Climat d’entreprise :

L'évolution au sein de ST DIGITAL nous a permis de développer plusieurs autres compétences


nécessaires dans le milieu de l’entreprise. Notamment auprès de notre superviseur, nous avons après
plusieurs choses dans les relations avec les clients ou potentiels clients :

 L'écoute et l’analyse : l’écoute et l’analyse des besoins des clients sont primordiales. Ils
permettent d’établir un climat de confiance, de connaitre l’environnement dans lequel nous
serons appelés à intervenir ;
 Les propositions pertinentes : en fonction du besoin du client nous devrons proposer la
solution adéquate et adaptée au besoin de ce dernier.
 Le retour d’expérience : une fois la solution livrée au client nous devrons recueillir les avis et
ressentis de ce dernier afin d'en proposer des améliorations si besoin, et maintenir la confiance.

Aussi sur le plan comportemental ce séjour en entreprise s’est révélé très instructif, notamment sur
plusieurs points :

 Le respect de la hiérarchie : dans le monde de l’entreprise nous avons une hiérarchie bien
définie, dont le respect est primordial, et demande une certaine discipline.

XLVII
 La proactivité et productivité : l’oisiveté est à proscrire en entreprise. Il nous revient d’être
productives et travers des activités qui nous permettrons de monter en compétences par exemple.
 L’organisation : dans la réalisation d’un projet, il est indispensable d’être organisé et de
respecter le programme établis et d’effectuer ses dans les temps.
 Enfin nous avons appris l’importance de l’administration et la rédaction, que ce soit à travers la
rédaction de document administratif, le rapport, les comptes rendus de réunion, ce sont des
atouts très importants.

CONCLUSION

En conclusion, ce stage à l’entreprise ST DIGITAL a été très formateur. Cette société de service
numérique, présente au Gabon est très impliquée sur l’accompagnement des entreprises à travers ses
services pour que ces dernières se concentrent et sur leur cœur de métier.

Ansible est un outil d’automatisation, un logiciel libre qui automatise le provisioning, la configuration
et déploiement d’applications ou de configuration. Il utilise le protocole SSH pour la connexion aux
différents nœuds.

Il est multi plateforme, et peut etre utilisé pour plusieurs taches, comme dans notre cas, l’automatisation
des réseaux. En effet les réseaux d’entreprises sont vitaux pour ces dernières, mais peuvent demander de
plus en plus d’investissement. C'est pourquoi leur gestion doit se faire de manière efficace, d’où
l’utilisation des outils d’automatisation et de gestion de configuration comme Ansible.

Le déploiement de l’automatisation avec ansible nous à permit de comprendre plusieurs concepts tel
que celui de l’infrastructure as code, dans le cas du réseau, Network as code qui est le fait d’écrire un
programme pour configurer un réseau et ne plus avoir à le faire manuellement, ainsi nous sommes

XLVIII
concentrés sur sa conception. Il nous a aussi permis d’acquérir des notions sur la programmation
notamment en python qui est un langage de référence pour la programmation du réseau.

Au cours de ces mois nous avons pu acquérir une certaine expérience professionnelle, et nous avons
approfondi nos connaissances sur les outils de collaborations Microsoft 365, appris en tant que
technicien, à faire de la relation avec la clientèle.

Enfin notre implémentation a été réalisée sur GSN3 qui est un outil de simulation d’infrastructure. Mais
nous avons la forte convection que cet outil que nous utilisons pour le déploiement de nos
configurations serait un atout majeur et avons un bon espoir de le voir utilisé dans une infrastructure qui
sans douteen aura une grande utilité.

WEBOGRAPHIE :

https://docs.ansible.com/ansible/latest/collections/cisco/ios/index.html

https://docs.rocheralexandre.com/ansible/ansibleBase/

https://www.techtarget.com/searchnetworking/tip/An-introduction-to-network-automation-with-Ansible
https://docs.ansible.com/ansible/latest/network/index.html

XLIX
Annexe 1 : Installation de Ansible

Nous pouvons installer ansible de deux façons :

 Depuis les dépôts des distributions récentes : depuis la version 10 de Debian, et depuis la version
18.04 de Ubuntu, Ansible est disponible dans les dépôts officiels. Il faut juste lancer l’installation
avec la commande :
sudo apt install ansible

Figure 24 : Installation de Ansible avec la commande APT

L
 Avec Python3-pip : Ansible est aussi disponible comme module python. Avec cette méthode
d’installation, il faut d’abord installer pip avec la commande :
sudo apt install python3-pip

Figure 25 : installation de Python Pip

 Une fois pip installé, nous pouvons lancer l’installation de Ansible avec la commande :
pip install ansible

Figure 26 : Installation de Ansible avec pip

Figure 27 : dépendance de Ansible

Ansible a besoin d’un autre module, appelé sshpass. Une fois installé, il faut configurer les algorithmes
de chiffrement SSH. Pour cela il faut éditer le fichier config dans le répertoire ~/.ssh/

Figure 28 : configuration des algorithmes de chiffrement pour SSH

LI
Annexe 2 : playbook

Figure 29 : HSRP sur DSW3 Figure 30 : HSRP sur DSW2

LII

Vous aimerez peut-être aussi

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy