5.3 - Gestion de configuration et conteneurs
L'objectif 5.3 du Cloud+ CV0-004 couvre la gestion de configuration et les conteneurs. Des outils de gestion de configuration comme Ansible et Puppet imposent un état voulu défini sur les serveurs, corrigeant automatiquement la dérive. Ansible est un outil courant sans agent qui utilise des playbooks YAML et SSH pour configurer les serveurs, sans logiciel à installer sur les cibles. Un conteneur est un paquet léger qui regroupe une application avec ses dépendances pour qu'elle s'exécute pareil sur n'importe quel hôte, plus efficace qu'une VM complète. Kubernetes est une plateforme qui planifie, met à l'échelle et auto-répare les conteneurs sur un cluster de nœuds, redémarrant les conteneurs défaillants et répartissant la charge. Tu dois aussi connaître Docker, les images, les registres et les pods. Attends-toi à des mises en situation demandant la bonne technologie - gestion de configuration, Ansible, conteneur ou Kubernetes.
Imposer l'état voulu sur les serveurs (corriger la dérive) = gestion de configuration. Sans agent, playbooks YAML via SSH = Ansible. Appli + dépendances, tourne partout = conteneur. Planifier/mettre à l'échelle/auto-réparer les conteneurs = Kubernetes.
Questions d'entraînement
1. Un outil qui impose un état voulu défini sur des serveurs (ex. Ansible, Puppet) fait de la :
- Contrôle de source
- Gestion de configuration (bonne réponse)
- Répartition de charge
- Conteneurisation applicative
La gestion de configuration maintient les systèmes dans un état déclaré et corrige automatiquement la dérive de configuration. La gestion de versions suit l'historique du code ; les conteneurs empaquettent les applis.
2. Deux exécutions de pipeline tentent de modifier l'infrastructure en même temps ; un verrou arrête la seconde. Cela empêche :
- La dérive de feature flag
- Un état IaC corrompu (bonne réponse)
- Les sessions collantes
- Les démarrages à froid
Le verrouillage d'état bloque les écritures concurrentes du fichier d'état IaC, empêchant deux exécutions de le corrompre ou d'écraser mutuellement leurs changements. Il sérialise les mises à jour d'infrastructure.
3. Un paquet léger regroupant une appli et ses dépendances pour tourner à l'identique sur tout hôte est un :
- Machine virtuelle
- Conteneur (bonne réponse)
- Hyperviseur
- Instantané
Un conteneur empaquette une appli avec ses bibliothèques et partage le noyau de l'hôte, restant léger et portable. Une VM inclut un OS invité complet et est plus lourde.
4. Une plateforme qui ordonnance, met à l'échelle et auto-répare des conteneurs sur un cluster de nœuds est :
- Un registre
- Un hyperviseur
- Kubernetes (bonne réponse)
- Un répartiteur de charge
Kubernetes orchestre les conteneurs sur des nœuds : ordonnancement, mise à l'échelle, redémarrages et découverte de services. Un registre ne fait que stocker des images ; un hyperviseur exécute des VM, pas des conteneurs.
5. Quel outil sans agent utilise couramment des playbooks YAML et SSH pour configurer les serveurs ?
- Ansible (bonne réponse)
- Docker
- Terraform
- Grafana
Ansible est sans agent, poussant des playbooks YAML via SSH pour imposer la configuration. Terraform provisionne l'infrastructure de façon déclarative ; Docker empaquette des conteneurs ; Grafana visualise les métriques.
6. Un fichier texte listant les étapes pour assembler une image de conteneur couche par couche est un :
- Manifeste
- Dockerfile (bonne réponse)
- Table de routage
- Playbook
Un Dockerfile est un fichier texte d'instructions ordonnées servant à construire une image de conteneur couche par couche. Un manifeste Kubernetes déclare plutôt des ressources ; un playbook configure des serveurs.