SSD Nodes Learn 8GB de RAM — $66/an
Guides Matt ConnorPar Matt Connor · Mis à jour le 2026-08-02

VPS, VM et VPC : quelles différences ?

VM, VPS et VPC ne désignent pas la même chose : technologie, serveur loué ou réseau privé cloud. Comprenez leur rôle et choisissez ce dont vous avez besoin.

VPS, VM et VPC en un paragraphe

Une VM (machine virtuelle) est un ordinateur créé par logiciel : un hyperviseur divise un serveur physique en plusieurs machines indépendantes, chacune exécutant son propre kernel. Un VPS (serveur privé virtuel) est l’une de ces machines virtuelles que vous louez comme un produit, avec un système d’exploitation, un accès root et un prix mensuel. Un VPC (cloud privé virtuel) n’est pas un serveur. C’est un réseau privé que vous définissez dans un compte cloud, puis dans lequel vous placez des ressources. VM désigne la technologie. VPS désigne le produit. VPC désigne le réseau autour du produit.

Deux de ces termes désignent une machine. Le troisième désigne un réseau. La confusion vient presque entièrement de cette différence, car ils sont souvent comparés comme s’il s’agissait de trois produits placés sur la même étagère.

Ce qu’est une VM

Un hyperviseur est la couche qui simule le matériel. Il fournit à chaque guest un processeur virtuel, une zone de mémoire, un disque virtuel et une carte réseau virtuelle. Il empêche ensuite les guests de se voir entre eux. KVM, Xen, Hyper-V et VMware ESXi sont les hyperviseurs courants sur les serveurs. Les hyperviseurs modernes utilisent les extensions de virtualisation des processeurs (Intel VT-x, AMD-V). Les instructions du guest s’exécutent donc sur le processeur réel à une vitesse proche de la vitesse native, au lieu d’être interprétées.

Pour un sysadmin, le point important est le kernel. Une VM démarre son propre kernel. Vous choisissez donc la distribution, vous chargez les modules du kernel et vous définissez les valeurs sysctl qui ne s’appliquent qu’à votre VM. C’est différent d’un container (LXC, Docker), qui partage le kernel de l’hôte et dispose uniquement de sa propre vue des processus et des fichiers.

Vous pouvez obtenir cette information sur n’importe quelle machine Linux avec une seule commande.

systemd-detect-virt

kvm signifie que vous êtes dans une machine virtuelle sur un hyperviseur KVM. lxc ou openvz signifie que vous êtes dans un container qui utilise le kernel de quelqu’un d’autre. none signifie que le serveur physique vous appartient. Si la commande est absente, lscpu | grep -i hypervisor affiche la même information à partir des flags du processeur.

Ce qu’est un VPS

Un VPS est une offre commerciale construite autour d’une VM. La technologie sous-jacente est la virtualisation. Le terme « VPS » désigne les éléments qui rendent cette offre commercialisable : une image d’OS réinstallable, une adresse IP, un quota de bande passante, un panneau de contrôle, un prix mensuel et un interlocuteur à contacter lorsque l’hôte tombe en panne. Le terme « privé » sert à distinguer cette offre de l’hébergement mutualisé, où des centaines de sites partagent un même système d’exploitation et une même configuration PHP.

Comme VPS est un nom de produit et non un terme technique, il ne désigne pas toujours une VM complète. Certaines offres d’entrée de gamme proposent des conteneurs sous le même nom. La différence apparaît dès que vous avez besoin du kernel. Avec une offre basée sur des conteneurs, sudo modprobe wireguard échoue avec RTNETLINK answers: Operation not supported ou modprobe: FATAL: Module wireguard not found, car le kernel appartient à l’hôte et vous n’êtes pas autorisé à le modifier. Avec une offre KVM, le module se charge et le tunnel s’établit. Si vous prévoyez d’exécuter Docker, un VPN, des kernels personnalisés ou vos propres machines virtuelles dans le serveur, vérifiez le type de virtualisation avant l’achat. L’exécution de machines virtuelles dans un VPS nécessite KVM avec la virtualisation imbriquée activée sur l’hôte. Cela réduit encore le nombre d’offres compatibles.

Ce qu'est un VPC

Un VPC est un réseau défini par logiciel au sein d'un fournisseur cloud. Vous lui attribuez une plage d'adresses en notation CIDR, telle que 10.0.0.0/16, puis vous y créez des sous-réseaux, vous lui associez des tables de routage et vous placez des règles de pare-feu (security groups) devant les ressources qu'il contient. Il n'a ni processeur, ni mémoire ni disque. Il n'y a rien auquel se connecter. La suppression de tous les serveurs d'un VPC laisse le VPC en place, vide et généralement gratuit.

Un VPC vous fournit un adressage privé. Deux serveurs du même VPC communiquent avec des adresses telles que 10.0.1.15 sur le réseau interne du fournisseur. Ce trafic ne passe donc jamais par Internet public et n'est pas facturé comme trafic sortant vers Internet. Une base de données peut alors écouter uniquement sur son adresse privée, et aucun port n'est exposé au monde extérieur.

ip -4 addr show

Une adresse située dans 10.0.0.0/8, 172.16.0.0/12 ou 192.168.0.0/16 est privée. Une adresse publique sur le même serveur signifie que celui-ci est directement accessible depuis Internet, quel que soit l'objet réseau auquel il appartient.

Un VPC rend-il mon serveur privé ?

Non, et c’est la confusion la plus coûteuse entre ces trois termes. Un VPC contrôle le routage et l’adressage. Il ne détermine pas si Internet peut atteindre une machine. Si une instance possède une adresse IP publique et que les règles de sécurité autorisent le port 22 depuis 0.0.0.0/0, elle est exposée exactement comme n’importe quel autre serveur, avec ou sans VPC. L’isolation fournie par un VPC consiste à ne donner aucune adresse publique à une ressource, ainsi qu’à définir quelles subnets peuvent communiquer entre elles.

Ces trois termes désignent également des types d’isolation différents. Une VM isole les ressources de calcul : l’hyperviseur sépare le temps processeur et la mémoire, afin qu’un autre guest ne puisse pas lire votre RAM. Cette isolation est moins forte pour le disque et le réseau, où un voisin très sollicité sur le même hôte peut tout de même ralentir vos performances. Un VPS basé sur des containers partage un même kernel ; un bug au niveau du kernel constitue donc un risque partagé. Un VPC n’isole pas du tout les ressources de calcul. Il organise uniquement le réseau.

Le modèle de tarification

Un VPS est généralement vendu à un prix mensuel fixe pour une machine donnée. Vous connaissez le montant de la facture avant le début du mois, et le disque ainsi que le quota de transfert sont inclus. Cette prévisibilité est la principale raison pour laquelle on choisit un VPS plutôt qu’une instance cloud pour une petite charge de travail.

Une VM cloud est facturée à l’usage. L’instance est facturée à l’heure ou à la seconde, tandis que le disque, les snapshots, le load balancer et le trafic sortant sont facturés séparément. Le VPC lui-même est généralement gratuit, mais les composants managés qui lui sont associés ne le sont pas : une passerelle NAT qui permet aux instances privées d’accéder à Internet est facturée à l’heure et au gigaoctet, et le trafic entre les zones de disponibilité est également facturé. En juillet 2026, les principaux clouds placent encore automatiquement chaque nouvelle instance dans un VPC par défaut. Vous en utilisez donc un, que vous l’ayez demandé ou non.

Lequel vous faut-il réellement

  • Un seul serveur pour un site web, une application, un game server ou un VPN : un VPS. Les dix premières minutes sur un nouveau VPS comptent davantage que le nom de l’offre.
  • Plusieurs serveurs qui doivent communiquer entre eux via des adresses privées : un VPC, ou la fonctionnalité de réseau privé proposée par votre fournisseur de VPS sous un autre nom.
  • Une charge de travail qui doit rester disponible même si tout un datacentre devient indisponible : un cloud avec plusieurs zones, ce qui implique des VM à l’intérieur d’un VPC.
  • Un contrôle total du kernel, ou votre propre hyperviseur par-dessus : un VPS basé sur KVM ou un serveur dédié. Vérifiez aussi le type de disque associé à l’offre pendant la comparaison.

La plupart des projets avec un seul serveur n’ont jamais besoin d’un VPC. La fonctionnalité de réseau privé incluse avec un VPS couvre le même besoin pour quelques machines.

FAQ

Un VPS est-il la même chose qu’une VM ?

Un VPS est une VM que quelqu’un vous vend. Chaque VPS basé sur KVM, Xen ou VMware est une machine virtuelle, mais toute machine virtuelle n’est pas un VPS, car la VM exécutée sur votre ordinateur portable avec VirtualBox n’est le produit de personne. Certains forfaits bon marché étiquetés VPS sont des conteneurs et non des VM complètes. Vérifiez donc avec systemd-detect-virt avant de dépendre de l’accès au kernel.

Puis-je placer un VPS dans un VPC ?

En général, non, car un VPC est une construction propre à un fournisseur cloud et ne contient que les ressources créées dans ce même compte. Un VPS fourni par un prestataire indépendant se trouve sur le réseau de ce prestataire. Si vous avez besoin de liaisons privées entre les deux, vous devez créer un tunnel VPN entre eux. Le VPS peut ensuite accéder aux sous-réseaux privés par ce tunnel.

Pourquoi ma facture cloud est-elle plus élevée que celle d’un VPS équivalent ?

Le prix de l’instance n’en constitue qu’une partie. Le stockage, les snapshots, le trafic sortant, les load balancers et les passerelles NAT sont facturés séparément dans un cloud avec facturation à l’usage. Une passerelle NAT seule peut coûter plus cher par mois qu’un petit VPS. Le prix fixe d’un VPS inclut le disque et un quota de transfert dans un même montant. C’est pourquoi la même charge de travail paraît souvent moins chère sur un VPS.

Comment vérifier si mon serveur dispose d’un véritable accès au kernel ?

Exécutez systemd-detect-virt et lisez la réponse. kvm, xen ou vmware signifient que vous disposez de votre propre kernel et que modprobe fonctionne. lxc, lxc-libvirt ou openvz signifient que vous partagez le kernel de l’hôte. Les commandes qui chargent des modules ou écrivent dans /proc/sys échoueront alors avec Operation not supported. Une seconde confirmation consiste à utiliser uname -r. Sur une offre basée sur des conteneurs, cette commande indique souvent une version du kernel que votre distribution n’a jamais publiée.

#vps#vm#vpc#cloud#basics