Kmom04: Monitoring

By . Latest revision .

Nu när vi har ett system uppe och rullande behöver vi veta när något går fel, vi ska övervaka hela produktionsmiljön och alla dess delar.

Detta kmom är en vecka långt, inte två!

Överblick av olika delar som kan ingå i ett system med övervakning.

Överblick av olika delar som kan ingå i ett system med övervakning.

#Läsanvisningar

Läsanvisningar hittar ni på sidan bokcirkel.

Kolla i lektionsplanen för att se när vi träffas för bokcirkeln.

#Monitoring

När system ligger utspridda på virtuelle servrar jorden runt är det inte lätt att hålla koll på att alla servrar och system hela tiden är igång. Här kommer infrastruktur monitoring in i bilden men vi kan också ha application monitoring där vi övervakar metrics från system. T.ex. hur många request varje server har fått eller hur många 404 requests.

#Läs och titta

#Log management

Log management är processen av att samla in, lagra, hantera och analysera loggar från infrastruktur, system och applikation. Det är ett väldigt brett ämne då typ allt genererar loggar av något slag och system för att sköta log hantering är väldigt avancerade. För att få en överblick av delarna som ingår i log management och vilken användning olika roller har av log management läs följande:

#Läs och titta

#Application performance monitoring (APM)

APM kan även kallas Application Performance Management (också APM), enligt vissa är det skillnad. APM är att övervaka, hantera och diagnosera prestanda, tillgänglighet och användare upplevelse av applikationer. Avancerade program används för att göra om data till “business value”.

#Läs och titta

#Observability

På senare år har det även börjat talas mycket om Observability vilket hänger ihop med monitoring. Vi kan se monitoring som att ha kolla på hälsan av våra system medan observability är att ha djup insikt i hur våra system beter sig. Observability ska hjälpa oss hitta fel och problem.

#Läs och titta

#Prometheus och Grafana

Vi ska använda oss av Prometheus, ett väldigt populärt verktyg för att lagra tidsserie data och visualisera data. Prometheus har inbyggt stöd för att visa simpla grafer för data men oftast använder man det tillsammans med externa visualiseringsverktyg. Vi ska använda Grafana för att bygga dashboards med grafer och diagram över datan från Prometheus.

#Läs och titta

#Att göra

Nu ska ni starta upp prometheus, grafana och koppla ihop dem.

  • Kolla på videorna 401-403 i spellistan kursen devops. Gör det lokalt på er dator för att testa få det att fungera.

  • Kolla på videorna 410-413 i spellistan kursen devops. PS i video 412 körs det på produktionsservrar men ni kan göra det lokalt som med allt annat, det är likadant.

#Läsanvisningar

Läsanvisningar hittar ni på sidan bokcirkel.

Kolla i lektionsplanen för att se när vi träffas för bokcirkeln.

#Uppgifter

Del 1.

  1. Utöka Ansible provisioning koden så att ni skapar en till server som heter och har typen monitoring.

    • Öppna passande portar i security groups.
  2. Skriv Ansible kod som installerar och startar Prometheus, Grafana och Alertmanager på den nya VM instansen.

  3. Lägg till en Reverse Proxy i er Nginx konfiguration till Grafana och Grafana konfiguration. Länka till er grafana sida, <domain>/grafana i er redovisningstext och skriv inloggs uppgifter.

Del 2.

  1. Ta hjälp av AI för att skapa en monitoring strategi och implementer den i er Microblog. Fel som uppstår i appen ska fångas och visualiseras i Grafana. När ett fel uppstår ska ett alarm skickas till https://webhook.site.

  2. Implementer en ny feature i Microbloggen som genererar ett fel så att jag kan testa att er monitoring funkar.

  3. Skapa en guide som visar hur jag triggar felet och kan se det i grafana och Alert:et. Förklara hur ni har implementerat monitoring i er kod.

Glöm inte att öppna portar i Azure!

#Extrauppgift

Om ni får tid över, testa log management verktyget Loki. Försök få loggar från Nginx eller microbloggen till Grafana med hjälp av Loki.

#Resultat & Redovisning

På Canvas är detta en gruppinlämning. Svara på frågorna tillsammans.

Se till att följande frågor besvaras i texten:

  1. Beskriv vad som menas med Monitoring, olika saker som brukar övervakas och vad det används till.

  2. Beskriv Log management och vad det används till.

  3. Beskriv APM och vad det används till.

  4. Beskriv Observability och försök koppla det till ovanstående frågor.

  5. Testade ni Loki? Fick ni ihop det, i så fall tror du att man hade hunnit med det i kursmomentet?

  6. Skicka med er guide.

  7. Skicka med länk till er webhook.site.

  8. Skriv inloggning till er grafana sida.

  9. Hur var storleken på kursmomentet?

#Revision history

  • 2025-12-02: (D, aar) Inkluderat del om använda AI för monitoring strategi.
  • 2023-11-24: (C, aar) Släppt för HT23.
  • 2020-11-19: (B, aar) Släppt för HT20.
  • 2019-10-15: (A, aar) Första versionen.

Document source.