VMWARE → STACKIT · ARCHITECTUUR
Applicatieafhankelijkheden in kaart brengen vóór een VMware-migratie
Een RVTools-export vertelt u op welke port group een VM staat. Hij zegt niet dat facturatie de CRM-database leest, dat twee applicaties een message broker delen of dat niemand weet wie de FTP-server gebruikt. StackToIT bouwt golven op uit het eerste soort feiten en haalt het tweede soort van u, in de vorm van een expliciet applicatiebestand. Deze pagina toont de scheidslijn in een demo-omgeving van zeven VM's en vergelijkt vier manieren om het gat te dichten.
Wat de export toont en waar hij alleen op zinspeelt
Een demo-export, op 4 november 2026 beoordeeld door StackToIT. Links: vier vInfo-rijen; de laatste kolommen bevatten de aantekening die een beheerder intypte. Rechts: engineering/review-edges.csv, de complete lijst met afhankelijkheden die de run afleidde.
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
crm-web01,poweredOn,False,4,8192,1,1,61440,24000,10.60.10.11,DC-Koeln,CL-Core,esx41,crm,CRM web tier - calls crm-app01 on 8443,Ubuntu Linux (64-bit),Ubuntu 22.04.4 LTS,4209-eeee-0001
crm-app01,poweredOn,False,8,16384,2,2,163840,70000,10.60.20.21,DC-Koeln,CL-Core,esx41,crm,CRM application server - reads crm-db01 and mq01,Red Hat Enterprise Linux 9 (64-bit),Red Hat Enterprise Linux 9.4,4209-eeee-0002
crm-db01,poweredOn,False,8,32768,1,2,614400,380000,10.60.30.31,DC-Koeln,CL-Core,esx42,crm,PostgreSQL 15 - also used by billing-app01,Debian GNU/Linux 12 (64-bit),Debian GNU/Linux 12,4209-eeee-0003
billing-app01,poweredOn,False,4,16384,1,1,102400,40000,10.60.20.41,DC-Koeln,CL-Core,esx42,billing,Billing batch - reads crm-db01 and writes files to fs01,Red Hat Enterprise Linux 9 (64-bit),Red Hat Enterprise Linux 9.4,4209-eeee-0004from_unit,to_unit,architect_verdict (correct|wrong|missing),comment
vm.billing-app01,network.PG-App,,
vm.crm-app01,network.PG-App,,
vm.crm-app01,network.PG-Data,,
vm.crm-db01,network.PG-Data,,
vm.crm-web01,network.PG-Web,,
vm.fs01,network.PG-Data,,
vm.legacy-ftp01,network.PG-App,,
vm.mq01,network.PG-App,,Verbindingen lopen van VM naar port group
Alle acht verbindingen eindigen bij een netwerk. crm-app01 heeft twee adapters en dus twee verbindingen, één naar PG-App en één naar PG-Data. Er is geen verbinding van billing-app01 naar crm-db01.
De aantekening wordt niet als koppeling gelezen
Uitspraken als "also used by billing-app01" staan in vrije tekst. De run noemt de aantekening van elke VM bij de eigenschappen die niet worden overgenomen en kan tekst dus niet omzetten in een verbinding.
Het bestand heeft een plek voor uw correctie
De derde kolom, architect_verdict, neemt correct, wrong of missing aan. Leg daarmee verbindingen vast die de run niet kon zien, zodat de review ze bewaart.
Vier manieren om afhankelijkheden te vinden
Geen van de vier vervangt de andere. De afweging is wat elke methode kan zien en wat die u kost.
| Methode | Wat ze kan zien | Wat ze mist of kost |
|---|---|---|
| Netwerklidmaatschap (wat StackToIT afleidt) | Welke VM's op welke port group staan, en dus welk STACKIT-netwerk moet bestaan voordat een VM wordt verplaatst | Aanroepen tussen VM's op hetzelfde of op verschillende netwerken. Goedkoop, maar als enige basis voor een golfplan onjuist. |
| Gesprekken met eigenaren en aantekeningen | Intentie: welke VM bij welke applicatie hoort en wie de eigenaar is | Alleen wat mensen zich herinneren. Snel te starten en de bron van het applicatiebestand. |
| Waargenomen verkeer uit uw eigen netwerktools | Verbindingen die niemand heeft vastgelegd, zoals een oude FTP-server die nog steeds bestanden ontvangt | Vereist een meetperiode die lang genoeg is om maandafsluiting en batchjobs te dekken. De data komt niet van RVTools of van StackToIT. |
| Configuratiebeheer of een CMDB | Vastgelegde relaties tussen diensten en hosts | Vaak verouderd voor de oudste machines, juist de machines waar u zich zorgen over maakt. |
Een werkbare volgorde: begin met aantekeningen en eigenaren, wijs VM's aan applicaties toe en controleer het resultaat daarna aan de hand van waargenomen verkeer vóór elke cutover.
Geef de run uw applicatiegrenzen
Het applicatiebestand groepeert eenheden met selectors. StackToIT leidt uit namen niet af wie eigenaar is of hoe kritiek een applicatie is. Links: het bestand dat voor deze run is gebruikt. Rechts: migration/waves.csv met ingevulde kolom application.
applications:
- id: crm
name: CRM
selectors:
- vm.crm-*
environment: production
owners:
business: sales
technical: crm-platform
business_criticality: high
availability:
rto: 4h
rpo: 15m
downtime_tolerance: 1h
- id: billing
name: Billing
selectors:
- vm.billing-*
environment: production
owners:
business: finance
technical: billing-platform
business_criticality: critical
availability:
rto: 2h
rpo: 5m
downtime_tolerance: 30mwave,wave_state,unit,type,module_call,presence,class,confidence,application,application_status,proposed_group
1,MEMBER,network.PG-App,vmware_network,,KNOWN_PRESENT,RECONFIGURE,MEDIUM,UNASSIGNED,UNASSIGNED,
1,MEMBER,network.PG-Data,vmware_network,,KNOWN_PRESENT,RECONFIGURE,MEDIUM,UNASSIGNED,UNASSIGNED,
1,MEMBER,network.PG-Web,vmware_network,,KNOWN_PRESENT,RECONFIGURE,MEDIUM,UNASSIGNED,UNASSIGNED,
2,MEMBER,vm.billing-app01,vmware_vm,,KNOWN_PRESENT,RECONFIGURE,MEDIUM,billing,CONFIRMED,
2,MEMBER,vm.crm-app01,vmware_vm,,KNOWN_PRESENT,RECONFIGURE,MEDIUM,crm,CONFIRMED,
2,MEMBER,vm.crm-db01,vmware_vm,,KNOWN_PRESENT,RECONFIGURE,MEDIUM,crm,CONFIRMED,
2,MEMBER,vm.crm-web01,vmware_vm,,KNOWN_PRESENT,RECONFIGURE,MEDIUM,crm,CONFIRMED,
2,MEMBER,vm.fs01,vmware_vm,,KNOWN_PRESENT,RECONFIGURE,MEDIUM,UNASSIGNED,UNASSIGNED,
2,MEMBER,vm.legacy-ftp01,vmware_vm,,KNOWN_PRESENT,RECONFIGURE,MEDIUM,UNASSIGNED,UNASSIGNED,
2,MEMBER,vm.mq01,vmware_vm,,KNOWN_PRESENT,RECONFIGURE,MEDIUM,UNASSIGNED,UNASSIGNED,Gekoppeld en niet gekoppeld
crm komt overeen met drie VM's, billing met één. mq01, fs01 en legacy-ftp01 blijven UNASSIGNED. Ze horen nog bij geen enkele applicatie, en dat is precies de lijst om met de eigenaren door te nemen.
Golven blijven netwerkgestuurd
In migration/waves.csv vormen de drie netwerken golf 1 en alle zeven VM's golf 2, wat het applicatiebestand ook zegt (het migratieplan noemt dezelfde volgorde als zijn golven voor netwerk en workloads, met eigen nummers). Applicatiegroepering verandert hoe het rapport wordt ingedeeld, niet de afhankelijkheidsgraaf.
Hersteldoelen worden vastgelegd zoals u ze schreef
RTO, RPO en toelaatbare downtime uit het bestand worden overgenomen zoals u ze schreef. Waarden die u weglaat, blijven NOT_PROVIDED in plaats van te worden aangenomen.
De gedeelde onderdelen en de beslissing die elk afdwingt
| VM | Wat de omgeving zegt | Beslissing voor de architect |
|---|---|---|
| crm-db01 | PostgreSQL, geannoteerd als ook gebruikt door billing-app01 | Verplaats de database samen met CRM en houd een netwerkpad voor billing open totdat billing is verplaatst, of verplaats beide in één golf. De run ziet geen van beide feiten. |
| mq01 | Message broker die crm en billing gebruiken | Wijs de broker bewust aan één applicatie toe, of houd hem als gedeelde dienst in de eerste golf van zijn afnemers. |
| fs01 | Fileserver met SMB-shares voor billing en kantoor | De clients staan niet als VM in de export. Zoek de clients voordat u de golf vastlegt. |
| legacy-ftp01 | Aantekening: niemand weet wie dit gebruikt; CentOS 7 | Observeer eerst het verkeer en faseer de server daarna uit of verplaats hem. Neem geen onbekende afhankelijkheid zonder onderzoek mee in een golf. |
In deze run geeft het gastsysteem van legacy-ftp01 een waarschuwing voor einde van ondersteuning, een reden om er vroeg naar te vragen.
Van afhankelijkhedenlijst naar doelontwerp
Schrijf het applicatiebestand
Eén vermelding per applicatie, met selectors voor de VM's, eigenaren en hersteldoelen. Niet-toegewezen eenheden in het rapport zijn uw openstaande vragen.
Ontbrekende verbindingen vastleggen
Voeg elke VM-naar-VM-relatie die u leert toe aan review-edges.csv als missing, met een opmerking. Zo blijft de kennis naast het plan staan.
Netwerkregels afleiden
Op STACKIT gelden security groups via netwerkinterfaces: inkomend verkeer is standaard geblokkeerd, behalve van leden van dezelfde groep, en uitgaand verkeer is standaard open. Het concept schrijft geen security group voor een VMware-omgeving. Elke bevestigde relatie wordt dus een regel die u zelf schrijft.
Let op gedeelde disks
Een STACKIT-datavolume is aan één VM tegelijk gekoppeld. Een VM die een disk met een andere VM deelt, vergt een ander ontwerp dan een gewone volumeverplaatsing. De kolom Sharing mode in de vDisk-sheet geeft het aan; in deze omgeving is elke disk sharingNone.
Snijd golven langs applicaties
Verplaats een applicatie als geheel, als die aan één kant kan draaien. Kan dat niet, plan dan het netwerkpad tussen beide kanten als onderdeel van de golf.
Vragen over het in kaart brengen van afhankelijkheden
Ontdekt StackToIT applicatieafhankelijkheden?
StackToIT leidt af welke VM's een port group delen en ordent golven daarop. Afhankelijkheden tussen applicaties komen uit uw applicatiebestand en uit de review.
Kan RVTools netwerkverkeer tonen?
Nee. De export beschrijft machines, disks en adapters. Verkeer moet uit uw netwerktools komen en valt buiten wat StackToIT leest.
Wat gebeurt er met VM's die ik niet aan een applicatie toewijs?
Ze blijven in het plan en in de totalen. De executive brief telt ze als eenheden die bij geen enkele applicatie horen: in deze run omvatten ze 15 handmatige stappen, allemaal in het plan en in de totalen.
Veranderen afhankelijkheden de klasse van een VM?
Nee. Alle zeven VM's zijn RECONFIGURE, hoe ze ook zijn verbonden. Afhankelijkheden veranderen de volgorde en groepering van het werk, niet de klasse.
Bronnen
Uw volgende stap: STACKIT.
Vertel ons over uw omgeving, dan laten wij zien wat StackToIT daarvoor oplevert: doelarchitectuur, Terraform-artefacten en een gestructureerd migratieplan.
Laat uw gegevens achter, onze specialisten nemen contact met u op.
Liever zelf een e-mail sturen? connect@stacktoit.com
Hartelijk dank.
Uw verzoek is bij ons binnengekomen. Onze specialisten nemen contact met u op.