497 lines
12 KiB
Markdown
497 lines
12 KiB
Markdown
# DevOps notes
|
||
|
||
## intro
|
||
|
||
pourquoi
|
||
|
||
demarche:
|
||
|
||
- culture
|
||
- valeur
|
||
- croyances
|
||
|
||
principes: 3 Ways
|
||
|
||
process: methode
|
||
|
||
outils:
|
||
|
||
## explorer devops
|
||
|
||
**time to market**: période entre les premières idées concernant un produit et
|
||
sa disponibilité éventuelle sur les marchés de consommation répondre au besoin marché
|
||
|
||
**time to value**: Mesure du temps nécessaire pour que l'entreprise recouvre
|
||
la valeur d'une fonctionnalité ou d'un service. crée u ne nouvelle valeur
|
||
|
||
**agile**: mise en prod par petite itération
|
||
|
||
**mur de la confution**: les devs et la prod n'on pas les même objectif changement/stabilité
|
||
|
||
### objectif
|
||
|
||
- version plus petite et plus fréquente
|
||
- limitation de l'impact (effet blast)
|
||
- communication inter équipe
|
||
- gain de temps -> automatisation
|
||
- Vision global et systémique
|
||
- casser les Silo
|
||
|
||
**CALMS**:
|
||
|
||
- Culture:Valeurs et comportements qui contribuent à instaurer l'environnement
|
||
social et psychologique
|
||
- Automatisation
|
||
- Lean: amélioration continue, horizontalité, standardisé
|
||
- Mesure: monitoring, KPI
|
||
- solidarité: feedback
|
||
|
||
Minimum value product: objectif minimum du client
|
||
|
||
### le cercle d'or
|
||
|
||
Why: But Cause Croyance
|
||
|
||
How: ce qui nous distingue
|
||
|
||
What: produit
|
||
|
||
L’ IT n’a plus besoin de s’aligner ou de s’intégrer au business, elle est le business
|
||
|
||
## principe fondamentaux
|
||
|
||
### les 3 voies
|
||
|
||
#### flux: dev vers Ops
|
||
|
||
comprendre le flux fluidifier ,
|
||
outils:lean automatisation
|
||
|
||
- ne pas transmettre de default
|
||
- une optimisation local ne doit pas dégrader de dégradation global
|
||
|
||
**Value Stream Mapping**:décrit le flux d’informations, de matériaux et de
|
||
travail entre silos fonctionnels, en mettant l'accent sur DevOps la
|
||
quantification et l'élimination du gaspillage,
|
||
|
||
théorie des contraintes
|
||
|
||
- au moins toujour une contrainte
|
||
- limiter au maillons le plus failble (like rando)
|
||
- l'amélioration passe par l'optimisation des contraintes
|
||
|
||
- identifier la contraintes
|
||
- exploiter
|
||
- subordonner et synchroniser
|
||
- élever la performance
|
||
- répéter le process
|
||
|
||
#### feedback: des ops vers les dev , ITSM
|
||
|
||
rapide
|
||
améliorer les pratiques
|
||
|
||
- monitoring
|
||
- automatisation des tests
|
||
- post mortem
|
||
- donnée de changement, incident
|
||
|
||
#### experimentation et apprentissage coninue
|
||
|
||
- allouer du temps
|
||
- droit a l'erreur
|
||
|
||
neccessite:
|
||
|
||
- 3p: Protection, Permission, Puissance
|
||
- **assertivité**: voir la valeur de l'autre oposé de la domination
|
||
|
||
chaos Engineering
|
||
|
||
- généré des problématique sur une instance de production: permet d'évaluer
|
||
|
||
encourger une culture d'apprentisasge: voir chatops
|
||
|
||
**maitrise** répétition et entrainnement
|
||
|
||
## Principal pratiques de DevOps
|
||
|
||
### tests en continue
|
||
|
||
décalage a gauche: meilleure qualité lors de dev évute les proléme de mise en prod
|
||
|
||
test fonctionnelle: unitaire
|
||
|
||
test non fonctionelle: capacité, securité, performance
|
||
|
||
test-driven development: création des tests avant le dev
|
||
|
||
### intégration continue
|
||
|
||
commit régulier: lancement des test..
|
||
|
||
### continous delivery
|
||
|
||
s'assurer que le logiciel est toujour dans un étét livrable (s'arréte a la QA)
|
||
|
||
### continous deploiement
|
||
|
||
continue delivery jusqu'en Prod
|
||
|
||
### Site Reliability Engineering
|
||
|
||
mettre en place la resilience,
|
||
capacité du systéme a s'adapter
|
||
|
||
### ChatOps
|
||
|
||
partage entre les équipee
|
||
|
||
### KanBan
|
||
|
||
- notion importante de la capacité pour chaque "colonne"
|
||
- je vais cherché l'activité (Pul)
|
||
- lead time: entré de backlog et fin de process
|
||
- cycle time: entré dans le process et fin de process
|
||
- temps de backog= lead time - cycle time
|
||
- visualiser les contraintes
|
||
|
||
## Frameworks business et technologique
|
||
|
||
### Agile
|
||
|
||
valeur sur kes individu plutot que les pocesss
|
||
manifase agile
|
||
| valorisé | plutot que |
|
||
|---|---|
|
||
|individus|Processus et Outils|
|
||
|logiciel opé|doc exhaustive|
|
||
|collaboration avec les clients| Négociation contractuelle|
|
||
|adapatation au changement|suivre un plan|
|
||
|
||
- truc qui fonctionne plutot que la doc
|
||
|
||
#### SCRUM
|
||
|
||
- livrer pendant une période définie (sprint)
|
||
- itération fonctionnelle
|
||
- User stories: demandes rédigée du point de vue client
|
||
- Epics; grandes stories découper eb yser story
|
||
|
||
Product Backlog -> sprint Backlog -> itération
|
||
|
||
roles:
|
||
|
||
- équipe de dev
|
||
- product owner
|
||
- scrum master
|
||
|
||
#### Safe
|
||
|
||
agilité a grande échelle
|
||
|
||
### ITSM
|
||
|
||
- mise en oeuvre des services
|
||
- fournit des conseils et une structure aux processus
|
||
Agile Service Management: adapter les processus.
|
||
|
||
### lean
|
||
|
||
suivre le produit
|
||
|
||
chasse au mouda: gaspillage:
|
||
|
||
**DOWNTIME**:
|
||
|
||
- Default: ne pas respecter le besoin client
|
||
- Overproduction:
|
||
- waiting: attente de tests
|
||
- No use: outils non utilisé car probléme d'adhesion
|
||
- Transport: ping pong ticket
|
||
- Inventaire: Stock
|
||
- Mouvement:
|
||
- Excessive traitemnt: doc d'explication général trouvable sur internet
|
||
|
||
#### VSM
|
||
|
||
**Value Stream Mapping**: chaine de valeur sequence activité requise pour
|
||
concevoir prosuire et livrer
|
||
|
||
Demande client -> chaine de valueur -> produit
|
||
|
||
voir sur le terrain
|
||
|
||
#### Improvment Kata
|
||
|
||
répétition d'une pratique jusqu'elle devienne une habitude
|
||
roue de demming
|
||
|
||
2 existant -> 4 PDCA -> 3 objectif d'amélioration -> 1 Vision (long terme)
|
||
|
||
premiére étape: **Vision**
|
||
|
||
#### Cultutre de la sécurité
|
||
|
||
- valeur que partage les employé en matiére de sécurité
|
||
- post mortem **sans reproche**
|
||
- évaluer les incident
|
||
- SPOF
|
||
- cordon d'andon (remercier d'avoir tirer la sonnette d'alarme)
|
||
|
||
#### crée une organisation apprennante
|
||
|
||
- **engagement de la direction essentiel**
|
||
- ne pas apprendre est une dette culturel
|
||
|
||
#### Finacement en continu
|
||
|
||
- traditionnellement annuelle
|
||
- en mode agile: **révisé frequemmen** (trimestre)
|
||
- mesure du retour
|
||
- finacement a risque
|
||
|
||
## Culture, Comportement et modéle d'opération
|
||
|
||
**On ne peur pas changer la culture mais on peu changer les comportement.**
|
||
|
||
Dette culturel: Considération ignorée par rapport de la croissance et de l'innovation
|
||
|
||
caracterisque:
|
||
|
||
- valeur aligné sur le comportement
|
||
- collaboration
|
||
- fierté dans le travail
|
||
- Confiance
|
||
- amélioration continue
|
||
- Sûr
|
||
- Reconnaissance
|
||
- mesurable
|
||
|
||
confiance élevé > confiance faible
|
||
|
||
MVB: Most Valuable Bureacratie
|
||
|
||
### type de culture
|
||
|
||
| pathologique | Bureautratique | Génératrice |
|
||
| ----------------------------- | --------------------------------------- | --------------------------------- |
|
||
| inforation non dispo | information pe ignoré | information activement recherché |
|
||
| messager fusillé | messager isolé | messager encourager |
|
||
| responsabilité évitées | responsabilité sont compartimentalisées | les responsabilité sont partagées |
|
||
| les lien direct sont découagé | lien direct non encourager | lien direct sont récompensé |
|
||
| echec couvert | organisation juste est pardonne | echec entraine une investigation |
|
||
| originamité bridée | originaité crée des problémes | originalité mise en avant |
|
||
|
||
- les gens n'offrent pas de résistance a leur propres idées,
|
||
**il ne peuvent que ce changer eux même**
|
||
- implication des partie prenante impérative
|
||
- une personne impliquer dans les décisions est plus suceptible d'acepter le changement
|
||
|
||
### étape de l'aceptation du changement: courbe de kubler ross
|
||
|
||
- choc
|
||
- denie
|
||
- frustration
|
||
- depression
|
||
- experiment
|
||
- decision
|
||
- Integration
|
||
|
||
communication rapide est effice neccessaire #ChatOps
|
||
|
||
### Encourager la collaboration
|
||
|
||
- volontaire
|
||
- partagé
|
||
- fournir des feedback
|
||
- partage des connaissances
|
||
- partage des responsabilité
|
||
- engagement réalilste
|
||
|
||
### s'attendre au conflit
|
||
|
||
inventaire des conflits de Thomas-Kilmann (erreur dans le tableau?)
|
||
|
||
### Eviter la fatigue aux changement
|
||
|
||
> Le degré de fatigue face aux changements ressentie par les personnes est directement
|
||
> liée à la façon dont le changement est géré.
|
||
|
||
- génére de l'**apathie**
|
||
- elle est normal
|
||
- expliquer les raisons
|
||
- montrer les interconnection
|
||
- avoir un feedback
|
||
- célébrer les succée
|
||
|
||
### Valorisé les nouveux changements
|
||
|
||
- expérience d'immerssion
|
||
- Team Building
|
||
- Hackaton
|
||
- communité (guilde)
|
||
|
||
## Automatisation
|
||
|
||
un outils par servce
|
||
|
||
avantage de l'Automatisation:
|
||
|
||
- indepotent
|
||
- environement maitrisé
|
||
- moins d'incidents
|
||
|
||
**artefact**: tout objet compris dans objet (documentation,plan de test , images
|
||
, fichier de donnée...)
|
||
|
||
**API**: interface entre des module ou des applications
|
||
|
||
**Microservices**: logicielle composée de modules plus petits qui interagissent
|
||
via des API
|
||
|
||
**Virtualisation**: VM ou conteneurs isolation de l'environnement
|
||
|
||
**Open Source** : logiciel distribué avec le code sources
|
||
|
||
**Machine Learning**: analyse de données utilisanr des données.
|
||
|
||
### Cloud, conteneurs et Microservices
|
||
|
||
IAS: délégation de la partie Infra
|
||
|
||
PAS: gestion de l'os, database déléger on ne gére uniquement l'applications
|
||
|
||
SAS: office 365
|
||
|
||
### IA & Machine Learning
|
||
|
||
Analyse de données qui utilise des algorithmes pour apprendre des données.
|
||
|
||
- analyse de log ...
|
||
|
||
### Infrastructure as code
|
||
|
||
un grand pouvoir implique de grande responsabilité
|
||
|
||
### Automatisation de la communication
|
||
|
||
- alarmes
|
||
- améliorer la réponse
|
||
- collaboration virtuelle
|
||
|
||
### premiére étapes de l'Automatisation
|
||
|
||
- définir l'architecture
|
||
- évaluer l'existant
|
||
- automatier le travail a haute valeur ajoutée, répétitif et sujet aux erreurs
|
||
- Optimiser les goulots d'étrangleemnt
|
||
- **pouvoir évoluer avec le temps**
|
||
|
||
- modéliser
|
||
- automaitiser les process de déploiement et de versions Build
|
||
- automatiser les test unitaire
|
||
- automatiser les tests d'acceptation (UAT)
|
||
- automatiser la mise en prod
|
||
|
||
### Toolchains
|
||
|
||
- chaque élément sert un objectif particulier
|
||
- les interfaces sont assuré par des API
|
||
- elle ne doivent pas tous être fournit par le même fournissuer
|
||
- neccessite une conception architectural
|
||
- **elle doit être évolutif**
|
||
|
||
example d'élément:
|
||
|
||
- Gestion des exigences
|
||
- Orchestration et visualisation
|
||
- Gestion des versions
|
||
- Intégration continue et versions
|
||
- Gestion des artefacts
|
||
- Virtualisation de conteneurs et de systèmes
|
||
- d'exploitation
|
||
- Automatisation des tests et de l'environnement
|
||
- Configuration et déploiement du serveur
|
||
- Gestion de la configuration du système
|
||
- Alertes et alarmes
|
||
- Monitoring
|
||
|
||
modéliser la chane de valueur -> automatiser les release -> automatiser les test
|
||
unitaire et le coverage -> automatiser les test d'acceptation -> automatiser la
|
||
mise en prod -> amélioration continue
|
||
|
||
## Mesures, indicateurs et reporting
|
||
|
||
si on ne peut pas mesurer on ne peu pas améliorer
|
||
|
||
- mesurer la vitesse: fréquence, vitesse de déploiement
|
||
- qualité: Taux d'echec des changement
|
||
- stabilité: MTTD délai moyen de detection des incident, MTTR délai de
|
||
réparation, MTRS Délai moyen de rétablisement du service
|
||
- Culture: Engagement et moral, partage de connaissances.
|
||
|
||
1er voies: Les mesures nous permettent de trouver des contraintes
|
||
|
||
2 éme voies: Les preuves créent la confiance et permettent de faire plus
|
||
|
||
3 éme voies: Les hypothèses nécessitent des résultats quantifiables
|
||
pour déterminer la prochaine expérience
|
||
|
||
4 types de travail (IT) :?
|
||
|
||
- Projets business
|
||
- Projets IT
|
||
- Travail planifié
|
||
- Travail non planifié
|
||
|
||
## Partage, observeation, évolution
|
||
|
||
Devops Days internes
|
||
|
||
### Developpement
|
||
|
||
- turn over
|
||
- dificulté a monté en compétence
|
||
- autoformation
|
||
|
||
### Compétence
|
||
|
||
- priorité de l'entreprie
|
||
- culture G IT
|
||
- intéret pour le code
|
||
- adaptable
|
||
|
||
T-shaped: une spécialiter
|
||
|
||
pi-shaped: deux spécialiter
|
||
|
||
comb-shaped: multi spécialiter
|
||
|
||
leadership transformationnel
|
||
|
||
**Enps** employes promotter stat
|
||
|
||
- on part de ou on ai
|
||
- transparence
|
||
- se concentrer sur les comportement critique
|
||
- Expérimenter et apprendre
|
||
- Eviter l'inertie
|
||
|
||
### Facteur determinant de réussite
|
||
|
||
- engagement de la direction
|
||
- création d'une culture d'apprentissage collaboratibe
|
||
- Valeur et vocabulaire Commun
|
||
- **casser les silos**
|
||
- Indicateur
|
||
- Application de methode Agile et lean
|
||
- Communication ouverte et frequente
|
||
|
||
### Défis & Risque
|
||
|
||
- manque d'engagement
|
||
- transformer le eux en nous
|
||
- Manque d'éducation
|
||
- Mauvaise communication
|