Migreer je virtuele machines live

migratie

Artikelgereedschap

  • Tip ons
  • Printen
  • Reacties (1)
Aanbevelen

Gepubliceerd: Maandag 11 januari 2010
Auteur: Koen Vervloesem

Xen biedt de mogelijkheid om een hele virtuele machine van de ene naar een andere machine te migreren. Dat kan zelfs live, terwijl de virtuele machine blijft draaien. We gaan even in op de achtergrond hiervan en tonen hoe dit in de praktijk gaat.

Eén van de bedoelingen van virtualisatie is om abstractie te kunnen maken van de onderliggende hardware. Idealiter zou je de virtuele machine dan ook zonder problemen moeten kunnen verplaatsen van één fysieke machine naar een andere, en liefst zo snel mogelijk. Dat kan om verschillende redenen noodzakelijk zijn: je hardware is bijvoorbeeld niet meer krachtig genoeg, of je moet er onderhoud op uitvoeren, of je wil load balancing implementeren.

Xen biedt de mogelijkheid om een virtuele machine in zijn totaliteit te migreren naar een andere machine, waarna hij daar zijn werk kan voortzetten. Dat kan omdat de volledige toestand van de virtuele machine wordt overgezet, onder andere de kerneltoestand, alle processen, kortom het hele virtuele RAM. Deze migratie kan 'cold' of 'live' gebeuren. Bij een koude migratie wordt de virtuele machine gepauzeerd en naar de andere fysieke machine overgezet, waarbij de downtime significant kan zijn. Bij een live migratie blijft de virtuele machine tijdens het migreren draaien, waardoor de downtime vrijwel nihiel is.

De meest primitieve manier is gewoon de virtuele machine stopzetten, de virtuele harde schijf naar een andere fysieke machine overzetten en daarna de virtuele machine opnieuw creëren. Dit is alleen nodig voor grote wijzigingen, zoals het migreren naar een andere hypervisor. Daar gaan we hier dus niet op in. We illustreren eerst het verloop van een koude migratie, waarbij de virtuele machine niet stopgezet maar gepauzeerd wordt, en daarna live migratie, wat hier een geavanceerdere vorm van is.

Save en restore

De idee achter de migratie van een virtuele machine is dat je ze savet op de ene fysieke machine en restoret op de andere fysieke machine. Het saven van een virtuele machine is te vergelijken met de slaapstand van een computer: daarbij wordt een kopie van het hele RAM naar schijf geschreven en wordt de computer uitgeschakeld. Wanneer de computer weer opstart, wordt de kopie van de harde schijf geladen en bit per bit terug in het RAM geladen. Het resultaat: de computer gaat gewoon verder waar hij was.

Xen kan hetzelfde doen met virtuele machines: daarvoor heeft het de opdrachten 'xm save' en 'xm restore'. Zo save je bijvoorbeeld de virtuele machine met de naam testvm naar een bestand testvm.sav:


# xm save testvm testvm.sav

Hierna is de virtuele machine gestopt en vind je zijn volledige toestand in het bestand testvm.sav, dat ongeveer zo groot is als het geheugen dat toegekend was aan de virtuele machine. Nu kun je op een later moment de virtuele machine restoren:


# xm restore testvm.sav

De virtuele machine draait nu opnieuw en gaat verder waar hij was op het moment van het saven. Het save-bestand blijft overigens bestaan, zodat je er altijd opnieuw van kunt restoren als er iets misloopt.

« vorige 1 2 3

Relevante whitepapers

Alle whitepapers >>

Nieuwsbrief

Ontvang dagelijks een overzicht van het laatste ICT-Nieuws in uw mailbox

Whitepapers

  • Maximaliseer het voordeel van SaaS

    Cloud-applicaties hebben grote invloed op het gebruik van de IT-architectuur en niet ieder project levert de verwachte voordelen op.

    Downloaden
  • Flexibele IT noodzaak voor bankenOnderzoeksrapport over de beperkte flexibiliteit van veel IT-systemen in de bancaire wereld. Lees meer!
  • Kostenbesparing voor long tail appsOplossing voor kostenkwesties in VDI. Technologie geschikt voor long tail apps.
» Meer whitepapers

Peiling

Loading Poll

Video: Review: HTC One X-smartphone met vijf...

Review: HTC One X-smartphone met vijf cores (video)