Onze twee servers (hdvp-app en hdvp-store) krijgen elke eerste vrijdag van de maand, begin van de avond een automatische onderhoudsronde: updates, nieuwe container-images en waar nodig een herstart. Daarna controleert de server zichzelf en meldt het resultaat via ntfy. Vrijdag is bewust gekozen: gaat er iets mis, dan is er het weekend om het op te lossen zonder dat productie erop wacht.
De opslagserver gaat eerst (18:30), de applicatieserver drie kwartier later (19:15) — zo staan NFS en MinIO alweer als de app-server herstart. Reken op 5–10 minuten onbereikbaarheid van Nextcloud, FreeFrame, login en de websites rond 19:15–19:30. Plan er geen livestream of oplevering in.
| Stap | Wat | Waarom |
|---|---|---|
| 0 | Wachten op lopende opleveringen (max 45 min) | Een Whisper-transcriptie van een uur niet halverwege afbreken |
| 1 | apt full-upgrade + opruimen | Systeempakketten, kernel, Docker |
| 2 | Container-images vernieuwen per stack (compose pull + up) | Caddy, web-stack, FreeFrame, ntfy, n8n, Paperless, Ontime … — niet Nextcloud en Authentik: die doen we met de hand (major-versies) |
| 3 | Samenvatting naar ntfy | Je ziet op je telefoon wat er is gebeurd |
| 4 | Herstart als de server dat vraagt | Nieuwe kernel/libc worden pas actief na een reboot |
| 5 | Zelfcontrole 3 min na de boot → rapport ✅ of ⚠ | Containers terug, diensten, schijf, endpoints, ZFS ontgrendeld |
Beveiligingsupdates wachten niet op deze ronde: unattended-upgrades installeert die dagelijks (zonder herstart — de herstart komt op de eerste vrijdag).
Je krijgt per server twee meldingen: "Onderhoud … : herstart" (of klaar) met de samenvatting, en daarna "Verificatie … : alles in orde ✅". Check daarnaast even status.hdvp.nl: alles groen, updates 0, uptime begint opnieuw. Log in op cloud.hdvp.nl. Klaar.
Het rapport noemt de punten. De meest voorkomende: een container die niet terug is (sudo docker ps -a, dan docker compose -f /opt/stacks/<stack>/compose.yml up -d), Nextcloud in maintenance-mode (occ maintenance:mode --off in de app-container), /mnt/store niet gemount (store nog niet op, of tank niet ontgrendeld → eerst de store checken), of Caddy die na een image-update z'n config niet pakt (sudo docker restart caddy). Het volledige logboek staat in /var/log/hdvp-onderhoud/JJJJ-MM.log.
Eerst kijken zonder iets te veranderen: sudo hdvp-onderhoud.sh --dry-run. Echte ronde zonder herstart: sudo hdvp-onderhoud.sh --no-reboot. Alleen controleren: sudo hdvp-verifieer.sh. Eerstvolgende geplande ronde: systemctl list-timers hdvp-onderhoud.timer.
Nextcloud en Authentik bijwerken (release notes lezen, backup checken, dan compose pull + up -d; Nextcloud doet z'n database-upgrade bij het opstarten). Hersteltest van de backup (één bestand terughalen uit restic, zoals op 21-08). Oude SSH-sleutels en tijdelijke accounts opruimen. Toegangsmatrix nalopen (1 november staat al vast). Proxmox op de TC-1-set en jb-ingest meenemen als ze aan staan.
sudo systemctl stop hdvp-onderhoud.timer en draai de ronde later handmatig.hdvp-onderhoud.sh en hdvp-verifieer.sh met systemd-timer op de eerste vrijdag van de maand, zelfcontrole na de reboot en ntfy-rapport. Dagelijkse security-updates via unattended-upgrades. Aanleiding: 5 openstaande Docker-updates en een reboot die 40 dagen wachtte.