Case
Herdbook: logboek voor applicaties en servers
Herdbook bouwden we om ons eigen beheer en onze monitoring te verbeteren. Het is een open-source logboek voor ontwikkelaars en beheerders: welke applicatie draait waar, hoe staat ze ervoor en wat kost het allemaal.
Over dit project
Eén plek voor alles wat je beheert
Door de jaren heen is het aantal projecten dat wij bouwen en beheren flink gegroeid. Daarmee groeide ook de vraag hoe we het overzicht houden. De antwoorden op eenvoudige vragen stonden op vijf plekken: in een spreadsheet, bij de domeinregistrar, in een uptime-monitor, in losse incidentnotities en in de wachtwoordmanager. Welk domein verloopt volgende maand? Wat deden we de vorige keer dat deze server uitviel? Wat kost dit alles per jaar? Om ons beheer en onze monitoring te verbeteren, bouwden we Herdbook: één overzicht dat die antwoorden samenbrengt en doorverwijst naar de rest. Omdat andere ontwikkelaars en beheerders hetzelfde probleem kennen, hebben we het als open source beschikbaar gemaakt.
Het project staat centraal. Een project heeft omgevingen, zoals productie en test, en elke omgeving draait op een of meer servers. Daaromheen hangen domeinen, leveranciers en klanten. Omdat Herdbook weet wat van wat afhangt, zie je bij elke server direct wat er meegaat als die uitvalt.
Bewust op je eigen machine
Een overzicht van je hele infrastructuur is gevoelige informatie. Daarom draait Herdbook niet in de cloud van een ander, maar op een eigen machine, en is het alleen bereikbaar via een privénetwerk zoals Tailscale of het lokale netwerk. Inloggen kan alleen met tweestapsverificatie. Wachtwoorden en sleutels slaat Herdbook nooit op: het verwijst naar het item in je wachtwoordmanager (Vaultwarden of Bitwarden). Lettertypen, iconen en scripts komen allemaal van Herdbook zelf, zodat er geen gegevens naar derden lekken. Valt een check uit, dan controleert Herdbook eerst de eigen internetverbinding, zodat een storing aan je eigen kant niemand onnodig wakker maakt.
Wat Herdbook doet
Inventaris rond het project: omgevingen, servers, netwerken, domeinen, hostnamen, leveranciers en klanten
Uptime-checks voor websites, certificaten, DNS en servers, met meldingen via Pushover, ntfy of e-mail
Incidentverslagen met tijdlijn en actiepunten, runbooks met versiegeschiedenis en een onderhoudslog
Verlengingen van domeinen, contracten en abonnementen in één kalender, met een wekelijks overzicht
Kosten per jaar, kwartaal en maand, per leverancier, project en klant, met een prognose voor twaalf maanden
Een kaart van alle verbindingen en een statusscherm voor op een tv aan de muur
Open source (AGPL-3.0), gebouwd in Laravel en Filament, in het Nederlands en Engels
Plan een vrijblijvend gesprek met de developer die je project ook bouwt.
Na een kort gesprek weet je wat past en wat het ongeveer kost. Geen verplichtingen.