Servers indelen in uitrol-golven
Een nieuwe versie gaat nooit in één keer naar alle servers. Hij loopt in golven: eerst een canary, dan golf 1, dan de rest, met een wachttijd en een gezondheidscontrole tussen elk paar. Welke server in welke golf zit, bepaal jij.
Geschreven voor: Beheerder
Een nieuwe versie gaat nooit in één keer naar alle servers. Hij loopt in golven: eerst een canary, dan golf 1, dan de rest, met een wachttijd en een gezondheidscontrole tussen elk paar. Welke server in welke golf zit, bepaal jij.
Bij vier servers doe je dat door ze te slepen. Bij tweehonderd niet. Deze pagina gaat over de manier die wél schaalt: je beschrijft je vloot met regels, en het paneel leidt daar de indeling uit af — ook voor servers die je volgende maand pas toevoegt.
Alleen beheerders. Resellers en eindklanten zien dit scherm nooit.
Open Vloot → Releases. Onderaan staan drie dingen, in de volgorde waarin je ze gebruikt: de regels, het bord met de golven, en de uitzondering.
In het kort
| Wat je wilt | Hoe |
|---|---|
| Een hele groep servers in één golf | Schrijf een regel: "tag = nl → golf 2" |
| Een paar servers verplaatsen | Vink ze aan en kies Verplaats selectie naar |
| Eén server ergens anders | Sleep hem, of open hem en kies een golf |
| Weten waarom een server ergens zit | Kijk naar het badge achter zijn naam |
| Zien wat een regel gaat doen vóór je hem opslaat | Klik Testen |
1. Geef je servers labels
Een regel selecteert op vier dingen: nodegroep, regio, rol en tag. De eerste twee kent het paneel al (de groep waarin de server zit, en de rollen die erop draaien); regio en tags geef je zelf.
- Klik op een server in het bord. Er schuift een paneel open.
- Onder Labels kies je een sleutel (
regionoftag), typ je een waarde en klik je Label toevoegen.
region heeft altijd één waarde — een server in twee regio's zou elke regio-regel dubbelzinnig maken. tag mag er zoveel hebben als je wilt.
Vanaf de terminal kan het ook, en dat is handig voor een hele reeks tegelijk:
# root@panel1
$ corecp-panel waves label stck1.corecp.dev region=nl tag=ssd
NODE KEY VALUE
stck1.corecp.dev region nl
stck1.corecp.dev tag ssd2. Schrijf een regel — en test hem eerst
- Klik Regel toevoegen bij Indelingsregels.
- Geef hem een korte naam (
nl-naar-golf-2), kies Wanneer (bijvoorbeeld tag), typ de waarde en kies de golf. - Klik Testen.
Testen schrijft niets. Je krijgt per server te zien wat er écht zou gebeuren, en dat is niet hetzelfde als "welke servers passen bij de regel":
- naar golf X verplaatsen — die gaan bewegen;
- blijft staan (al goed) — die zitten er al;
- blijft staan — handmatig ingedeeld — iemand heeft die server met de hand neergezet, en dat gaat boven elke regel;
- blijft staan — regel Y pakt hem eerder — een regel die hoger in de lijst staat, claimt hem het eerst.
Onder de lijst staat de optelsom, en de zin "Er is nog niets opgeslagen." Klopt het beeld? Klik Opslaan. Het paneel past de regel meteen toe en zegt hoeveel servers er zijn verplaatst.
3. De volgorde is het beleid
Regels worden van boven naar beneden gelezen en de eerste die past, wint. Met de pijltjes ↑ en ↓ zet je een regel eerder of later. Elke wijziging herberekent de vloot meteen.
Een voorbeeld dat vaak voorkomt:
1 dns-naar-golf-1 rol = dns → golf 1
2 nl-naar-golf-2 regio = nl → golf 2
3 rest-naar-golf-3 rol = web → golf 3Een Nederlandse DNS-server komt dan in golf 1, niet in golf 2 — want regel 1 staat er eerder. Wil je het andersom, zet dan regel 2 bovenaan.
4. Nog niet ingedeeld
Een nieuwe server komt niet automatisch in een golf terecht. Hij landt in de groep Nog niet ingedeeld, en blijft daar tot een regel hem pakt of jij hem toewijst.
Dat is met opzet: een machine waarvan niemand de impact heeft ingeschat, hoort niet per ongeluk in de eerste, risicovolste golf te belanden. Maar het is ook geen eindstation — een server in die groep krijgt geen enkele uitrol. Het bord zegt dat er ook bij, en een uitrolplan noemt de namen die het daarom overslaat.
De snelste oplossing is meestal: geef de server het label dat je al gebruikt, en een bestaande regel pakt hem vanzelf op zodra je het bord opnieuw opent.
5. Bulk: meerdere servers tegelijk
- Typ in het zoekveld waar je op wilt filteren — een naam, een regio, een rol, een tag. Het bord versmalt mee.
- Vink de servers aan die je wilt verplaatsen.
- Kies rechtsboven een golf en klik Verplaats selectie naar.
Dat is één handeling, één auditregel, en alle geselecteerde servers staan daarna gemarkeerd als handmatig — dus geen enkele regel verplaatst ze later terug.
6. Waarom zit deze server hier?
Achter elke servernaam staat een badge:
| Badge | Betekenis |
|---|---|
| handmatig | Iemand heeft hem hier neergezet. De naam staat in de tooltip. Geen regel verplaatst hem nog. |
| regel <naam> | Deze regel heeft hem ingedeeld. Verandert de regel, dan verandert zijn golf mee. |
| automatisch | Hij is ingedeeld vóórdat er regels bestonden. Een regel mag hem overnemen. |
| geen regel | Hij staat in Nog niet ingedeeld. |
7. Een uitzondering blijft een uitzondering
Slepen werkt gewoon nog. Pak een server op en laat hem op een andere golfkaart los — voor die ene machine die om een eigen reden ergens anders hoort. Zo'n verplaatsing is handmatig en overleeft elke herberekening van de regels.
Vraagt het paneel om een bevestiging?
Indelen niet. Een server in een golf zetten installeert niets, raakt geen enkele machine en is ongedaan te maken door hem terug te slepen. Daar hoort geen wachtwoordprompt bij.
Uitrollen wel. Een release doorzetten of een uitrol starten raakt de hele vloot. Daar vraagt het paneel opnieuw om je tweede factor, in een net dialoog — je vult je code in, klikt Bevestigen, en de handeling die je wilde doen wordt gewoon voortgezet. Je raakt niets kwijt.
Alles ook vanaf de terminal
# root@panel1
$ corecp-panel waves board # het hele bord, met de reden per server
$ corecp-panel waves rules # de regels, in volgorde
$ corecp-panel waves rule test nl-naar-golf-2 --on region --is nl --to wave-2
$ corecp-panel waves rule add nl-naar-golf-2 --on region --is nl --to wave-2
$ corecp-panel waves move stck1.corecp.dev wave-1 --busy
$ corecp-panel waves apply --dry-run # wat zou een herberekening veranderenZie ook
- Releases beheren — wat er ná de indeling gebeurt: soak, canary, golven, gates en de noodbaan.
- Een server toevoegen — hoe een machine in de vloot komt.