forked from vincent/notebook
add devops notes
This commit is contained in:
parent
24fd05573f
commit
b1ac1c9d42
484
IT/DevOps.md
Normal file
484
IT/DevOps.md
Normal file
@ -0,0 +1,484 @@
|
|||||||
|
# DevOps notes
|
||||||
|
|
||||||
|
[[_toc_]]
|
||||||
|
|
||||||
|
## 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 amélioration 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
|
Loading…
Reference in New Issue
Block a user