0% ont trouvé ce document utile (0 vote)
11 vues3 pages

DEVOPS

Transféré par

edmonicovelonjara493
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats TXT, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
11 vues3 pages

DEVOPS

Transféré par

edmonicovelonjara493
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats TXT, PDF, TXT ou lisez en ligne sur Scribd

DEVOPS: Méthode de gestion de développement

Learning Outcomes

++ Compréhension des enjeux DevOps dans l'ingénierie logicielle.


++ Cappacité à mettre en oeuvre des pratiques DevOps de base.
++

DevOps est une approche qui rapproche le dev et les operations informatiques (Ops)

Objectif: travailler ensemble d'automatiser les processus (tests, déploiements,


supervision) et de livrer plus rapidement des applications operationnelles.

DevOps = collaboration + automatisation + amélioration continue.

Etapes: ++ Planification métier continue


++ Dev collaboratif
++ Tests continu

1 - Le Dev:

Toutes les activités liées à la conception et à l'écriture du code d'une exemples

DEVOPS:
** Une Culture d'équipe +
** des pratiques techniques +
** des outils modernes

i- Pourquoi une culture d'équipe ?

>> Collaboration et communication


>> Responsabilité partagée
>> Transparence (ex: dans la gestion du projet) et confiance

ii- Pouirquoi Pratiques ?

>> Intégration continue (CI)


>> Déploiement continu (CD)
>> Monitoring et Feedback
>> Automatisation des tâches.

A - CI:
=> Intégrer régulièrement le code des développeurs dans un dépôt central

* Ajout / Modification du code


>> Compiler le projet
>> Exécuter les tests (unittaires, etc)
>> Vérifier
* Commit: Action qui consiste à enregistrer une modification du code dans le
dépôt GIT.

Chaque commit contient:


++ les fichiers modifiés
++ un message
++ l'auteur

* Dépôt GIT
> Endroit POUR STOCKER le code d'un projet tout son historique.

Un dossier:
++ Les fichiers du projet (code, doc, etc)
++ L'historique de toutes les modifications (commits)
++ Les branches (versions, parallèles du code)
++ Les métadonnées de suivi créées par GIT.

B - CD / Delivery:

Automatiser la mise en production du logiciel après les étapes de tests et


validation.

- Continuous Delivery: Livraison continue


>> Le code est prêt à être déployé à tout moment.
>> Mais la mise en production nécessite encore une validation manuelle
(par exemple un clic du responsable).
- Continuous Deployment:
>> Mettre automatiquement le code en ligne pour les uitilisateurs.

C - Monitoring et Feedback:

>-- Monitoring: surveiller en temps réel l'état des applications, des


serveurs et des infrastructures.
>-- Feedback: retour d'info (des utilisateursn, des logs, des métriques) =>
AMELIORATION CONTINUE.

Pourquoi c'est important ?

--> Détecter rapidement les pannes ou anomalies.


--> Suivre les performances (CPU, RAM, trafic réseau, temps de réponse).
--> Améliorer l'expérience utilisateur grâce aux retours.
--> Avoir une boucle de rétroaction continue
___________ __________
| | | |
| Déployer | ------> | Observer |
|___________| |__________|

Automatisation des tâches :

*** Utiliser des outils ou des scripts exécuter automatiquement des actions
répétitives.

Pourquoi c'est utile ?

>> Gagner du temps -> plus besoin de répéter les mêmes manipulations.

D - EXEMPLES D'OUTILS MODERNES:

Conteneurisation et Orchestration : Docker, kubernettes ==> Exécuter les app


partout, assurer portabilité et scalabilité.

CI / CD: Gitlab CI/CD, Github, Jenkins

Infrastructure as Code (IaC): Terraform, Ansibe ==> Gérer les serveurs et


infrastructures comme du code (automatisation, configuration).

Monitoring et FeedBack: Prometheus, Grafana ==> Surveiller l'état des systèmes,


collecter des métriques, vissualiser et améliorer en continu.

I -Conteneurisation et Orchestration ( Docker, kubernettes ):

>> Exécuter partout: grâce aux conteneurs : app fonctionne de la même façon
sur PC, sur un serveur, ou dans le cloud.
>> Portabilité: pas besoin de tout reconfigurer selon la machine
--> le conteneur emporte tout ( code + dépendances).
>> scalabilité: avec Kibernettes, Lancer plusieurs copies (instances) de
l'app si beaucoup d'utilisateurs arrivent.

II - Infrastrucuture as Code (Terraform / Ansibe)

Choix 1: configurer un serveur ou un réseau = cliquer, installern configurer


=> long et manuel

Vous aimerez peut-être aussi