Trois possibilités de déployer son application

image

Bare-metal

Un déploiement bare-metal signifie que l’application tourne directement sur un serveur physique, sans virtualisation ni conteneurisation.

Ce serveur exécute un seul système d’exploitation, installé à même le matériel.

C’est un modèle traditionnel assumé pour certains contextes avec des demandes exigeantes en termes de performance ou de sécurité.

Il n’y a pas de couche d’abstraction (comme un hyperviseur ou un moteur de conteneur) : l’application tourne au plus près du matériel, avec un contrôle total sur l’environnement.

Avantages :

  • Isolation forte.

  • Possibilité de faire tourner plusieurs OS différents.

  • Facile à sauvegarder ou migrer.

Inconvénients :

  • Consommation importante de ressources.

  • Temps de démarrage élevé.

  • Taille d’images souvent massive.


VM

Une machine virtuelle (VM) émule un système complet (matériel + OS invité).
Elle repose sur un hyperviseur (type 1 ou 2) qui fournit une couche d’abstraction entre l’OS hôte et les OS invités.
Chaque VM dispose de son propre noyau et fonctionne indépendamment du système hôte.

Avantages :

  • Isolation forte (noyau dédié, matériel virtualisé).

  • Possibilité d’exécuter plusieurs OS différents (Linux, Windows…).

  • Facile à sauvegarder (snapshot) ou migrer (live migration).

Inconvénients :

  • Empreinte importante (CPU, RAM, disque).

  • Temps de démarrage élevé (boot complet).

  • Taille d’images souvent massive.


Les conteneurs

Un conteneur est une autre forme de virtualisation, mais où l’on a choisi d’isoler les processus les uns des autres. Il s’agit d’un ou plusieurs processus isolés tournant directement sur l’OS hôte, tout en partageant le même noyau.

La conteneurisation repose sur :

  • des namespaces (réseaux, PID, users, etc.) pour cloisonner la vision du système,

  • des cgroups pour limiter la consommation de ressources.

  • des union filesystem pour

En d’autres termes, un conteneur donne l’illusion d’un système indépendant, mais reste dépendant du noyau de la machine hôte.

Avantages :

  • Démarrage instantané.

  • Empreinte mémoire et disque très réduite.

  • Facilité de duplication, déploiement et orchestration.

Inconvénients :

  • Dépendance au noyau de l’hôte (Linux uniquement dans la majorité des cas).

  • Isolation plus légère qu’une VM (sensible en cas de faille kernel).

  • Moins adapté à l’exécution d’un OS complet ou différent.


Comparaison rapide

Critère

Bare-metal

Machine virtuelle (VM)

Conteneur

Type d’isolation

Physique (matériel dédié)

Virtuelle (hyperviseur, noyau dédié)

Logique (noyau partagé, isolation processus)

Noyau système

Propre à l’installation

Propre à chaque VM

Partagé avec l’hôte

Temps de démarrage

Lent (boot matériel + OS)

Moyen (boot VM + OS invité)

Instantané (processus isolé)

Empreinte ressource

Élevée (plein OS + pas de mutualisation)

Moyenne (OS invité + duplication de services)

Faible (aucun noyau, processus natif)

Portabilité

Dépend du matériel

Portabilité élevée via images

Très portable (format image + orchestration)

Flexibilité OS

OS de son choix

OS différent de l’hôte possible

Nécessite un noyau compatible avec l’hôte

Cas d’usage typique

Serveur critique, base de prod historique

Environnements isolés, tests OS, services legacy

Microservices, CI/CD, scalabilité rapide