VPS, VM oder VPC: Was ist der Unterschied?
VM ist die Technik, VPS das gemietete Produkt und VPC das private Cloud-Netzwerk. Erfahren Sie, was die Begriffe bedeuten und was Sie tatsächlich brauchen.
VPS, VM und VPC in einem Absatz
Eine VM (virtuelle Maschine) ist ein Computer aus Software: Ein Hypervisor teilt einen physischen Server in mehrere unabhängige Maschinen auf, von denen jede ihren eigenen Kernel ausführt. Ein VPS (virtueller privater Server) ist eine dieser virtuellen Maschinen, die Ihnen als Produkt vermietet wird, mit einem Betriebssystem, root-Zugriff und einem monatlichen Preis. Eine VPC (virtuelle private Cloud) ist überhaupt kein Server. Sie ist ein privates Netzwerk, das Sie innerhalb eines Cloud-Kontos definieren und in dem Sie Ressourcen platzieren. VM ist die Technologie. VPS ist das Produkt. VPC ist das Netzwerk um das Produkt.
Zwei dieser Begriffe bezeichnen eine Maschine. Der dritte bezeichnet ein Netzwerk. Fast die gesamte Verwirrung entsteht durch diesen Unterschied, weil die Begriffe so verglichen werden, als wären sie drei Produkte in einem Regal.
Was eine VM ist
Ein Hypervisor ist die Schicht, die Hardware simuliert. Er stellt jedem Gast eine virtuelle CPU, Arbeitsspeicher, eine virtuelle Festplatte und eine virtuelle Netzwerkkarte bereit. Außerdem verhindert er, dass die Gäste einander sehen. KVM, Xen, Hyper-V und VMware ESXi sind die gängigen Hypervisoren auf Servern. Moderne Hypervisoren verwenden CPU-Virtualisierungserweiterungen (Intel VT-x, AMD-V). Dadurch werden Anweisungen des Gasts mit nahezu nativer Geschwindigkeit auf der echten CPU ausgeführt, statt interpretiert zu werden.
Für einen Systemadministrator ist der Kernel entscheidend. Eine VM startet ihren eigenen Kernel. Sie wählen daher die Distribution, laden Kernelmodule und setzen sysctl-Werte, die nur für diese VM gelten. Das unterscheidet eine VM von einem Container (LXC, Docker). Ein Container verwendet den Kernel des Hosts und erhält nur eine eigene Sicht auf Prozesse und Dateien.
Mit einem Befehl können Sie die Antwort auf jedem Linux-System anzeigen.
systemd-detect-virtkvm bedeutet, dass Sie eine virtuelle Maschine auf einem KVM-Hypervisor verwenden. lxc oder openvz bedeutet, dass Sie sich in einem Container mit dem Kernel eines anderen Systems befinden. none bedeutet, dass Ihnen die Hardware gehört. Wenn der Befehl fehlt, zeigt lscpu | grep -i hypervisor anhand der CPU-Flags dieselbe Information an.
Was ein VPS ist
Ein VPS ist eine kommerzielle Variante einer VM. Die zugrunde liegende Technologie ist Virtualisierung. Der Begriff „VPS“ umfasst zusätzlich die Funktionen, die das Angebot vermarktbar machen: ein OS-Image, das Sie neu installieren können, eine IP-Adresse, ein Bandbreitenkontingent, ein Control Panel, einen monatlichen Preis und einen Ansprechpartner, den Sie per E-Mail kontaktieren können, wenn der Host ausfällt. „Private“ grenzt das Angebot vom Shared Hosting ab. Dort verwenden Hunderte Websites dasselbe Betriebssystem und dieselbe PHP-Konfiguration.
Da VPS ein Produktname und kein technischer Begriff ist, bedeutet er nicht immer eine vollständige VM. Einige günstige Tarife bieten unter derselben Bezeichnung Container an. Der Unterschied zeigt sich, sobald Sie den Kernel benötigen. Bei einem containerbasierten Tarif schlägt sudo modprobe wireguard mit RTNETLINK answers: Operation not supported oder modprobe: FATAL: Module wireguard not found fehl, weil der Kernel dem Host gehört und Sie ihn nicht ändern dürfen. Bei einem KVM-Tarif wird das Modul geladen und der Tunnel wird aufgebaut. Wenn Sie Docker, ein VPN, benutzerdefinierte Kernel oder eigene virtuelle Maschinen innerhalb des Servers ausführen möchten, prüfen Sie vor dem Kauf den Virtualisierungstyp. Das Ausführen von virtuellen Maschinen innerhalb eines VPS erfordert KVM mit aktivierter verschachtelter Virtualisierung auf dem Host. Dadurch kommt nur eine kleinere Auswahl an Tarifen infrage.
Was ein VPC ist
Ein VPC ist ein softwaredefiniertes Netzwerk innerhalb eines Cloud-Anbieters. Sie weisen ihm einen Adressbereich in CIDR-Notation zu, zum Beispiel 10.0.0.0/16. Daraus teilen Sie Subnetze auf, verknüpfen Routingtabellen und setzen Firewallregeln (Security Groups) vor die darin enthaltenen Ressourcen. Ein VPC hat keine CPU, keinen Arbeitsspeicher und keinen Datenträger. Es gibt nichts, worauf Sie sich anmelden können. Wenn Sie alle Server in einem VPC löschen, bleibt das VPC leer und normalerweise kostenlos bestehen.
Ein VPC stellt private Adressen bereit. Zwei Server im selben VPC kommunizieren über Adressen wie 10.0.1.15 über das interne Netzwerk des Anbieters. Dieser Netzwerkverkehr erreicht nie das öffentliche Internet und wird nicht als Internet-Egress berechnet. Eine Datenbank kann dann ausschließlich auf ihrer privaten Adresse auf Verbindungen warten. Damit ist kein Port nach außen exponiert.
ip -4 addr showEine Adresse innerhalb von 10.0.0.0/8, 172.16.0.0/12 oder 192.168.0.0/16 ist privat. Eine öffentliche Adresse auf demselben Rechner bedeutet, dass der Server direkt aus dem Internet erreichbar ist, unabhängig davon, in welchem Netzwerkobjekt er sich befindet.
Macht eine VPC meinen Server privat?
Nein. Das ist das teuerste Missverständnis dieser drei Begriffe. Eine VPC steuert Routing und Adressierung. Sie entscheidet nicht, ob das Internet eine Maschine erreichen kann. Wenn eine Instanz eine öffentliche IP-Adresse hat und die Sicherheitsregeln Port 22 von 0.0.0.0/0 erlauben, ist sie genauso exponiert wie jeder andere Server, unabhängig davon, ob er sich in einer VPC befindet. Die Isolation durch eine VPC besteht darin, einer Ressource überhaupt keine öffentliche Adresse zu geben. Zusätzlich können Regeln festlegen, welche Subnetze miteinander kommunizieren dürfen.
Die drei Begriffe stehen außerdem für unterschiedliche Arten der Isolation. Eine VM isoliert die Rechenressourcen. Der Hypervisor trennt CPU-Zeit und Arbeitsspeicher. Dadurch kann ein anderer Gast Ihren RAM nicht lesen. Bei Datenträgern und Netzwerk ist diese Isolation schwächer. Ein ausgelasteter Nachbar auf demselben Host kann Ihre Leistung weiterhin verlangsamen. Ein containerbasiertes VPS verwendet denselben Kernel. Ein Fehler auf Kernel-Ebene stellt daher ein gemeinsames Risiko dar. Eine VPC isoliert die Rechenressourcen überhaupt nicht. Sie steuert nur das Netzwerk.
Das Preismodell verstehen
Ein VPS wird normalerweise zu einem festen monatlichen Preis für eine feste Maschine angeboten. Sie kennen die Rechnung, bevor der Monat beginnt. Der Speicherplatz und das enthaltene Transfervolumen sind in diesem Preis enthalten. Diese Planbarkeit ist der Hauptgrund, warum sich viele bei kleinen Workloads für einen VPS statt für eine Cloud-Instanz entscheiden.
Eine Cloud-VM wird nach Nutzung abgerechnet. Für die Instanz fallen Kosten pro Stunde oder pro Sekunde an. Der Speicherplatz, die Snapshots, der Load Balancer und der ausgehende Netzwerkverkehr werden separat abgerechnet. Die VPC selbst ist normalerweise kostenlos. Die daran angebundenen verwalteten Komponenten sind es jedoch nicht. Ein NAT gateway, über das private Instanzen das Internet erreichen, wird pro Stunde und pro Gigabyte abgerechnet. Auch der Datenverkehr zwischen Availability Zones wird berechnet. Stand Juli 2026 ordnen die großen Clouds weiterhin jede neue Instanz automatisch einer default VPC zu. Sie verwenden daher eine VPC, unabhängig davon, ob Sie dies angefordert haben.
Welche Lösung benötigen Sie tatsächlich?
- Einen Server für eine Website, eine App, einen Gameserver oder ein VPN: einen VPS. Die ersten zehn Minuten auf einem neuen VPS sind wichtiger als die Bezeichnung des Tarifs.
- Mehrere Server, die sich über private Adressen erreichen müssen: eine VPC oder die Funktion für private Netzwerke, die Ihr VPS-Anbieter unter einer anderen Bezeichnung anbietet.
- Eine Workload, die den Ausfall eines ganzen Rechenzentrums überstehen muss: eine Cloud mit mehreren Zonen. Dafür benötigen Sie VMs innerhalb einer VPC.
- Vollständige Kontrolle über den Kernel oder einen eigenen Hypervisor darüber: einen KVM-basierten VPS oder einen dedizierten Server. Prüfen Sie beim Vergleich auch den Laufwerkstyp hinter dem Tarif.
Die meisten Projekte mit einem einzelnen Server benötigen keine VPC. Die in einem VPS enthaltene Funktion für private Netzwerke erfüllt dieselbe Aufgabe für eine kleine Anzahl von Maschinen.
FAQ
Ist ein VPS dasselbe wie eine VM?
Ein VPS ist eine VM, die Ihnen jemand verkauft. Jeder VPS auf Basis von KVM, Xen oder VMware ist eine virtuelle Maschine. Aber nicht jede virtuelle Maschine ist ein VPS, weil die unter VirtualBox auf Ihrem Laptop ausgeführte VM kein Produkt eines Anbieters ist. Einige günstige als VPS bezeichnete Tarife verwenden Container statt vollständiger VMs. Prüfen Sie dies daher mit systemd-detect-virt, bevor Sie auf Kernelzugriff angewiesen sind.
Kann ich einen VPS in einer VPC betreiben?
In der Regel nicht, weil eine VPC eine Ressource eines einzelnen Cloudanbieters ist und nur Ressourcen desselben Kontos enthält. Ein VPS eines unabhängigen Anbieters befindet sich im Netzwerk dieses Anbieters. Wenn Sie private Verbindungen zwischen beiden benötigen, richten Sie stattdessen einen VPN-Tunnel zwischen ihnen ein. Der VPS erreicht die privaten Subnetze dann über diesen Tunnel.
Warum ist meine Cloudrechnung höher als die Kosten eines vergleichbaren VPS?
Der Instanzpreis ist nur ein Teil der Kosten. Speicher, Snapshots, ausgehender Netzwerkverkehr, Load Balancer und NAT-Gateways werden in einer nutzungsabhängig abgerechneten Cloud separat berechnet. Ein NAT-Gateway allein kann pro Monat mehr kosten als ein kleiner VPS. Ein VPS mit Festpreis umfasst den Speicher und ein Übertragungskontingent in einem Betrag. Deshalb erscheint dieselbe Arbeitslast dort oft günstiger.
Wie prüfe ich, ob mein Server echten Kernelzugriff hat?
Führen Sie systemd-detect-virt aus und lesen Sie die Antwort. kvm, xen oder vmware bedeuten, dass Sie einen eigenen Kernel haben und modprobe funktioniert. lxc, lxc-libvirt oder openvz bedeuten, dass Sie den Kernel des Hosts gemeinsam verwenden. Befehle, die Module laden oder in /proc/sys schreiben, schlagen dann mit Operation not supported fehl. Eine zweite Bestätigung liefert uname -r. Bei einem Containertarif wird dort häufig eine Kernelversion gemeldet, die Ihre Distribution nie veröffentlicht hat.