Grund för CI/CD och observerbarhet
Du vill att deploys ska vara ett knapptryck och att avvägningar ska nå dig före kunden.
Den här arkitekturen är inte glamorös, men den avgör hur snabbt och tryggt ett team levererar. GitHub Actions automatiserar bygge, test och deploy, Terraform gör infrastrukturen reproducerbar, och Grafana-stacken gör systemet observerbart med larm på det som faktiskt betyder något. Målet är korta, ofta återkommande releaser och avvikelser som upptäcks via SLO:er - inte via en arg kund.
Komponenter
GitHub Actions
Pipeline för bygge, test och deploy som körs på varje push och pull request.
Terraform
Infrastruktur som kod med plan-diff och granskning före varje förändring.
Prometheus / Grafana
Insamling och visualisering av mätvärden; en gemensam bild av systemets hälsa.
Loki / OpenTelemetry
Strukturerade loggar och spårning kopplade till mätvärden för felsökning.
Larm på SLO:er
Larmar på det användaren känner (latens, felkvot) i stället för på brus.
Avvägningar
GitHub Actions framför egen CI-server
- För
- Inget att driva, lever bredvid koden och har ett moget ekosystem av actions.
- Emot
- Kostnad för minuter på tunga byggen och en viss inlåsning i plattformen.
Terraform framför klickad infrastruktur
- För
- Reproducerbart, granskningsbart och återställbart - ändringar syns i diff.
- Emot
- State att hantera och en inlärningskurva innan teamet är hemma i det.
Self-hosted Grafana framför SaaS (Datadog m.fl.)
- För
- Full kontroll och förutsägbar kostnad utan prissättning per host eller volym.
- Emot
- Stacken blir er att driva; SaaS tar bort driften men kan bli dyrt med volym.
Larm på SLO framför larm på allt
- För
- Färre, meningsfulla larm - minskar larmtrötthet och fångar verkliga problem.
- Emot
- Kräver att ni definierar SLO:er och accepterar att inte allt larmar direkt.
Kostnad
GitHub Actions ingår med en gratiskvot och kostar därutöver per byggminut - för de flesta team handlar det om hundralappar i månaden. Self-hosted Grafana-stack är öppen källkod; kostnaden är drifttiden och den lagring mätvärden och loggar kräver. En SaaS-motsvarighet tar bort driften men prissätts per host eller datavolym och växer med systemet.
Ska vi bygga den här hos er?
En referensarkitektur är en startpunkt, inte en mall - det rätta valet beror på er last, ert team och era krav. Hör av dig så anpassar vi den efter sammanhanget.