Accounts herverdelen over je servers
curl -s -b cookies.txt https://panel.example.net/api/v1/account-migrations \
Geschreven voor: Beheerder
Een server wordt te vol, of je wilt er een uit dienst nemen. Dan moeten er klanten weg — niet één dienst van één klant, maar hele accounts, en het liefst in één keer. Servers herverdelen doet dat: je kiest een doelserver, je kiest wie er mee gaat, je leest eerst wat er zou gebeuren, en pas daarna verhuist er iets.
Elke klant gaat als geheel: zijn website, zijn database, zijn e-mail, zijn DNS en zijn backupbestemming, met één moment waarop hij overgaat. Dat is de belangrijkste eigenschap van dit scherm. Als je die vijf diensten los zou verhuizen, is er een middag lang een klant wiens website op de ene machine staat en wiens database nog op de andere — en dat is precies wanneer dingen stukgaan.
Je vindt het onder Migratie → Servers herverdelen.
Wanneer je dit gebruikt, en wanneer niet
Dit scherm is voor machines die al van jou zijn. Voor de andere twee gevallen zijn er andere gereedschappen, en die blijven gewoon bestaan:
| Wat je wilt | Waar je heen gaat |
|---|---|
| Klanten van je eigen server A naar je eigen server B | Servers herverdelen (deze pagina) |
| Een klant overzetten vanaf een vreemd paneel, met zo min mogelijk downtime | Live migratie |
| Een hele DirectAdmin- of cPanel-server importeren | Migratie → Nieuwe migratie |
Voor één uitzonderlijk groot account is de live migratie nog steeds het betere gereedschap: die synchroniseert dagenlang op de achtergrond en zet pas op het eind om. Herverdelen werkt anders — het maakt een archief en houdt het account kort op slot — en dat is voor gewone accounts sneller en simpeler.
Stap 1 — kiezen waarheen, en wie mee gaat
Druk op Nieuwe herverdeling.
- Doelserver. De machine die de klanten straks bedient. Alleen machines die het paneel echt kent staan in de lijst, en de server moet de diensten dragen die je meeneemt: een server zonder de e-maildienst kan geen mailboxen krijgen.
- Accounts. Zoek ze op naam, of gebruik de regel Alles op <server> — dat is wat je meestal wilt als je een machine leeg wilt maken. Die regel wordt meteen uitgeklapt tot de namen zelf, zodat het rapport straks één op één te vergelijken is met wat je goedkeurde.
- Diensten. Standaard gaan alle vijf mee. Wat een account niet heeft, wordt overgeslagen.
- Tegelijk kopiëren. Hoeveel accounts er tegelijk gekopieerd worden. Twee is een goed begin: de bronmachines bedienen ondertussen gewoon hun klanten, en meer tegelijk maakt het kopiëren niet sneller maar de bron wel langzamer. Omzetten gebeurt altijd één klant tegelijk, wat je hier ook invult.
Stap 2 — eerst kijken wat er zou gebeuren
De knop om te starten bestaat nog niet. Dat is met opzet: eerst druk je op Controleer N account(s).
Die controle leest de plaatsing van elk account en vraagt de servers om hun zones. Er verandert niets. Wat je terugkrijgt is een regel per klant:
- Kan mee — met de diensten die meegaan erbij.
- Let op — bijvoorbeeld: een zone die wordt bediend door een nameserver die niet meeverhuist, en die dus daarna nog steeds vragen krijgt.
- Kan niet mee — met de reden. De bekendste is de databaseversie: als het pakket van de klant MariaDB 11.8 verkoopt en de doelserver 10.11 draait, gaat die klant niet mee. Dat is geen fout in de herverdeling maar precies de regel die de data van die klant op de reeks houdt waarvoor betaald is.
Bovenaan staat één zin over adressen: records die naar een machine uit deze run wijzen worden het adres van de doelserver, en al het andere blijft staan zoals het staat. Een subdomein dat een klant bewust naar een externe partij liet wijzen blijft dus wijzen waar het wees.
Pas als de controle geantwoord heeft, verschijnt de knop Verhuis N account(s) naar <server>.
Stap 3 — de run, en het rapport
Vanaf hier is het een rapport per klant. Elke klant loopt zijn eigen stappenlijst af:
- Controleren — alles wat geweigerd moet worden vóórdat er een byte is gekopieerd.
- Even op slot — het account neemt geen nieuwe wijzigingen aan. Dit duurt zolang zijn eigen archief en overdracht duren, niet zolang de hele run duurt. Was het account al door jou geschorst, dan blijft dat zo en raakt deze run het niet aan.
- Kopiëren — per dienst een kopie op de doelserver, terwijl de oude machine gewoon blijft bedienen.
- Omzetten — het korte moment waarop de doelserver het overneemt, voor alle diensten van deze klant achter elkaar.
- Slot eraf, Nakijken, Oude machine — die laatste stap verwijdert niets; hij vertelt je wat er op de oude machine is blijven staan.
Eén klant die vastloopt houdt de rest niet tegen. Zijn regel draagt de reden, de run gaat door, en aan het eind zegt de run dat er werk is blijven liggen met de telling erbij. Loopt een klant vast vóórdat hij is omgezet, dan krijgt hij zijn eigen machine automatisch terug — een klant die bevroren blijft staan is een storing, en die wil je niet als nasleep van je eigen onderhoud.
# Meekijken vanaf de opdrachtregel kan ook: het rapport is gewone JSON.
curl -s -b cookies.txt https://panel.example.net/api/v1/account-migrations \
| python3 -m json.tool | head -30Stap 4 — terugzetten, doorgaan of stoppen
Klik in het rapport een klant aan en je ziet zijn stappenlijst en wat de run onderweg tegenkwam.
- Terugzetten op de oude server staat er zolang de klant nog niet is omgezet. Zijn oude machine bedient hem op dat moment nog steeds, dus terugzetten merkt niemand. Wat al gekopieerd is blijft op de doelserver staan voor een volgende poging; weggooien zou van terugzetten juist de gevaarlijke handeling maken.
- Ná het omzetten staat die knop er niet, en het scherm zegt waarom: terugverhuizen is dan een nieuwe herverdeling, geen terugzetten.
- Doorgaan hervat een run bij de eerste klant die nog niet af is. Wat geland is wordt niet opnieuw gedaan.
- Herverdeling stoppen laat wie al is omgezet staan waar hij staat, en geeft iedereen die nog niet is omgezet terug aan zijn eigen machine.
Wat je zelf nog moet doen
- Nameservers. Wijzen de zones van een klant naar nameservers die niet meeverhuizen, dan blijven die zones daar bediend worden. De controle zegt het van tevoren; het verzetten is een keuze die jij maakt.
- De oude kopie opruimen. Een verhuizing verwijdert niets van wat een klant bezit: de oude machine stopt met bedienen — de vhost gaat uit, de zone wordt ingetrokken — maar bestanden, databases en mailboxen blijven staan. Dat is precies wat de terugweg openhoudt. De laatste stap van elke klant noemt wat er nog staat en met welk commando je het weghaalt; doe dat wanneer je tevreden bent, niet eerder.
- Cron en losse dingen. Wat niet aan een van de vijf diensten hangt, verhuist niet mee. Kijk het na op de oude machine voordat je hem uit dienst neemt.