Naslag Voor: beheerders

Configuratie

Bestanden, mappen en de sleutels van controller.toml voor capaciteit, taken, geheugen en opslag van de controller.

Locaties

WatWaar
Binaire bestanden/usr/bin/kyvernon-controller, kyvernon-agent, kyvernon-vmm, kyvernon
Configuratie/etc/kyvernon/controller.toml, agent.toml, join-token, admin-password, controller-ca.pem
Skeletten/usr/share/kyvernon/controller.toml.example, agent.toml.example
Toestand/var/lib/kyvernon/controller, /var/lib/kyvernon/agent, images onder /var/lib/kyvernon/images
Logboekenjournalctl -u kyvernon-controller, journalctl -u kyvernon-agent
Handleidingpagina'sman kyvernon-controller, man kyvernon-agent, man kyvernon-vmm, man kyvernon

Capaciteit

Capaciteitsinstellingen in controller.toml (sectie [vm_ops]; de standaardwaarden passen bij de meeste installaties):

SleutelStandaardBetekenis
max_vcpus_per_vm0Meeste vCPU's van één virtuele machine. 0 betekent de logische CPU's van zijn host.
host_memory_reserve_mib2048Geheugen dat voor de host zelf wordt gereserveerd. Een virtuele machine kan niet groter zijn dan het geheugen van zijn host min deze waarde.
memory_overcommit_ratio1.0Inschakelen wordt geweigerd als het geheugen van de draaiende virtuele machines van een host zijn geheugen (na de reserve) maal deze waarde zou overschrijden. 1.0 betekent geen overcommit.
max_thin_disk_gib0Grootste thin-schijf. 0 betekent de capaciteit van zijn datastore. Thick-schijven moeten altijd in de vrije ruimte passen.

Taken

Taakinstellingen in controller.toml (sectie [tasks]; de standaardwaarden passen bij de meeste installaties):

SleutelStandaardBetekenis
workers8Taken die tegelijk in de controller werken.
waiting_tasks256Taken die naast workers bezig mogen zijn omdat ze alleen wachten: tot een gast is afgesloten, tot een host een schijf heeft gekopieerd of een virtuele machine heeft gemigreerd, tot een andere taak op dezelfde virtuele machine klaar is. Terwijl ze wachten houden ze geen andere taak op. Met 0 houdt een wachtende taak zijn worker vast, en houden acht trage afsluitingen alle andere taken op.
queue_capacity1024Taken die mogen wachten om te starten. Een verzoek daarboven wordt geweigerd met RESOURCE_EXHAUSTED; de aanroeper probeert het opnieuw.
sweep_interval1mHoe vaak wordt gezocht naar taken die niemand meer uitvoert. 0s schakelt de periodieke controle uit.
orphan_timeout15mEen taak in de wachtrij die zo lang niet kon starten, mislukt.
max_run_time1dEen taak die langer draait dan deze waarde wordt geannuleerd en mislukt. 0s betekent geen limiet.
scrub_secretstrueWanneer de controller leider wordt, worden voltooide taken waarvan de vastgelegde parameters nog gebruikersgegevens of wachtwoorden van de gast bevatten (records van voor het maskeren) herschreven zonder die gegevens. Het logboek zegt hoeveel.

Hoogstens workers + waiting_tasks taken zijn tegelijk bezig; de volgende wacht in de wachtrij.

Back-up

Instellingen van de back-up-API in controller.toml (sectie [backup]; zie Een back-up van een virtuele machine maken en Een virtuele machine herstellen):

SleutelStandaardBetekenis
state_dirbackup onder de toestandsmapWaar sessies en hun wijzigings-id's worden bewaard.
remote_exportsfalseDe schijfexports via TCP met TLS 1.3 aan andere machines aanbieden, in plaats van alleen op de host.
agent_timeout10mHoelang de controller in een back-upaanroep op een host wacht.
verify_scheduleniet ingesteldNachtelijke herstelcontrole: een tijdstip in UTC (02:30) of een interval (6h). Niet ingesteld: geen taak.
verify_repositoryniet ingesteldMap met de opgeslagen back-ups die de controle herstelt.
verify_networkniet ingesteldHet quarantainenetwerk, op naam of id.
verify_timeout300sTijd die voor één controle beschikbaar is.
verify_destroytrueDe herstelde virtuele machine vernietigen na zijn oordeel.
verify_poolleegDatastore voor de herstelde schijven. Leeg: de eerste bruikbare.
controller_targetcontroller-backups naast data_dirMap voor de archieven van de controllerstatus, bijvoorbeeld /var/lib/kyvernon/controller-backups. Zie De controller back-uppen.
controller_scheduleniet ingesteldWanneer de controller haar status archiveert: een tijdstip van de dag in UTC (02:30) of een interval (12h). Niet ingesteld: alleen op verzoek.
controller_retention7Bewaarde archieven van de controllerstatus.

De repository en de verificatie-instellingen kunnen ook in de console worden gewijzigd, en de back-upinstellingen van de console gelden op elke controller binnen ongeveer 10 seconden. Een waarde die daar nooit is gewijzigd, wordt uit de bovenstaande sleutels gelezen.

Geheugen en opslag

Geheugen en opslag van de controller (de standaardwaarden passen bij de meeste installaties; de service weigert te starten met een waarde buiten het genoemde bereik):

SleutelStandaardBetekenis
[node] change_feed_max_bytes67108864 (64 MiB)Geheugen voor de wijzigingsgeschiedenis waaruit API-clients zich bijwerken. Een client die te ver achterloopt, vraagt de lijst opnieuw op. 0: geen limiet in bytes; anders minstens 65536.
[node] snapshot_log_bytes33554432 (32 MiB)De controller schrijft een snapshot van zijn store wanneer het logboek sinds de vorige deze waarde overschrijdt (of de grootte van de vorige snapshot, als die groter is), en na elke 5.000 wijzigingen. Begrenst de grootte van inventory.redb. 0: alleen na elke 5.000 wijzigingen; anders minstens 1048576.
[node] store_cache_bytes67108864 (64 MiB)Paginacache van inventory.redb, geheugen van het controllerproces. Minstens 4194304.
[node] history_on_disktrueTaken, gebeurtenissen en auditrecords in inventory.redb bewaren, met alleen een index in het geheugen. false: ze in het geheugen en inline in de snapshot bewaren, zoals eerder (zie de upgradeopmerking).
[node] history_flush_bytes16777216 (16 MiB)Een snapshot wordt ook geschreven wanneer zoveel geschiedenistekst is gewijzigd sinds de vorige; dit begrenst de geschiedenis in het geheugen. 0: uit; anders minstens 1048576.
[node] keep_pre_history_copytrueDe store kopiëren naar inventory.redb.before-history-on-disk voor de start die de geschiedenis erin verplaatst (eenmalig). Verwijder de kopie als alles goed werkt.
[retention] history_max_bytes4294967296 (4 GiB)Meeste JSON-tekst van taken en gebeurtenissen die in de store blijft. Daarboven worden de oudste gebeurtenissen en voltooide taken het eerst verwijderd, vóór hun leeftijdsgrens (30 dagen voor taken, 90 voor gebeurtenissen) of aantalsgrens. Draaiende taken en auditrecords worden hierdoor niet verwijderd. 0: geen limiet in bytes; anders minstens 1048576.
[retention] audit_warn_bytes2147483648 (2 GiB)Boven zoveel tekst aan auditrecords wordt een waarschuwing gelogd en wordt eenmaal per overschrijding een AuditHistoryLargeEvent verstuurd (een alarm kan erop afgaan). Auditrecords worden nooit op grootte verwijderd; ze verdwijnen via audit_age en audit_max. De meter is kyvernon_history_text_bytes{kind="audit"}. 0: uit.
[metrics] cache_bytes67108864 (64 MiB)Paginacache van metrics.redb, geheugen van het controllerproces. Minstens 4194304.
[metrics] deleted_entity_retention"7d"Hoelang prestatiegrafieken van een verwijderde virtuele machine (of een verwijderde host of datastore) bewaard blijven voordat ze worden verwijderd. "0s" tot "366d". Verbruiksrapporten worden hierdoor niet beïnvloed (ledger_retention_days).

Versie 0.1. Laatst gewijzigd: 2026-11-14