vCPU: Was ist eine virtuelle CPU?
vCPUs sind virtualisierte Versionen physischer CPUs und elementarer Bestandteil von Cloud-Computing. Zu den Vorteilen dieser virtualisierten Recheneinheiten zählt u. a. ihre gute Skalierbarkeit, weshalb sie beispielsweise beim Cloud-Hosting eine wichtige Rolle spielen.
Was ist eine vCPU?
Als vCPU (Virtual Central Processing Unit) bezeichnet man die virtualisierte Variante einer physischen CPU. Anders gesagt: vCPUs sind die zentralen Steuereinheiten in virtuellen Maschinen (VMs) und Cloud-Umgebungen. Heutige Mehrkernprozessoren (Multi Core) können nicht nur als einzelne vCPU, sondern als Basis für mehrere virtuelle CPUs genutzt werden. Die Zahl an potenziellen vCPUs ist dabei nicht an die Anzahl der Kerne und Threads (siehe Multithreading) geknüpft, sondern an das Ergebnis folgender Rechnung:
(Threads x Kerne) x physische CPU = Zahl an vCPUs
Technisch gesehen sind vCPUs Software-Implementierungen der physischen Vorlagen, die von dem jeweiligen Betriebssystem als reale Prozessorkerne wahrgenommen werden. Jede virtuelle Maschine benötigt mindestens eine vCPU. Je nach Anwendungsszenario können jedoch auch mehrere virtuelle Virtual Central Processing Units zugewiesen werden, wenn es die darauf ausgeführten Workloads erfordern.
Sie wollen tiefer in das Thema eintauchen? Unsere Artikel über Virtualisierung und Servervirtualisierung geben Ihnen zusätzliche Informationen über die Eigenschaften und Möglichkeiten virtueller Computerressourcen.
Was sind die Vorteile von vCPUs?
Virtuelle CPUs besitzen im Vergleich zu physischen CPUs einige entscheidende Vorteile. Zu den wichtigsten Vorzügen zählen folgende:
- erhöhte Skalierbarkeit
- verbesserte Effizienz
- höhere Flexibilität
- geringere Kosten
Die große Stärke von Virtualisierung ist die hervorragende Skalierbarkeit der Hardware-Ressourcen, die mit ihr einhergeht: Die vCPUs, die in einer virtuellen Maschine zum Einsatz kommen, können beispielsweise auch von mehreren verschiedenen physischen Hosts stammen. So lässt sich die Prozessorleistung problemlos nach oben skalieren, wenn der Workload steigt.
Werden vCPUs nicht mehr benötigt, können diese ganz einfach für andere VMs verwendet werden. Gerade für Anbieter von Hosting-Umgebungen ist diese Tatsache wertvoll, da sich die zugrundeliegende Infrastruktur so besonders effizient auf Kunden und Kundinnen aufteilen lässt. Als Nutzer bzw. Nutzerin profitieren Sie wiederum davon, dass Sie den Bedarf an vCPUs flexibel anpassen können: Da kein festes Hardware-Setup existiert, kann bei Lösungen wie einem Cloud-Server oder VPS leichter auf mehr oder weniger Prozessor-Power umgestellt werden.
Aus der Effizienz und Skalierbarkeit ergibt sich der vCPU-Vorteil in puncto Kosten. Auf Basis eines einzigen Hostsystems können gleich mehrere Betriebssysteme inklusive der jeweiligen Anwendungssoftware ausgeführt werden. So wird die zur Verfügung stehende Rechenpower optimal genutzt und in vielen Fällen zusätzliche Hardware eingespart.
Mehr über die Unterschiede zwischen virtualisierten und physischen Central Processing Units erfahren Sie in unserem Artikel „CPU vs. vCPU“.
Wo kommen vCPUs zum Einsatz?
vCPUs sind für die Funktionsfähigkeit von Cloud-Computing unerlässlich. Überall dort, wo Hard- und Software in der Cloud zur Verfügung gestellt wird, kommen die virtuellen Recheneinheiten daher zum Einsatz, zum Beispiel im Rahmen eines Cloud-Speichers, beim Server-Hosting oder bei der Nutzung eines Cloud-Computers wie Windows 365. Wie viele vCPUs dabei konkret benötigt werden, hängt vom jeweiligen Workload ab: In vielen Szenarien sind ein bis zwei vCPUs ausreichend. Bei anspruchsvolleren Workloads wie einem Datenbank-, E-Mail- oder Gaming-Server sind die Anforderungen höher, wie es auch bei physikalischen Recheneinheiten der Fall wäre.
Eine weitere Virtualisierungstechnologie, die auf vCPUs angewiesen ist, sind Container-Plattformen wie Docker. Anders als bei virtuellen Maschinen werden hier keine voll funktionsfähigen Systeme virtualisiert, sondern lediglich einzelne Anwendungen.
Wie berechnet man den Bedarf an vCPUs?
Um die Stärken optimal zu nutzen, besteht die große Herausforderung bei einer virtualisierten Umgebung darin, genügend vCPUs zur Verfügung zu stellen, ohne dabei Rechenpower zu verschwenden. Sollten Sie vor der Aufgabe stehen, die Anzahl an benötigten vCPUs für Ihren Anwendungszweck zu definieren, können Sie sich grundsätzlich an den Anforderungen für die Installation auf physischer Hardware orientieren: Setzt die Software (vergessen Sie dabei nicht das Betriebssystem) also beispielsweise acht physische Kerne voraus, sollten Sie der virtuellen Umgebung auch acht vCPUs zuweisen.
Sollten sich die Anforderungen später erhöhen, weil Sie weitere Anwendungen parallel ausführen oder das Projekt komplexer wird, stocken Sie die Zahl an vCPUs einfach auf. Gleiches gilt für den entgegengesetzten Fall, also wenn die Anforderungen sinken und Sie dementsprechend weniger Rechenpower benötigen.
Für rechenintensive Workloads ist es dabei im Übrigen entscheidend, dass vCPUs unterschiedlichen physischen CPUs zugewiesen werden. Haben Sie also beispielsweise eine Hardware mit Dual-Core-CPU als Ausgangsbasis, sollten Sie die vier physischen Kerne aus Performance-Gründen folgendermaßen aufteilen:
- Sie weisen der ersten virtuellen Maschine den physischen Kern 0 und den physischen Kern 2 zu. Dabei handelt es sich jeweils um den ersten Kern der verbauten, physischen Dual-Core-CPU. Die dadurch zur Verfügung gestellten Ressourcen sollten ausreichen, um den Workload ausführen zu können.
- Den physischen Kern 1 sowie den physischen Kern 3, also jeweils den zweiten Kern der physisch verbauten Dual-Core-CPU, können Sie derweil für eine zweite virtuelle Maschine mit Workloads nutzen, die keine hohen Ansprüche stellen – z. B. mit einem DNS-Server.
Sie möchten Ihr Know-how in Sachen Prozessoren und CPU vertiefen? Werfen Sie einen Blick in folgende Artikel: