Des VMs aux
conteneurs
Section INF (All)
Slide 1
Identifier les conséquences de la virtualisation sur le quotidien
professionnel
Comprendre les mécanismes techniques (namespaces, cgroups) qui
rendent possible l’évolution vers les conteneurs
Comparaison
3 architectures
- Les choix techniques influencent la sécurité,
le coût, la flexibilité, etc.
- Il faut comprendre les compromis avant de migrer
une solution existante.
- Installation directe sur une machine physique.
- L’informaticien maîtrise tout le système.
- Très fiable… mais peu flexible.
- L’OS tourne dans un environnement virtualisé.
- Gérée par un hyperviseur (ex: VMware, Hyper-V,
KVM).
- Chaque VM possède son propre noyau.
- Ne virtualise pas le matériel.
- Partage le noyau de l’hôte.
- Chaque conteneur est un ensemble de processus
isolés.
Primitives
cgroup (control group) permettent de définir des
limites aux processus
namespaces permet de définir des visibilités entre
les processus
union filesystem permet de créer des couches
(~calques) de fichiers
- Tu installes et configures manuellement l’OS, les
paquets, les services.
- Les déploiements sont longs, souvent
scripts maison ou interventions à la main.
- Les sauvegardes nécessitent des snapshots disques
complets ou des stratégies complexes.
- Tout repose sur toi : si tu plantes, c’est
irrécupérable.
- Tu gères plusieurs VM indépendantes, souvent via un
hyperviseur centralisé.
- Tu peux scripter leur déploiement avec des
templates (cloud-init, Packer, Vagrant, Terraform, …).
- Les snapshots permettent des retours rapides →
expérimentations facilitées.
- Meilleure gestion de la production et des
environnements de test.
- Tu écris des Dockerfile, tu pousses dans une
registry, tu déploies avec des scripts
CI/CD.
- Tu ne “vois” plus le système : tu raisonnes en services et
pipelines.
- Les logs, la persistance, la sécurité sont gérés avec des outils
dédiés (volumes, secrets, etc).
- Tout devient infra-as-code et versionné.
| Bare-metal |
Technicien système |
Bash, rsync, scripts maison |
| VM |
Administrateur système |
Hyperviseur, Ansible, Veeam |
| Conteneur |
DevOps / Plateform Eng. |
Docker, GitHub Actions, Helm |