notebook/IT/DevOps.md

497 lines
12 KiB
Markdown
Raw Normal View History

2022-10-05 20:59:48 +00:00
# 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 na plus besoin de saligner ou de sinté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 dinformations, 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