0% ont trouvé ce document utile (0 vote)
284 vues69 pages

Introduction à la culture DevOps et pratiques

Transféré par

Yassine El jabri
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 PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
284 vues69 pages

Introduction à la culture DevOps et pratiques

Transféré par

Yassine El jabri
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 PDF, TXT ou lisez en ligne sur Scribd

Introduction aux fondements et principes clés

Pr. Sara Qassimi


Section 1 : Exploration de la culture DevOps
• Exploration de la culture DevOps:
• Le CBOK
• Petite histoire DevOps
• Qu’est-ce que le DevOps?
• La valeur apportée par le DevOps
• L’importance du DevOps

2
CBOK (Collective Body of Knowledge)
• Le DevOps émerge a travers un ensemble de connaissance partagées
et collectives
• Les valeurs fondamentales du DevOps, c'est le partage.
• le partage et l'entraide sont à la base de toute la culture DevOps.
• L'ensemble des acteurs DevOps appartiennent à un mouvement de
partage sur la culture et les outils, les méthodes, les retours
d'expérience.

3
CBOK (Collective Body of Knowledge)

October 18-20, 2022

4
CBOK (Collective Body of Knowledge)

5
CBOK (Collective Body of Knowledge)
Les acteurs pour les certifications et les communautés DevOps.

6
Le schéma de certification DevOps comprend actuellement 8 certifications distinctes :
Aspects techniques et méthodologiques

7
CBOK (Collective Body of Knowledge)
Les acteurs pour les certifications et les communautés DevOps.

Son contenu Il est plutôt orienté commercial et à destination de la formation plutôt


méthodologique de l'accompagnement des entreprises qui voudront faire une transformation
DevOps de ces équipes

8
CBOK (Collective Body of Knowledge)

9
Petite histoire DevOps
-Projet de migration de Datacenter - Chargée de la réalisation des tests sur ce projet

• Enormément de temps a discuter avec les groupes de développeurs et les


groupes d'administrateurs réseaux (appelés Ops).
• Il doit échanger avec les développeurs pour comprendre quels tests doivent
être effectués sur le service.
• Il doit également échanger avec les Ops pour comprendre comment accéder
aux machines qui hébergent ces services.
• Contraste entre la manière de travailler des développeurs (Dev) et la manière
de travailler des opérationnels (Ops).

Planning Infrastructure Mgt


Development Security & Compilance
Testing Database Admin
Quality Assurance Network Technician

Consultant pour le gouvernement Belge 10


Petite histoire DevOps

• L'équipe de développement Dev


travaille sur le code qui est ensuite
envoyé à l'équipe de test pour être
validé par rapport aux exigences.

• L'équipe d'exploitation Ops


intervient vers la fin du processus, au
moment de la remise de la version.
11
Petite histoire DevOps

12
Petite histoire DevOps

13
Qu’est-ce que le DevOps?

Bob Alice

Soit l’entreprise nommée « Company »


La viabilité et le succès dépend largement de sa capacité à pouvoir
proposer à ses clients de nouveaux produits et services innovants, et
ce plus vite que ses concurrents.

14
Qu’est-ce que le DevOps?

15
Qu’est-ce que le DevOps?

Un grand retard pour que le nouveau code


de Bob soit déployé en production.

• Bob n'est pas capable de pouvoir mettre à disposition des clients


le code qu'il a créé rapidement.

• L'environnement de production est parfois un peu différent de


l'environnement de développement dans lequel le code a été
créé.

• Occasionner des erreurs ou de problèmes de compatibilité qui


n'avaient pas été analysés au préalable.
16
Qu’est-ce que le DevOps?

17
Qu’est-ce que le DevOps?

Alice doit s'occuper du diagnostic des problèmes qui sont


apparus par la mise en place des nouveaux produits de Bob.

Alice ne sait pas ce que fait Bob.


Bob ne sait pas ce que fait Alice.
Frustration !

Les développements de Bob provoquent des bugs


qu'elle doit traiter en plus de tous les autres
problèmes qu'elle peut avoir.
18
Qu’est-ce que le DevOps?

19
Qu’est-ce que le DevOps?

20
Qu’est-ce que le DevOps?

21
Qu’est-ce que le DevOps?

Dans la communauté DevOps, parler d’« ingénieur


DevOps » n’est pas toujours allé de soi.

Pour faire une analogie, on ne parle pas d’un «


Ingénieur Agile », mais plutôt d’un ingénieur logiciel
capable de mettre en œuvre des méthodes Agile.

Pareil pour le DevOps;


Beaucoup de professionnels se disent ainsi
« DevOps» lorsqu’on leur demande leur métier.
22
Qu’est-ce que le DevOps?

23
Qu’est-ce que le DevOps?

24
Qu’est-ce que le DevOps?

25
Qu’est-ce que le DevOps?

26
Qu’est-ce que le DevOps?

27
Qu’est-ce que le DevOps?

28
La valeur apportée par le DevOps

29
La valeur apportée par le DevOps

30
La valeur apportée par le DevOps

31
La valeur apportée par le DevOps

Le DevOps s'appuie dessus pour réussir à atteindre ses objectifs mais ne se limite pas à l'automatisation.

32
L’importance du DevOps
Pipeline

• Il y a un goulet d'étranglement entre les développeurs et les opérationnels qui empêchent les développeurs de
pouvoir mettre en production tout ce qu'ils ont produit.
• Puisqu'ils doivent attendre que les opérationnels ( qui sont soumis à des process beaucoup plus rigoureux et à
des impératifs de production) puissent leur mettre à disposition les machines dont ils vont avoir besoin.33
L’importance du DevOps

[Link]
and-scaling 34
L’importance du DevOps

35
Section 2 : Les pratiques aux fondamentaux du
DevOps
• Les principes fondamentaux du DevOps:
• Comprendre et expliquer ce qu’est le ‘three Way’ de Gene Kim
• Définir le ‘First Way’ et la notion de flux
• Comprendre l’importance du feedback dans le ‘Second Way’
• Expérimenter et continuer d’apprendre grâce au ‘Third Way’
• Maitriser les concepts d’Ingénierie du Chaos avec Netflix

36
‘Three Way’ de Gene Kim

37
‘Three Way’ de Gene Kim

38
‘Three Way’ de Gene Kim

39
‘Three Way’ de Gene Kim

40
‘Three Way’ de Gene Kim

41
‘Three Way’ de Gene Kim

42
‘Three Way’ de Gene Kim

43
‘Three Way’ de Gene Kim

44
Les concepts d’Ingénierie du Chaos avec Netflix

45
Les concepts d’Ingénierie du Chaos avec Netflix

Chaos Monkey est chargé de mettre fin de manière aléatoire


aux instances en production afin de s'assurer que les
ingénieurs mettent en œuvre leurs services pour qu'ils soient
résilients aux défaillances des instances.

[Link] 46
Les concepts d’Ingénierie du Chaos avec Netflix

[Link]/Netflix/SimianArmy
47
Les concepts d’Ingénierie du Chaos avec Netflix

48
49
Section 3 : Les pratiques techniques du DevOps
• Les pratiques techniques du DevOps:
• Comment les tests automatiques sont-ils mis en œuvre dans les
équipes DevOps?
• Qu’est-ce que l’intégration continue?
• Le Continuous Delivery au service d’un service toujours
opérationnel et utilisable par les clients

50
Le Continuous Testing

51
Le Continuous Testing

52
Le Continuous Testing

53
Le Continuous Testing

54
L’Intégration Continue

55
L’Intégration Continue

56
L’Intégration Continue

Si les tests ont échoué, le serveur CI va préciser quels


sont les tests qui ont raté pour que le développeur
puisse rectifier son code et faire en sorte que les tests
fonctionnent correctement par la suite.
57
L’Intégration Continue

Les constantes en majuscules, pas de caractères blancs,


documentations à chaque fonction, etc.

58
Continuous Delivery

59
Continuous Delivery

60
Continuous Delivery

Quality Assurance (QA): Le rôle dans


DevOps est de vérifier que le produit
aligne les exigences techniques avec les
objectifs de l'entreprise.

61
Récapitulation

Development & Operations


Un ensemble de pratiques qui vise à fournir des logiciels de qualité
supérieure en intégrant les processus entre les équipes de développement
et d'exploitation (development and the operations teams).
62
Le développement continu regroupe la planification et le codage. La portée du projet est
déterminée pendant la planification et les développeurs construisent le code.

Continous Development

63
Le développement continu regroupe la planification et le codage. La portée du projet est
déterminée pendant la planification et les développeurs construisent le code.

Continous Development
Continuous Testing
Les tests continus sont la phase au
cours de laquelle l'application est
rigoureusement testée pour détecter
les bugs.

Les conteneurs Docker simulent l'environnement de test dans le cadre d'un test continu.
Jenkins participe à l'automatisation de la procédure de test.

64
Le développement continu regroupe la planification et le codage. La portée du projet est
déterminée pendant la planification et les développeurs construisent le code.

Continous Development
Continuous Testing
Les tests continus sont la phase au
cours de laquelle l'application est
rigoureusement testée pour détecter
les bugs.

Continuous Integration
L'intégration continue est une phase essentielle de DevOps, qui traite
du développement de logiciels. Des modifications fréquentes sont
apportées au code source. Le code existant est assemblé de manière
continue et transparente « Commit» avec le nouveau code.
Git GitHub GitLab 65
Le développement continu regroupe la planification et le codage. La portée du projet est
déterminée pendant la planification et les développeurs construisent le code.

Continous Development
La conteneurisation joue un rôle
essentiel dans le processus de Continuous Testing
déploiement.
Les tests continus sont la phase au
cours de laquelle l'application est
rigoureusement testée pour détecter
les bugs.

Continuous Deployment
Continuous Integration
Le déploiement continu signifie que le code mis en œuvre (implemented
code) est correctement déployé sur tous les serveurs de production. Le code existant est assemblé de
Le nouveau code est déployé en permanence, et des outils de configuration manière continue et transparente
sont nécessaires pour le gérer efficacement. « Commit» avec le nouveau code.

66
Le développement continu regroupe la planification et le codage. La portée du projet est
déterminée pendant la planification et les développeurs construisent le code.

Continous Monitoring Continous Development


La surveillance continue comprend Continuous Testing
tous les aspects opérationnels, où
les informations critiques sur Les tests continus sont la phase au
l'utilisation du logiciel sont cours de laquelle l'application est
enregistrées et analysées pour en rigoureusement testée pour détecter
tirer des analyses.
les bugs.

Continuous Deployment
Continuous Integration
Le déploiement continu signifie que le code mis en œuvre (implemented
code) est correctement déployé sur tous les serveurs de production. Le code existant est assemblé de
Le nouveau code est déployé en permanence, et des outils de configuration manière continue et transparente
sont nécessaires pour le gérer efficacement. « Commit» avec le nouveau code.

67
68
Merci pour votre attention
Pr. Sara Qassimi

69

Vous aimerez peut-être aussi