{"id":30,"date":"2026-07-02T21:00:00","date_gmt":"2026-07-02T19:00:00","guid":{"rendered":"https:\/\/airex.se\/blogg\/noc-i-garaget\/"},"modified":"2026-07-02T21:00:00","modified_gmt":"2026-07-02T19:00:00","slug":"noc-i-garaget","status":"publish","type":"post","link":"https:\/\/airex.se\/blogg\/noc-i-garaget\/","title":{"rendered":"\u00d6vervakning svarar p\u00e5 om den \u00e4r uppe. Det \u00e4r s\u00e4llan fr\u00e5gan man har."},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">\u00d6vervakningen sa att allt var gr\u00f6nt. N\u00e4tet var l\u00e5ngsamt \u00e4nd\u00e5.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Det \u00e4r den situationen som avsl\u00f6jar vad klassisk \u00f6vervakning faktiskt g\u00f6r. Den svarar p\u00e5 en enda fr\u00e5ga \u2014 <em>\u00e4r den uppe?<\/em> \u2014 och den svarar bra p\u00e5 den. Problemet \u00e4r att n\u00e4r n\u00e5got k\u00e4nns fel har man n\u00e4stan aldrig den fr\u00e5gan.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Fr\u00e5gorna man faktiskt har<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Skriv ner vad du undrar n\u00e4sta g\u00e5ng en anv\u00e4ndare s\u00e4ger att &#8221;internet \u00e4r segt&#8221;. Min lista s\u00e5g ut s\u00e5 h\u00e4r:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u00c4r l\u00e4nken <em>l\u00e5ngsam<\/em> \u2014 och sedan n\u00e4r?<\/li>\n<li>Vem \u00e4ter bandbredden just nu?<\/li>\n<li>Har n\u00e5gon \u00e4ndrat i konfigurationen sedan i f\u00f6rra veckan?<\/li>\n<li>Hur mycket f\u00e5r jag faktiskt igenom mellan platserna om jag m\u00e4ter i st\u00e4llet f\u00f6r att hoppas?<\/li>\n<li>\u00c4r det h\u00e4r normalt f\u00f6r en tisdag, eller \u00e4r det avvikande?<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Inte en enda av dem besvaras av en gr\u00f6n prick. S\u00e5 jag byggde ett verktyg per fr\u00e5ga.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Ett verktyg per fr\u00e5ga<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>&#8221;\u00c4r den l\u00e5ngsam, och sedan n\u00e4r?&#8221;<\/strong> \u2014 SmokePing m\u00e4ter latens, jitter och paketf\u00f6rlust kontinuerligt mot varje l\u00e4nk och varje VPN-tunnel, och ritar det som ett band snarare \u00e4n en linje. Man ser inte bara medelv\u00e4rdet utan spridningen, och spridningen \u00e4r det som g\u00f6r ett samtal hackigt medan grafen ser fin ut.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>&#8221;Vem \u00e4ter bandbredden?&#8221;<\/strong> \u2014 Akvorado tar emot fl\u00f6desdata fr\u00e5n routrarna och kan svara p\u00e5 vilka adresser, portar och protokoll som stod f\u00f6r trafiken. Skillnaden mot en bandbreddsgraf \u00e4r avg\u00f6rande: grafen s\u00e4ger <em>att<\/em> l\u00e4nken var full, fl\u00f6dena s\u00e4ger <em>vem<\/em> som fyllde den. Utan det andra svaret blir fels\u00f6kningen gissningar.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>&#8221;Har n\u00e5gon \u00e4ndrat n\u00e5got?&#8221;<\/strong> \u2014 Oxidized h\u00e4mtar konfigurationen fr\u00e5n varje n\u00e4tverksenhet, oavsett tillverkare, och sparar den i versionshantering. \u00c4ndras n\u00e5got postas en <em>diff<\/em> i chatten. Inte en notis om att n\u00e5got \u00e4ndrats \u2014 de faktiska raderna.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>&#8221;Hur mycket f\u00e5r jag igenom?&#8221;<\/strong> \u2014 schemalagda genomstr\u00f6mningsm\u00e4tningar mellan platserna, med larm n\u00e4r resultatet f\u00f6rs\u00e4mras j\u00e4mf\u00f6rt med tidigare m\u00e4tningar.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>&#8221;\u00c4r det normalt?&#8221;<\/strong> \u2014 tidsserier med larmregler, och ovanp\u00e5 det en liten agent som v\u00e4ger samman h\u00e4ndelser fr\u00e5n de andra verktygen och skriver en sammanfattning i chatten. Faller modellen bort skickas r\u00e5data i st\u00e4llet \u2014 sammanfattningen f\u00e5r aldrig vara det enda som n\u00e5r fram.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Den m\u00e4tning som hade sparat ett dygn<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Genomstr\u00f6mningsm\u00e4tningen f\u00f6rtj\u00e4nar en egen anm\u00e4rkning, f\u00f6r den bygger p\u00e5 ett verkligt misslyckande.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Jag har <a href=\"https:\/\/airex.se\/blogg\/klustret-och-kabeln\/\">tidigare skrivit<\/a> om ett kluster som h\u00e4ngde sig, d\u00e4r jag utesl\u00f6t fem mjukvaruorsaker innan jag uppt\u00e4ckte att en l\u00e4nk f\u00f6rhandlat fram en tiondel av f\u00f6rv\u00e4ntad hastighet p\u00e5 grund av en kabel med tv\u00e5 fungerande tr\u00e5dpar.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">En schemalagd m\u00e4tning som k\u00f6rts varje natt hade visat det p\u00e5 f\u00f6rsta f\u00f6rs\u00f6ket. Inte som en teori att utreda \u2014 som en siffra som var tio g\u00e5nger f\u00f6r l\u00e5g. Det \u00e4r hela po\u00e4ngen med att m\u00e4ta genomstr\u00f6mning i st\u00e4llet f\u00f6r att bara kontrollera att n\u00e5got svarar: en l\u00e4nk som fungerar d\u00e5ligt <em>fungerar<\/em>, och rapporterar d\u00e4rf\u00f6r inget fel.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Konfigurationsdrift \u00e4r den tysta sorten<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Av allt i h\u00f6gen \u00e4r konfigurationsdiffen det jag skulle installera f\u00f6rst om jag bara fick v\u00e4lja ett.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ingen \u00e4ndrar n\u00e5got. Alla \u00e4r \u00f6verens om att ingen \u00e4ndrar n\u00e5got. \u00c4nd\u00e5 ser konfigurationen annorlunda ut \u00e4n f\u00f6rra m\u00e5naden \u2014 en tillf\u00e4llig regel som blev permanent, ett f\u00e4lt n\u00e5gon justerade under en incident, en inst\u00e4llning som en firmwareuppdatering skrev om \u00e5t en.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ingen av de \u00e4ndringarna larmar. Alla dyker upp senare, i skepnad av ett problem som verkar om\u00f6jligt. En daglig diff g\u00f6r dem synliga <em>medan man fortfarande minns vad man gjorde i tisdags<\/em>, vilket \u00e4r den enda tidpunkt d\u00e5 de g\u00e5r att f\u00f6rst\u00e5.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Vad det kostar<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Nio verktyg blev sjutton containrar p\u00e5 en maskin med rej\u00e4lt tilltaget minne. Det \u00e4r, om man ska vara \u00e4rlig, absurt mycket maskineri f\u00f6r ett hemman\u00e4t.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Tv\u00e5 saker g\u00f6r det f\u00f6rsvarbart. Det ena \u00e4r att det \u00e4r ett labb som speglar det jag m\u00f6ter hos kunder \u2014 verktyg man aldrig k\u00f6rt sj\u00e4lv \u00e4r verktyg man inte kan rekommendera. Det andra \u00e4r att varje del svarar p\u00e5 en fr\u00e5ga de andra inte kan svara p\u00e5; det finns ingen \u00f6verlappning som hade g\u00e5tt att rationalisera bort.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Men kostnaden ska s\u00e4gas rakt ut: sjutton containrar \u00e4r sjutton saker som kan g\u00e5 s\u00f6nder, och <strong>insamling \u00e4r inte gratis<\/strong>. Varje verktyg kr\u00e4ver att enheterna samarbetar \u2014 fl\u00f6desexport ska sl\u00e5s p\u00e5, avfr\u00e5gningsuppgifter ska in per enhet, m\u00e4tservrar ska st\u00e5 p\u00e5 plats. Den delen \u00e4r fortfarande manuell hos mig, och den \u00e4r den verkliga tr\u00f6skeln. Att starta containrarna tog en kv\u00e4ll. Att f\u00e5 n\u00e4tverksutrustningen att ber\u00e4tta n\u00e5got tar l\u00e4ngre tid \u00e4n s\u00e5.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">F\u00e4llorna vid drifts\u00e4ttningen<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Tre som \u00e4r v\u00e4rda att spara.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Portkrock med n\u00e5got man gl\u00f6mt.<\/strong> Ett av verktygen ville ha en port som redan anv\u00e4ndes av ett gammalt experiment p\u00e5 samma maskin. Trivialt att flytta, men en p\u00e5minnelse om att en maskin som samlat p\u00e5 sig tj\u00e4nster i flera \u00e5r har en portkarta ingen har i huvudet.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Svenska tecken.<\/strong> Konfigurationsinsamlaren kraschade p\u00e5 \u00e5\u00e4\u00f6 tills teckenkodningen sattes explicit i containern. Standardv\u00e4rdet i en slimmad basavbild \u00e4r s\u00e4llan UTF-8, och den som skriver verktyget har s\u00e4llan en enhet med svenska kommentarer i konfigurationen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Minimala basavbilder som saknar det andra f\u00f6ruts\u00e4tter.<\/strong> Databasens h\u00e4lsokontroll misslyckades eftersom den avskalade varianten hade en nedbantad version av ett verktyg som saknade den flagga kontrollen anv\u00e4nde. Bytet till den fylligare avbilden l\u00f6ste det. &#8221;Mindre avbild&#8221; \u00e4r inte gratis \u2014 det \u00e4r en avv\u00e4gning som ibland faller ut \u00e5t fel h\u00e5ll.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">S\u00e5 vet du att det funkar<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Provocera fram en f\u00f6rs\u00e4mring.<\/strong> Begr\u00e4nsa en l\u00e4nk medvetet och se om n\u00e5got larmar. \u00d6vervakning som aldrig utl\u00f6st ett larm har inte bevisat n\u00e5gonting.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u00c4ndra en rad i en konfiguration<\/strong> och kontrollera att diffen dyker upp d\u00e4r du v\u00e4ntar dig. G\u00e4rna en fredagseftermiddag, s\u00e5 att du vet att den fungerar den dag det inte var du som \u00e4ndrade.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>St\u00e4ll en fr\u00e5ga du inte kunde besvara f\u00f6rut.<\/strong> &#8221;Vilken adress stod f\u00f6r mest trafik i g\u00e5r kv\u00e4ll?&#8221; F\u00e5r du ett svar p\u00e5 tio sekunder var bygget v\u00e4rt det. F\u00e5r du inte det saknas en bit i insamlingen \u2014 och d\u00e5 \u00e4r det den biten som \u00e4r arbetet, inte fler verktyg.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Vad jag tar med mig<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u00d6vervakning och observerbarhet \u00e4r inte samma sak, och skillnaden \u00e4r inte akademisk. \u00d6vervakning svarar p\u00e5 fr\u00e5gor du best\u00e4mt i f\u00f6rv\u00e4g. Observerbarhet l\u00e5ter dig st\u00e4lla fr\u00e5gor du inte t\u00e4nkt p\u00e5 \u00e4nnu \u2014 och det \u00e4r alltid de fr\u00e5gorna man har klockan elva p\u00e5 kv\u00e4llen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Och den obekv\u00e4ma insikten, som g\u00e4ller lika mycket h\u00e4r som i allt annat jag byggt det h\u00e4r \u00e5ret: det roliga var att s\u00e4tta upp verktygen, och det tog en kv\u00e4ll. Det som ger v\u00e4rdet \u00e4r att f\u00e5 enheterna att ber\u00e4tta, och att sedan faktiskt titta. Ingen av de delarna g\u00e5r att installera.<\/p>\n\n","protected":false},"excerpt":{"rendered":"<p>Allt lyste gr\u00f6nt och n\u00e4tet var l\u00e5ngsamt \u00e4nd\u00e5. Nio verktyg, en fr\u00e5ga var: \u00e4r den l\u00e5ngsam och sedan n\u00e4r, vem \u00e4ter bandbredden, och har n\u00e5gon \u00e4ndrat i konfigurationen sedan i f\u00f6rra veckan?<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-30","post","type-post","status-publish","format-standard","hentry","category-nat-och-sakerhet"],"_links":{"self":[{"href":"https:\/\/airex.se\/blogg\/wp-json\/wp\/v2\/posts\/30","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/airex.se\/blogg\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/airex.se\/blogg\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/airex.se\/blogg\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/airex.se\/blogg\/wp-json\/wp\/v2\/comments?post=30"}],"version-history":[{"count":0,"href":"https:\/\/airex.se\/blogg\/wp-json\/wp\/v2\/posts\/30\/revisions"}],"wp:attachment":[{"href":"https:\/\/airex.se\/blogg\/wp-json\/wp\/v2\/media?parent=30"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/airex.se\/blogg\/wp-json\/wp\/v2\/categories?post=30"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/airex.se\/blogg\/wp-json\/wp\/v2\/tags?post=30"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}