Modul 8 · 8.3
Overvåg din server
Modul 8: Backup og overvågning · Læsetid: 10 minutter
Læringsmål: Efter denne lektion kan du afgøre, hvad du overvåger på din server (udefra og indefra), hvilke tærskler der giver mening, og hvordan du sørger for, at en alarm faktisk når frem til dig, uden at du drukner i beskeder.
Centrale begreber: overvågning udefra, overvågning indefra, oppetid, http-tjek, porttjek, certifikatudløb, diskplads, hukommelse, load, heartbeat (dead man's switch), tærskel, alarmkanal, alarmtræthed, udbyderens grafer
Hvorfor overvåge?
Uden overvågning hører du om problemer fra dine kunder, eller slet ikke. Et website, der har været nede siden lørdag, et certifikat, der udløb, en disk, der blev fuld, en backup, der i tre uger stille og roligt er slået fejl: alt sammen ting, du kunne have set i tide. Overvågning betyder: et program holder øje hele tiden og advarer dig, når noget ikke stemmer.
God overvågning besvarer to spørgsmål:
- Virker det for brugeren? Det måler du udefra.
- Går det snart galt? Det måler du indefra: disk, hukommelse, opdateringer, backups.
Udefra: det, brugeren ser
Overvågning udefra kører på en anden maskine end din server, helst hos en anden udbyder. Det er logisk: hvis din server er nede, kan den ikke selv advare dig.
| Tjek | Hvad | Hvorfor |
|---|---|---|
| http(s) | henter en side hvert minut og kigger på statuskoden (200) og eventuelt et ord på siden | websitet virker faktisk, ikke kun serveren |
| port | opretter forbindelse til for eksempel port 22 eller 443 | tjenesten lytter og kan nås |
| ping | sender en lille ICMP-pakke | serveren lever (men siger intet om dit website) |
| certifikat | læser certifikatet og udløbsdatoen | advarer i god tid, før det udløber |
| DNS | slår A-recorden op | navnet peger stadig på den rigtige server |
Certifikatet fortjener ekstra opmærksomhed. Let's Encrypt-certifikater gælder kort tid og fornyes automatisk (lektion 7.3), men hvis fornyelsen stille slår fejl, opdager du det først, når besøgende får en advarsel. Let's Encrypt sender siden juni 2025 ikke længere påmindelsesmails om certifikater, der er ved at udløbe, og anbefaler selv overvågning. Et certifikattjek, der advarer ved mindre end 14 dages gyldighed, er altså ingen luksus.
Et udbredt program til at gøre det selv er Uptime Kuma, som du installerer i en container i lektion 9.4. Sæt det helst ikke op på den samme server, som det skal overvåge, eller kombinér det med et ekstra, eksternt tjek. Der findes også tjenester fra tredjeparter, der gør det samme. Vælg en, der passer til dig, og vær opmærksom på, hvor de holder til, hvis der kan stå data om dine kunder i beskederne.
Indefra: det, der snart går galt
Nogle problemer ser du først udefra, når det er for sent. Dem måler du på selve serveren:
| Hvad | Sådan ser du det | En fornuftig tærskel |
|---|---|---|
| Diskplads | df -h | advarsel over 80 %, alarm over 90 % |
| Inodes (antal filer) | df -i | det samme; en disk kan være "fuld" af millioner af små filer |
| Hukommelse | free -h, meldinger "Out of memory" i journalctl -k | hver OOM-melding er et signal |
| Load | uptime, top | i længere tid højere end antallet af vCPU'er |
| Fejlede tjenester | systemctl --failed (lektion 6.1) | hver fejlet tjeneste |
| Opdateringer og genstart | /var/run/reboot-required, apt list --upgradable (lektion 4.2) | sikkerhedsopdatering ældre end to dage |
| Backups | slutningen af dit backupscript (lektion 8.2) | hver fejlet eller udeblevet kørsel |
Det kan klares med et enkelt script og en timer (lektion 6.3), der sender en besked, når en tærskel overskrides, eller med et overvågningsprogram med en agent på serveren (kendte open source-eksempler er Netdata og kombinationen Prometheus med node_exporter). Start i det små: disk, fejlede tjenester og backups fanger de fleste problemer.
Graferne i din udbyders panel (processor, hukommelse, netværk, disk over en dag op til et år) er et fint supplement til at se tendenser: vokser din disk et par procent hver måned, ved du, hvornår den er fuld. Hos WebOké finder du dem i VPS-skærmbilledet; hos andre udbydere tilsvarende. De sender som regel ingen besked, så de erstatter ikke overvågning.
Heartbeat: besked, når der ikke sker noget
Nogle ting skal du netop overvåge for, at et signal udebliver. Nattens backup er det bedste eksempel: hvis scriptet slet ikke starter (timer slået fra, server slukket, script i stykker), kommer der heller ingen fejlbesked.
Løsningen hedder en heartbeat eller dead man's switch: din overvågning forventer et lille signal hver dag. Backupscriptet sender til sidst, kun hvis alt er gået godt, en lille http-forespørgsel til en fast, hemmelig URL hos din overvågning:
restic backup ... && restic check && curl -fsS -m 10 https://status.example.com/api/push/Xyz123abc?status=up >/dev/nullUdebliver signalet en dag, får du en besked. Uptime Kuma har monitortypen Push til det; der findes også programmer, du selv kan hoste, som Healthchecks. Sådan overvåger du med én linje, om din backup faktisk kørte.
Beskeder, der kommer frem, og ikke for mange
En besked, som ingen læser, er ikke overvågning. Sørg for tre ting:
- En alarmkanal, du faktisk ser: en push-besked på din telefon, en chatkanal, sms. Mail kan bruges, men kun hvis din server pålideligt kan sende mail, og mail bliver let overset. Brug to kanaler til de vigtigste beskeder.
- Ikke afhængig af det, du overvåger. Sender din server selv mailen om en fuld disk, kommer den ikke, når disken er fuld. Overvågning udefra og en heartbeat fanger det.
- Få, men berettigede. Får du ti beskeder hver dag, som du ikke gør noget ved, begynder du at ignorere dem, også den ene, der betyder noget. Det kaldes alarmtræthed. Sæt tærsklerne, så en besked betyder: du skal gøre noget. Lad først en besked gå af efter et par fejlede tjek i træk (for eksempel tre gange), så én tabt pakke ikke vækker dig.
Test dine beskeder: stop en tjeneste et øjeblik, og se, om beskeden kommer, og hvor lang tid det tog.
Det skal du ikke gøre
- Overvågningssider, der er åbne for alle, med interne navne og adresser. En offentlig statusside er fin, men vis kun det, besøgende må vide.
- En administratorkonto til din overvågning uden stærk adgangskode og 2FA. Den, der kommer ind i din overvågning, kan slå beskeder fra.
- Agenter med flere rettigheder end nødvendigt. En overvågningsagent behøver som regel ikke at være root.
Opsummering
- Overvåg udefra, om det virker (http, port, certifikat, DNS), fra en anden maskine, og indefra, om det snart går galt (disk, hukommelse, tjenester, opdateringer, backups).
- Certifikater fortjener et eget tjek: Let's Encrypt sender siden juni 2025 ikke længere påmindelsesmails.
- En heartbeat melder, når et signal udebliver; ideelt til backups og planlagte opgaver.
- Vælg en alarmkanal, du faktisk ser, uafhængigt af selve serveren, og sæt tærskler, så hver besked kræver handling.
- Din udbyders grafer viser tendenser, men sender som regel ingen besked.
Quiz
Opgave
Opgave O8.3: Din overvågningsliste. Lav en overvågningsliste til din egen server: hvilke tjek udefra (med hvilket interval og hvorfra), hvilke indefra (med tærskler), hvilke heartbeats, og via hvilken kanal beskederne kommer. Opsæt mindst ét eksternt http- eller certifikattjek og én heartbeat (for eksempel til din backup), og test beskeden ved at stoppe en tjeneste et øjeblik. Notér, hvor lang tid der gik, før beskeden kom.
Opgave O8.3: Din overvågningsliste
Denne opgave laver du selv; ingen tjekker den. Afkryds hvad du har gjort, og markér opgaven som udført.
Kontrol udefra fra en anden maskine (helst hos en anden udbyder), hvert 1. til 5. minut med et par gentagelser. Certifikat 14 dage, disk 80/90%, systemctl --failed, heartbeat kun ved en vellykket backup. Advarsler, der ikke kræver handling: fjern dem eller hæv tærsklen.
Dine afkrydsninger og noter forbliver kun i denne browser; vi sender dem ingen steder hen. Er du logget ind, gemmer vi kun i Mine kurser, at du har udført opgaven.
Læs mere
- Ingen adgang til din VPS længere: hvad nu?
- Let's Encrypt, Expiration Notification Service Has Ended: https://letsencrypt.org/2025/06/26/expiration-notification-service-has-ended
- Uptime Kuma (GitHub): https://github.com/louislam/uptime-kuma
- VPS: fra første login til sikker server 8.3: Overvågning udefra og indefra
- VPS: fra første login til sikker server 7.1: Uptime Kuma: overvåg dine sites og din server
