SlideShare une entreprise Scribd logo
1  sur  48
Mise en place d'une chaîne CI/CD sur une
plateforme Cloud
Présenté par :
Bechir ELOSMA
Encadré par :
Responsable ESPRIT : Mme. Nedra AMARA
Responsable entreprise : Mme. Haifa TOUMIA
Pour l’obtention du
Projet de Fin d’Etudes
DIPLÔME NATIONAL D'INGÉNIEUR
SPÉCIALITÉ : INFORMATIQUE
Contexte du projet
Concepts de base
Spécification des besoins et conception
Réalisation & choix techniques
Plan
Conclusion & perspectives
Présentation de Talan Tunisie Consulting
Stage de 4 mois au sein du pôle Intégration
Fondée en 2002, en Tunisie depuis 2007
3000 Consultants, 400 M€ de CA
Intégration des nouvelles technologies
Refonte des processus métiers
Conseil et assistance à la maîtrise
d’ouvrage
Finance
Energie et Services Publics
Assurances
Transport et Logistique
Télécom et Médias
Contexte du projet
1
Problématique(1/2)
7
DEV OPS
Processus traditionnel de développement des applications :
2
Contexte du projet
Développeur Opérateur
DEV
OPS
Production
Problématique(2/2)
Apparition de l’approche DevOps:
3
Contexte du projet
Développeur Opérateur
Mise en place d’une infrastructure
Cloud
Mise en place d’une
chaine DevOps CI/CD
9
Solution proposée
Développement d’une application
web
4
Contexte du projet
ere
❖ Accroître la productivité
❖ Diminuer “Time To Market”
❖ Amélioration du niveau de satisfaction des clients
❖ Réduction des coûts
Objectifs:
5
Contexte du projet
9
Méthodologie SCRUM
6
Contexte du projet
Contexte du projet
Spécification des besoins et conception
Réalisation & choix techniques
Conclusion & perspectives
Plan
Concepts de base
Concepts de base
7
Analyse des besoins
Concepts de base
C’est quoi le DevOps ?
8
Analyse des besoins
Concepts de base
Retour rapide des clients
Gagner en productivité
Satisfaction des clients
C’est quoi le DevOps ?
9
Analyse des besoins
Concepts de base
Le Cloud Computing
10
Analyse des besoins
Concepts de base
Les avantages du
Cloud Computing
11
Analyse des besoins
Concepts de base
Les modèles de services
du Cloud Computing
12
Analyse des besoins
Concepts de base
Contexte du projet
Concepts de base
Analyse des besoins et conception
Réalisation & choix techniques
Conclusion & perspectives
Plan
Développment de l’application web
Mise en place de l’infrastructure Cloud
Mise en place d’une chaîne DevOps CI/CD
Spécification des besoins
18
Démarche de travail
13
Déploiement de l’application sur deux
machines virtuelles nommées DEV et PROD
18
14
Application web
Spécification des besoins
Besoins fonctionnels
12
15
✔ mise en place d’un serveur d’intégration et de déploiement
continue
✔ mise en place d’un référentiel Docker privé
✔ Mise en place d’un serveur de contrôle
✔ Préparation d’un playbook et des inventaires
✔ Déploiement de l’application sur les machine DEV et PROD
Spécification des besoins
Besoins non fonctionnels
13
Performance Maintenance Scalabilité
16
Spécification des besoins
Diagramme de cas d’utilisation
13
17
Conception
Conception
Architecture du système
18
Contexte du projet
Concepts de base
Analyse des besoins et conception de la solution
Choix technologiques et Réalisation
Conclusion & perspectives
Plan
28
Choix du fournisseur Cloud
19
Choix Technologiques
28
• zones de disponibilités des Infrastructures Cloud
20
Choix du fournisseur Cloud
Choix Technologiques
28
• Quatre façons de gérer vos ressources Azure
21
Choix Technologiques
Choix du fournisseur Cloud
Choix Technologiques
27
Environnement de développement et de test Frameworks
Outils de déploiement
et Outils d’intégration continu
Outils de gestion de base de données
Technologies utilisées
22
Outils de conteneurisation
Outils de test de la
qualité de code
Réalisation
28
Platform CI/CD
PROJECT
http://Ip_addressport
23
http://Ip_addressport
DEV
Développeu
r
Opérateur
PROD
Réalisation
28
Achat des machines virtuelles
24
RAM
(GB)
CPU
(core)
Gitlab 4 2
Gitlab Runner 4 2
Ansible 4 2
DEV 1 1
PROD 1 1
Réalisation
28
Achat des machines virtuelles
25
Type de
machine
RAM CPU Prix
B2s 4 2 30,37$US/mois
B1s 1 1 7,59$US/mois
Réalisation
28
26
Mise en œuvre
Réalisation
28
Mise en œuvre
27
Build
Test
Release
Deploy
Réalisation
28
Mise en œuvre
28
Runner pour les stages Buid et Release
Runner pour le stage Deploy
Réalisation
28
Mise en œuvre
29
Mise en œuvre
30
01 03
02
Intégration de SonarQube dans
GitLab CI
Génération du rapport de test de
code
Configuration des notifications
par email
Réalisation
Réalisation
28
Mise en œuvre
31
Réalisation
28
Mise en œuvre
32
Réalisation
28
Mise en œuvre
33
Réalisation
28
Mise en œuvre
34
Ansible
Deploy.yml
inventories
DEV
PROD
Inevntory.yml
Réalisation
28
Mise en œuvre
35
Réalisation
28
Mise en œuvre
36
Réalisation
28
Mise en œuvre
37
Réalisation
28
Mise en œuvre
38
Réalisation
28
Mise en œuvre
39
Contexte du projet
Analyse des besoins et conception
Réalisation & choix techniques
Conclusion & perspectives
Plan
Concepts de base
Conclusion
Savoir manipuler de nouvelles
technologies
Apprendre à développer avec
Spring boot et Angular
Comprendre les notions du
Cloud Computing
Conclusion & perspectives
34
40
Comprendre la notion de DevOps
Perspectives
Conclusion & perspectives
35
• Intégration continue
de Gitlab avec
Kubernetes
• Crypter les variables et les
fichiers pour protéger leurs
contenus
• Amélioration du code source de l’application
en optimisation et complexité.
41
Merci de votre
attention !

Contenu connexe

Tendances

rapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSATrapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSAT
Siwar GUEMRI
 
RapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITRapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRIT
Lina Meddeb
 
La spécification des besoins
La spécification des besoinsLa spécification des besoins
La spécification des besoins
Ismahen Traya
 
Soutenance PFE ingénieur génie logiciel
Soutenance PFE ingénieur génie logicielSoutenance PFE ingénieur génie logiciel
Soutenance PFE ingénieur génie logiciel
Siwar GUEMRI
 

Tendances (20)

rapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSATrapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSAT
 
Conception et Réalisation d’une Plateforme Web de Gestion des achats
Conception et Réalisation d’une Plateforme Web de Gestion des achats Conception et Réalisation d’une Plateforme Web de Gestion des achats
Conception et Réalisation d’une Plateforme Web de Gestion des achats
 
RapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITRapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRIT
 
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...
 
Presentation pfe Système de gestion des rendez-vous médicaux
Presentation pfe Système de gestion des rendez-vous médicauxPresentation pfe Système de gestion des rendez-vous médicaux
Presentation pfe Système de gestion des rendez-vous médicaux
 
DEVOPS
DEVOPSDEVOPS
DEVOPS
 
Rapport pfe
Rapport pfeRapport pfe
Rapport pfe
 
présentation de soutenance PFE
présentation de soutenance PFEprésentation de soutenance PFE
présentation de soutenance PFE
 
La spécification des besoins
La spécification des besoinsLa spécification des besoins
La spécification des besoins
 
Pipeline Devops - Intégration continue : ansible, jenkins, docker, jmeter...
Pipeline Devops - Intégration continue : ansible, jenkins, docker, jmeter...Pipeline Devops - Intégration continue : ansible, jenkins, docker, jmeter...
Pipeline Devops - Intégration continue : ansible, jenkins, docker, jmeter...
 
Rapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammamiRapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammami
 
Soutenance PFE ingénieur génie logiciel
Soutenance PFE ingénieur génie logicielSoutenance PFE ingénieur génie logiciel
Soutenance PFE ingénieur génie logiciel
 
[PFE] Master en ingénierie du logiciel
[PFE] Master en ingénierie du logiciel[PFE] Master en ingénierie du logiciel
[PFE] Master en ingénierie du logiciel
 
DevOps avec Ansible et Docker
DevOps avec Ansible et DockerDevOps avec Ansible et Docker
DevOps avec Ansible et Docker
 
Rapport pfe Conceptionet Developpement d'une Application web et Mobile
Rapport pfe Conceptionet Developpement d'une Application web et  Mobile Rapport pfe Conceptionet Developpement d'une Application web et  Mobile
Rapport pfe Conceptionet Developpement d'une Application web et Mobile
 
Docker
DockerDocker
Docker
 
Rappport PFE 2012 Ghodhbane Hani - OpenSNC
Rappport PFE 2012 Ghodhbane Hani - OpenSNCRappport PFE 2012 Ghodhbane Hani - OpenSNC
Rappport PFE 2012 Ghodhbane Hani - OpenSNC
 
Tadx - Présentation Conteneurisation
Tadx -  Présentation ConteneurisationTadx -  Présentation Conteneurisation
Tadx - Présentation Conteneurisation
 
Présentation PFE "Refonte et déploiement d’une solution de messagerie en util...
Présentation PFE "Refonte et déploiement d’une solution de messagerie en util...Présentation PFE "Refonte et déploiement d’une solution de messagerie en util...
Présentation PFE "Refonte et déploiement d’une solution de messagerie en util...
 
PFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignementPFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignement
 

Similaire à PrésentationCI_CD.pptx

Cva 500-1 i-formation-concevoir-une-solution-de-virtualisation-citrix
Cva 500-1 i-formation-concevoir-une-solution-de-virtualisation-citrixCva 500-1 i-formation-concevoir-une-solution-de-virtualisation-citrix
Cva 500-1 i-formation-concevoir-une-solution-de-virtualisation-citrix
CERTyou Formation
 
Cours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdfCours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdf
boulonvert
 

Similaire à PrésentationCI_CD.pptx (20)

Gab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetite
Gab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetiteGab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetite
Gab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetite
 
meetup devops aix-marseille - décembre 2023
meetup devops aix-marseille - décembre 2023meetup devops aix-marseille - décembre 2023
meetup devops aix-marseille - décembre 2023
 
Déploiement, orchestration & sécurisation d’APIs
Déploiement, orchestration & sécurisation d’APIsDéploiement, orchestration & sécurisation d’APIs
Déploiement, orchestration & sécurisation d’APIs
 
20171122 01 - REX : Intégration et déploiement continu chez Engie
20171122 01 - REX : Intégration et déploiement continu chez Engie20171122 01 - REX : Intégration et déploiement continu chez Engie
20171122 01 - REX : Intégration et déploiement continu chez Engie
 
Sw 100 fr docker conteneurisation des applications
Sw 100 fr docker conteneurisation des applicationsSw 100 fr docker conteneurisation des applications
Sw 100 fr docker conteneurisation des applications
 
software engineering
software engineeringsoftware engineering
software engineering
 
#1 cloud-infra-talk- l ops-du-devops
#1 cloud-infra-talk- l ops-du-devops#1 cloud-infra-talk- l ops-du-devops
#1 cloud-infra-talk- l ops-du-devops
 
Devoteam REX OpenShift DevOps - Red Hat Roadshow Paris - avril 2018
Devoteam REX OpenShift DevOps - Red Hat Roadshow Paris - avril 2018Devoteam REX OpenShift DevOps - Red Hat Roadshow Paris - avril 2018
Devoteam REX OpenShift DevOps - Red Hat Roadshow Paris - avril 2018
 
OCCIware presentation au groupe de travail Big Data du SCS
OCCIware presentation au groupe de travail Big Data du SCSOCCIware presentation au groupe de travail Big Data du SCS
OCCIware presentation au groupe de travail Big Data du SCS
 
Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017
 
8 Rex : Mise en place de DevOps sur Azure
8   Rex : Mise en place de DevOps sur Azure8   Rex : Mise en place de DevOps sur Azure
8 Rex : Mise en place de DevOps sur Azure
 
TechDays 2012 - Windows Azure
TechDays 2012 - Windows AzureTechDays 2012 - Windows Azure
TechDays 2012 - Windows Azure
 
Catalogue pfe 2018 2019
Catalogue pfe 2018 2019Catalogue pfe 2018 2019
Catalogue pfe 2018 2019
 
Cva 500-1 i-formation-concevoir-une-solution-de-virtualisation-citrix
Cva 500-1 i-formation-concevoir-une-solution-de-virtualisation-citrixCva 500-1 i-formation-concevoir-une-solution-de-virtualisation-citrix
Cva 500-1 i-formation-concevoir-une-solution-de-virtualisation-citrix
 
RFID
RFIDRFID
RFID
 
20110125 02 - Retour d'experience en qualimétrie informatique (CDC)
20110125 02 - Retour d'experience en qualimétrie informatique (CDC)20110125 02 - Retour d'experience en qualimétrie informatique (CDC)
20110125 02 - Retour d'experience en qualimétrie informatique (CDC)
 
Mobilité && SAP
Mobilité && SAPMobilité && SAP
Mobilité && SAP
 
Cours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdfCours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdf
 
Certification mcse communication
Certification mcse communicationCertification mcse communication
Certification mcse communication
 
Adopter le cloud avec microsoft
Adopter le cloud avec microsoftAdopter le cloud avec microsoft
Adopter le cloud avec microsoft
 

PrésentationCI_CD.pptx