Een back-up van de controller maken
Maak een back-up van de status van de controller in de console, op verzoek of volgens schema, en herstel haar op dezelfde of een nieuwe machine.
De controller bewaart zijn status in één map, /var/lib/kyvernon/controller. Die bevat de inventaris, de gebruikers, rollen en machtigingen, de taken, gebeurtenissen en auditrecords, de licentie, de sleutels van de installatie en het TLS-certificaat dat hosts vertrouwen. Een kopie van die map en van de configuratie herstelt de controller.
De kopie bevat geen schijven van virtuele machines of bestanden van datastores: die staan op de hosts en op de opslag erachter. Maak daarvan een back-up zoals beschreven in Een virtuele machine back-uppen. Een kopie starten vraagt de bevoegdheid Global.Settings.
In de console
- Selecteer op de pagina Start de optie Back-up. Het tabblad Overzicht opent.
Lees de kaart Back-up van de controller. Status is In orde, De laatste back-up is mislukt of Uitgeschakeld. De kaart toont ook Laatste back-up, Grootte van de laatste kopie, Volgende back-up, Schema, Bewaarde kopieën, de map Kopieën gaan naar en de map Gekopieerde statusmap.
(Groter weergeven)
- Selecteer Nu een back-up van de controller maken. De taak staat in Taken en de kaart toont na afloop de nieuwe tijd en grootte.
- Wanneer de laatste kopie is mislukt, toont de kaart de fout. Los de oorzaak op, bijvoorbeeld een volle schijf bij het doel, en selecteer opnieuw Nu een back-up van de controller maken.
- Om te wijzigen wanneer kopieën worden gemaakt, kiest u Schema wijzigen. Schakel Back-ups van de controller maken in of uit, voer de map in onder Kopieën gaan naar, het Schema als een tijdstip in UTC zoals 03:15 of een interval zoals 6h, en het aantal kopieën onder Bewaarde archieven, en kies dan Schema opslaan. De oudste kopie wordt verwijderd wanneer een nieuwe wordt gemaakt.
- Verplaats de kopieën regelmatig van de machine. Een kopie op dezelfde machine beschermt niet tegen het verlies van die machine.
Het schema wijzigen vereist de bevoegdheid Global.Settings. Een controller die het niet via de console kan wijzigen, zegt dat in het dialoogvenster; de operator stelt dan het schema, het doel en het aantal bewaarde kopieën in via de controllerconfiguratie, zie Configuratie.
Resultaat
De kaart Back-up van de controller toont In orde, het tijdstip van de kopie en haar grootte. Wijzigingen na de kopie staan er niet in.
Wat de kopie bevat
| Pad onder de statusmap | Inhoud |
|---|---|
inventory.redb | De inventaris, gebruikers, machtigingen, taken, gebeurtenissen en auditrecords, de lokale groepen en het wachtwoord- en blokkeringsbeleid |
metrics.redb | Prestatiegeschiedenis en het verbruiksregister |
keys/ | De identiteitssleutel (verzegelt de geheimen van tweestapsverificatie en bewaakt de integriteit van API-tokens) en de ondertekeningssleutel van de vSphere-tokenservice |
tls/ | Het bootstrapcertificaat en de sleutel die hosts en clients vastpinnen |
licence/ | Geïnstalleerde licentiebestanden |
identity/ | Alleen bestanden van een eerdere versie. Lokale groepen en het wachtwoord- en blokkeringsbeleid staan nu in inventory.redb. |
backup/ | Back-upsessies en hun wijzigings-id's |
content/, customization/ | Contentbibliotheken en aanpassingsprofielen |
Zonder de identiteitssleutel zijn de geheimen van tweestapsverificatie en API-tokens niet meer bruikbaar. Bewaar de kopie waar alleen beheerders haar kunnen lezen. De kopie vraagt evenveel vrije ruimte als de map, en een upgrade die de geschiedenis naar schijf verplaatst, vraagt ruimte voor een tweede kopie van de store (Upgrade).
Archieven die de controller maakt
De controller schrijft een archief van haar eigen status, volgens een schema of op verzoek, zonder te stoppen. De leader-controller voert het uit voor haar eigen status. De console start een archief en stelt het schema in zoals hierboven beschreven.
Wat een archief bevat
Een archief is een tar-bestand met de naam controller-<UTC-tijd>.tar, bijvoorbeeld controller-20261114T023000Z.tar. Het bestand heeft modus 0600 en de map 0700. Het bevat:
controller-backup.json, een beschrijving met een SHA-256 per bestand.controller/inventory.redb, een consistente kopie van de store, gemaakt uit één leestransactie terwijl de controller draait.controller/metrics.redb, een consistente kopie van de metrics en het verbruiksregister.- Elk ander bestand van de statusmap.
config/controller.tomlenconfig/join-token, wanneer de controller ze kent.
De controller schrijft het archief als .partial-bestand, leest het terug en controleert elk bestand tegen zijn SHA-256 voordat zij het bewaart. Daarna verwijdert zij de oudste archieven boven de bewaartermijn.
Instellingen
Het doel, het schema en het aantal kopieën zijn deze sleutels van de sectie [backup] van controller.toml:
| Sleutel | Standaard | Betekenis |
|---|---|---|
controller_target | map controller-backups naast data_dir, bijvoorbeeld /var/lib/kyvernon/controller-backups | Map voor de archieven. |
controller_schedule | niet ingesteld | Tijdstip van de dag in UTC (02:30) of een interval (12h). Niet ingesteld: alleen op verzoek. |
controller_retention | 7 | Aantal bewaarde archieven. |
Het standaarddoel staat op dezelfde machine als de status. Laat controller_target naar opslag elders wijzen, of verplaats de archieven van de machine.
Herstel
De console is niet beschikbaar zolang de controller is gestopt, dus een herstel gebeurt op de machine; de stappen staan onder Automatisering. Herstel naar dezelfde versie van Kyvernon als waarmee de kopie is gemaakt, of naar een nieuwere. Een oudere versie kan een store die een nieuwere versie heeft gewijzigd niet openen; zie Upgrade.
Wanneer de controller weer draait, opent u de console en controleert u de hosts op het tabblad Hosts van elk cluster. Een host die niet verbindt, staat beschreven in Problemen oplossen.
Automatisering
Met de CLI
Lees de back-ups van de controller en start er nu een. controller-backups toont de toestand en de archieven. controller-backup start nu een uitvoering; --wait wacht tot de taak klaar is:
kyvernon system controller-backups
kyvernon system controller-backup --waitWijzig de map, de planning en het aantal bewaarde archieven. De wijziging wordt in de gerepliceerde opslag bewaard, boven de sleutels van [backup], en elke controller past haar toe; --disabled houdt de planning zonder archieven te maken:
kyvernon system set-controller-backup --target /var/lib/kyvernon/controller-backups \
--schedule 02:30 --retention 7Om uit een archief te herstellen, stopt u de controller, pakt u de status uit, kopieert u de configuratie en start u de controller:
sudo systemctl stop kyvernon-controller.service
sudo tar --numeric-owner -C /var/lib/kyvernon -xpf controller-<time>.tar controller
mkdir -p /tmp/kyv
sudo tar -C /tmp/kyv -xpf controller-<time>.tar config
sudo cp /tmp/kyv/config/* /etc/kyvernon/
sudo systemctl start kyvernon-controller.service
kyvernon system readyVerplaats de archieven van de machine. De overige stappen van het herstel met de hand hieronder gelden voor een machine die nieuw is geïnstalleerd.
Handmatig kopiëren
Een kopie met de hand vraagt een korte pauze van de controller: zolang hij is gestopt, draait er geen taak en antwoorden de console en de API's niet. Hem stoppen stopt geen virtuele machines. Stop de controller zodat de store in een consistente staat wordt gekopieerd, kopieer de map en de configuratie en start hem weer:
sudo systemctl stop kyvernon-controller.service
sudo tar --numeric-owner -C /var/lib/kyvernon -cpf controller-state.tar controller
sudo tar --numeric-owner -C /etc/kyvernon -cpf controller-config.tar controller.toml join-token
sudo systemctl start kyvernon-controller.service
kyvernon system readyVerplaats beide archieven van de machine. Bewerk ze niet.
Installeer om te herstellen het controllerpakket op de machine (Installeren vanuit een offline depot) en start de service niet. Pak de configuratie en de status uit:
sudo tar -C /etc/kyvernon -xpf controller-config.tar
sudo mkdir -p /var/lib/kyvernon
sudo tar --numeric-owner -C /var/lib/kyvernon -xpf controller-state.tarControleer de configuratie en start de service:
sudo kyvernon-controller --config /etc/kyvernon/controller.toml check-config
sudo systemctl start kyvernon-controller.service
kyvernon system readyEen machine met een andere naam of een ander adres heeft haar namen nodig in de instelling san van de sectie [tls] van controller.toml, en de agents hebben het nieuwe adres nodig in de instelling endpoint van agent.toml.
Met de API
GET /v1/backup/controller vraagt System.Read. Het toont:
| Veld | Betekenis |
|---|---|
enabled | Er is een schema ingesteld. |
target, schedule, retention | De instellingen in gebruik. |
lastRunAt, lastResult, lastSizeBytes, lastError | De laatste uitvoering. |
nextRunAt | De volgende geplande uitvoering. |
stateDirectory | De map die wordt gearchiveerd. |
running | Een uitvoering loopt. |
archives | name en sizeBytes van elk archief, het nieuwste eerst. |
PUT /v1/backup/controller vraagt Global.Settings en neemt enabled, target (een absolute map die de controller kan aanmaken), schedule (nodig bij enabled) en retention (1 tot 365). Het antwoordt de toestand zoals GET.
POST /v1/backup/controller/run vraagt Global.Settings. Het start de taak ServiceInstance.backupControllerState, nu een kopie.
Zie ook
- Configuratie voor de instellingen van de store.
- Upgrade, dat begint met een kopie van de controller.
- Verwijderen, dat de statusmap verwijdert.
Versie 0.1. Laatst gewijzigd: 2026-11-14