VMWARE-VMS → STACKIT COMPUTE ENGINE
Die Migration von VMware-VMs zu STACKIT planen
StackToIT macht aus dem RVTools-Export einen Migrationsplan, den Sie terminieren können: Jede VM behält CPU, Arbeitsspeicher und Disk-Größen als Grundlage ihres STACKIT-Servers, Netzwerke kommen vor den Servern, die sie nutzen, und die Prüfarbeit ist in Arbeitspakete mit je einer verantwortlichen Rolle gebündelt.
Eine Datenbank-VM, als STACKIT-Server geplant
Ein kleiner RVTools-Export, für diese Seite geschrieben und am 4. November 2026 von StackToIT bewertet. Links die Eingabe, rechts die Ressourcenblöcke des STACKIT-Terraform, das die Engine geschrieben hat; die Prüfkommentare über jedem Block in der Datei sind hier ausgelassen.
VM,Disk,Capacity MiB,Raw,Disk Mode,Sharing mode,Thin,Controller,Shared Bus,VM UUID
shop-web01,Hard disk 1,61440,False,persistent,sharingNone,True,SCSI controller 0,noSharing,4202-bbbb-0001
shop-web02,Hard disk 1,61440,False,persistent,sharingNone,True,SCSI controller 0,noSharing,4202-bbbb-0002
shop-api01,Hard disk 1,61440,False,persistent,sharingNone,True,SCSI controller 0,noSharing,4202-bbbb-0003
shop-api01,Hard disk 2,102400,False,persistent,sharingNone,True,SCSI controller 0,noSharing,4202-bbbb-0003
shop-pg01,Hard disk 1,102400,False,persistent,sharingNone,False,SCSI controller 0,noSharing,4202-bbbb-0004
shop-pg01,Hard disk 2,512000,False,persistent,sharingNone,False,SCSI controller 1,noSharing,4202-bbbb-0004
tpl-ubuntu2204,Hard disk 1,30720,False,persistent,sharingNone,True,SCSI controller 0,noSharing,4202-bbbb-0005resource "stackit_network_interface" "vm_shop_pg01_nic1" {
project_id = var.project_id
network_id = stackit_network.network_PG_Shop_DB.network_id
ipv4 = "10.20.30.31"
}
resource "stackit_server" "vm_shop_pg01" {
project_id = var.project_id
name = "shop-pg01"
machine_type = var.vm_shop_pg01_machine_type
availability_zone = var.availability_zone
boot_volume = {
source_type = "image"
source_id = var.vm_shop_pg01_image_id
size = 100
}
network_interfaces = [stackit_network_interface.vm_shop_pg01_nic1.network_interface_id]
}
resource "stackit_volume" "vm_shop_pg01_disk2" {
project_id = var.project_id
name = "shop-pg01-disk2"
availability_zone = var.availability_zone
size = 500
performance_class = var.vmware_volume_performance_class
}
resource "stackit_server_volume_attach" "vm_shop_pg01_disk2" {
project_id = var.project_id
server_id = stackit_server.vm_shop_pg01.server_id
volume_id = stackit_volume.vm_shop_pg01_disk2.volume_id
}Boot-Disk wird Boot-Volume
Hard disk 1 von shop-pg01 mit 102400 MiB wird ein Boot-Volume mit 100 GiB, gestartet aus dem Image, das aus dieser Disk umgewandelt wird.
Zweite Disk wird ein Volume
Hard disk 2 mit 512000 MiB wird ein STACKIT-Volume mit 500 GiB, das am Server hängt. Die Datei vermerkt, dass seine Daten nach dem Anlegen des Volumes kopiert werden.
Adresse bleibt
Die Schnittstelle behält 10.20.30.31 im Netzwerk, das PG-Shop-DB ersetzt; Clients der Datenbank finden sie also unter derselben Adresse.
Performance-Klasse einmal gewählt
Die Performance-Klasse der Daten-Volumes ist eine Variable für die ganze Umgebung; Speicher wird also an einer Stelle entschieden.
Die Maschinengröße, aus der Quelle benannt
Aus demselben Lauf. Links das Blatt vInfo des Exports, rechts die beiden Werte, die der Server von shop-pg01 liest, so wie variables.tf des Laufs sie deklariert.
VM,Powerstate,Template,CPUs,Memory,NICs,Disks,Provisioned MiB,In use MiB,Primary IP Address,Datacenter,Cluster,Host,Folder,Annotation,OS according to the configuration file,OS according to the VMware Tools,VM UUID
shop-web01,poweredOn,False,2,8192,1,1,61440,22000,10.20.10.11,DC-Munich,CL-Shop,esx11,shop,Shop frontend,Ubuntu Linux (64-bit),Ubuntu 22.04.4 LTS,4202-bbbb-0001
shop-web02,poweredOn,False,2,8192,1,1,61440,21500,10.20.10.12,DC-Munich,CL-Shop,esx12,shop,Shop frontend,Ubuntu Linux (64-bit),Ubuntu 22.04.4 LTS,4202-bbbb-0002
shop-api01,poweredOn,False,4,16384,1,2,163840,70000,10.20.20.21,DC-Munich,CL-Shop,esx11,shop,Order API,Red Hat Enterprise Linux 9 (64-bit),Red Hat Enterprise Linux 9.4,4202-bbbb-0003
shop-pg01,poweredOn,False,8,32768,1,2,614400,380000,10.20.30.31,DC-Munich,CL-Shop,esx13,db,PostgreSQL 15 primary,Debian GNU/Linux 12 (64-bit),Debian GNU/Linux 12,4202-bbbb-0004
tpl-ubuntu2204,poweredOff,True,2,4096,1,1,30720,6000,,DC-Munich,CL-Shop,esx11,templates,Base image,Ubuntu Linux (64-bit),,4202-bbbb-0005variable "vm_shop_pg01_image_id" {
type = string
description = "STACKIT image converted from the boot disk of VM shop-pg01 (qcow2 or raw)."
}
variable "vm_shop_pg01_machine_type" {
type = string
description = "STACKIT machine type replacing VM shop-pg01 (source 8 vCPU / 32 GiB). See https://docs.stackit.cloud/products/compute-engine/server/basics/machine-types/"
}Größe aus vInfo
shop-pg01 hat 8 CPUs und 32768 MiB Arbeitsspeicher. Die Variable des Maschinentyps nennt die Quellgröße – 8 vCPU und 32 GiB – und verweist auf die STACKIT-Maschinentypen, aus denen Sie wählen.
Image aus der Boot-Disk
Die Image-Variable steht für die in qcow2 oder raw umgewandelte Boot-Disk. Der Server startet also aus der Maschine, die er ersetzt.
Der Plan in seiner Reihenfolge
| Phase | Was der Plan tut | Schritte |
|---|---|---|
| Netzwerk und Sicherheit | Legt die 3 STACKIT-Netzwerke an; Network Architect und Platform Architect klären Adressierung und Namen jeder Portgruppe | 9 |
| Datendienste | Legt die 2 Daten-Volumes für die zweiten Disks von shop-api01 und shop-pg01 an | 2 |
| Plattform | Richtet die Vorlage tpl-ubuntu2204 von Hand als STACKIT-Image ein | 1 |
| Workloads | Legt 4 Netzwerkschnittstellen, 4 Server und 2 Volume-Anbindungen an; Network, Platform und Security Architect prüfen die Einstellungen jeder VM | 22 |
Insgesamt 34 Schritte: 15 OpenTofu-Schritte und 19 manuelle Schritte, so wie execution-plan.json und migration/roadmap.md des Laufs sie aufführen. Jeder Schritt nennt die Schritte, von denen er abhängt: Ein Server wartet auf seine Schnittstelle, eine Schnittstelle auf ihr Netzwerk, eine Anbindung auf Server und Volume.
Vom Export zum Cutover-Plan
Exportieren und bewerten
RVTools ausführen, danach stacktoit assess ./rvtools.xlsx ./vmware-migration. Das Paket enthält Klassen, Terraform, Ausführungsplan und Arbeitspakete.
Ergänzen, was dem Export fehlt
Der Entwurf fragt nach Maschinentypen, Disk-Größen und Serveradressen. Beantworten Sie sie in review/ und starten Sie den Lauf erneut: Der nächste Lauf liest Ihre Antworten.
Images vorbereiten
Jede Disk exportieren, in qcow2 oder raw umwandeln und als Image hochladen. VMware Tools sowie die Treiber vmxnet3 und PVSCSI durch die Treiber ersetzen, die das STACKIT-Image braucht.
Cutover abstimmen
Die Wellen werden aus Abhängigkeiten berechnet und sind ein Ausgangspunkt für den Zeitplan. Anwendungsabhängigkeiten und den Zeitpunkt des Cutovers liefern die Verantwortlichen der Workloads.
Bewiesen an einer echten AWS-Umgebung
Die AWS Retail Store Sample App, ein öffentliches Terraform-Projekt von AWS, von StackToIT bewertet und vollständig veröffentlicht, genau so, wie der Lauf es geschrieben hat.
Fallstudie ansehen (Englisch)- 282
- Terraform-Ressourcendefinitionen analysiert
- 44
- Migrationseinheiten identifiziert
- 38
- Zieleinheiten erzeugt, von 52 betrachteten
- 331
- Planschritte erstellt
Fragen aus der Migrationsleitung
Wie dimensioniert StackToIT eine VMware-VM für STACKIT?
Es liest CPUs und Arbeitsspeicher der VM aus vInfo und nennt sie am Maschinentyp ihres STACKIT-Servers, für shop-pg01 8 vCPU und 32 GiB. Disk-Kapazitäten aus vDisk werden Boot-Volume und weitere Volumes in GiB.
In welcher Reihenfolge ziehen die VMs um?
Erst die Netzwerke, dann die Maschinen, die sie nutzen. Der Lauf legt die drei Portgruppen in die erste Welle und VMs und Vorlage in die zweite; Einheiten derselben Welle können parallel umziehen.
Welche Disk-Formate kann STACKIT importieren?
qcow2 und raw. Jede Disk exportieren, in eines davon umwandeln, als Image hochladen und als Server starten; weitere Disks werden Volumes.
Quellen
Ihr nächster Schritt: STACKIT.
Erzählen Sie uns von Ihrer Umgebung. Wir zeigen Ihnen, was StackToIT dafür liefert: Zielarchitektur, Terraform-Artefakte und einen strukturierten Migrationsplan.