PDA

Bekijk Volledige Versie : Hoe het beste een VPS verplaatsen?



Ionstar
20/07/11, 17:09
Ik ben bezig met het overzetten van mijn VPS-en (openvz) naar een nieuwe host node. Ik heb ze allemaal overgezet, behalve de VPS waar alle websites en de primary DNS op staan (plesk 9). Hoe zet ik het beste die VPS over met zo min mogelijk downtime? Het eerste probleem is dat een vzdump van die VPS zeker een uur of 5 duurt, het over zetten ook een uur of 2 en dan moeten alle IP's nog worden aangepast. Maar dan wijst de primary DNS nog naar het oude IP en het aanpassen bij de registrar kan tot 72 uur duren.

Ik kan uiteraard die sites niet zo lang offline houden, dus misschien na het kopieren van de VPS de oude alsnog laten draaien en dan later de raw mysql DB's overzetten naar de nieuwe en DNS verwijzingen aanpassen? Dat kost ook tot 24 uur waarbij 2 omgevingen (oude en nieuwe) draaien en databases worden bijgewerkt, mail ontvangen, etc. Dus een deel van de data gaat dan verloren. Wat is de beste manier om dit zo soepel mogelijk te laten verlopen? De andere VPS-en bevatten geen websites dus het overzetten daarvan was geen issue.

PeterT
20/07/11, 17:37
Heb je dit al bekeken: http://wiki.openvz.org/Checkpointing_and_live_migration ?

Ionstar
20/07/11, 17:52
Dat is alleen echt handig als je IP adres hetzelfde blijft op de nieuwe host node. Bij mij verandert ook het IP adres waardoor de hele zaak door elkaar gaat lopen.

rimote
20/07/11, 18:17
template maken...

vzctl stop VEID
cd /var/lib/vz/private/VEID/private/
tar -czf /var/lib/vz/template/cache/VEID.tar.gz ./

en scpen / rsyncen naar de nieuwe host. Daar nieuwe VPS aanmaken, stoppen en template weer extracten:

cd /var/lib/vz/private/VEID/private
tar -xf /var/lib/vz/template/cache/VEID.tar.gz ./

succes

Ionstar
20/07/11, 19:08
Bedankt voor je antwoord rimote, maar je hebt mijn vraag en reply niet gelezen. Wat je hier beschrijft is hetzelfde als een vzdump maken en overzetten. Dat is allemaal geen probleem. Het probleem is de tijd zo kort mogelijk houden terwijl je IP adres ook verandert en je primary DNS ook op die vps aanwezig is.

rimote
20/07/11, 19:13
excuses, je hebt natuurlijk helemaal gelijk. Is het een idee om de websites over te zetten en Mysql via een remote poort uit te lezen (of master master replica). Vervolgens de DNS entries aanpassen en wachten totdat DNS over is? Dan pas pas de ips van de nameservers wijzigen naar de nieuwe host? Beetje kort door de bocht uitgelegd, maar migreren is denk ik geen optie in dit geval.

ju5t
20/07/11, 21:50
Als je de migratie 's nachts start (afhankelijk van je klanten op deze server) kun je de hele verplaats actie 's ochtends klaar hebben. Tijdens de migratie ben je dan tijdelijk niet bereikbaar, maar ik denk dat je daar niet gemakkelijk onderuit gaat komen. De oude IP adressen laat je online, desnoods zet je er tijdelijk een nieuwe VPS voor op.

Ondertussen wijzig je de DNS. Zoals je aangeeft is de kans aanwezig dat dit even duurt. Bij een migratie is het hoe dan ook handig om je TTL te verlagen. Dat gaat je waarschijnlijk al helpen. Voor de overige requests komt de tijdelijke VPS in actie. Daar zet je iptables als volgt op: http://www.debuntu.org/how-to-redirecting-network-traffic-a-new-ip-using-iptables.

Dan denk ik dat je er aardig bent. Als de downtime van 7 uur echt te lang is kun je kijken naar site voor site migreren. Maar dat is een vervelende klus.

vDong
21/07/11, 10:58
Bedankt voor je antwoord rimote, maar je hebt mijn vraag en reply niet gelezen. Wat je hier beschrijft is hetzelfde als een vzdump maken en overzetten. Dat is allemaal geen probleem. Het probleem is de tijd zo kort mogelijk houden terwijl je IP adres ook verandert en je primary DNS ook op die vps aanwezig is.

Het stapje dat je mist is forwarding van alle traffic naar de nieuwe host terwijl je wacht tot overal de dns over is.

visser
21/07/11, 11:35
Het stapje dat je mist is forwarding van alle traffic naar de nieuwe host terwijl je wacht tot overal de dns over is.

Wellicht dat de NS +glue entries bij het toplevel domein een lange TTL hebben, maar je kunt natuurlijk gewoon 72 uur voor je migratie al een andere (desnoods tijdelijke) primary DNS server inrichten.

Voor alle records op die nieuwe primary DNS heb je volledige controle over de TTL, en die kun je erg kort zetten.
Op moment dat je de host waar dat record naar verwijst omgezet hebt kun je de DNS ervoor ook omzetten en dan heb je alleen te maken met de door jou zelf ingestelde TTL;

vDong
21/07/11, 11:56
Wellicht dat de NS +glue entries bij het toplevel domein een lange TTL hebben, maar je kunt natuurlijk gewoon 72 uur voor je migratie al een andere (desnoods tijdelijke) primary DNS server inrichten.

Voor alle records op die nieuwe primary DNS heb je volledige controle over de TTL, en die kun je erg kort zetten.
Op moment dat je de host waar dat record naar verwijst omgezet hebt kun je de DNS ervoor ook omzetten en dan heb je alleen te maken met de door jou zelf ingestelde TTL;

Helaas leert ervaring dat bepaalde providers (*kuch* kabelaars *kuch*) de TTL gewoon fijn negeren als de TTL laag is.

visser
21/07/11, 12:10
Helaas leert ervaring dat bepaalde providers (*kuch* kabelaars *kuch*) de TTL gewoon fijn negeren als de TTL laag is.

Tsja, daar is dan weinig aan te doen. Het betekend niet dat je daarom maar op 72 uur moet blijven zitten.
Overigens, welke kabelaars forceren welke minimale TTL ?