The Gathering Technical blog Tech:Net

TG-nettet for dummies!

06 Feb 2019, by Kristian Lyngstøl from Tech:Net

"Hva skal vi blogge om?"

"Lag en skikkelig noob forklaring om hvordan nettverket er satt opp på tg. Slik at selv mennesker som meg forstår :D"

CHALLENGE ACCEPTED!

Håper du er glad i lange blog-poster!

Kant og gulv

Så internett på TG, hvordan funker det egentlig? Så en "noob" forstår.... Hvor skal man begynne? På internett? Nei, begynner på andre enden jeg! På PC'en din!

Når du kommer på TG har du med deg en pc, finner plassen din og drar frem kabelen din. Og kobler den til. Du kobler da til det vi kaller en "kant-svitsj" eller "aksess svitsj". Det er det vi kaller det utstyret som er helt på kanten av nettverket, mot brukerene våre. Alle deltakere som kobler seg på samme kantsvitsj befinner seg på samme lokalnettverk - samme LAN, faktisk. Om du vet hva en IP adresse er så betyr det at du og de du deler svitsjen på har ip-adresser som er i samme "range" - eller ved sidenav hverandre om du vil, i samme serie. Vi deler opp så hver kantsvitsj kan ha opp i mot 62 unike IP'er.

På samme lokalnettverk kan alle pc'er snakke rett med hverandre på det som kalles "lag 2" (lag 1 er det elektriske laget - lag 2 er "lan"-laget om du vil, lag 3 er "internett").

Med direkte så mener jeg at det ikke er noe filtrering og du kan snakke uten at "vi" styrer stort med det. Det er slik LAN fungerte i gamledager. Vi kan i prinsippet bare koble alle våre svitsjer sammen slik i en stjerne. På mindre dataparties så er det ofte det man gjør: Man har en svitsj i "midten" og 3-5 andre koblet på den. Rent fysisk gjør vi det på TG også, men når du har 120 kantsvitsjer (120 deltakersvitsjer, om du vil) så får man et problem med støy!

Støy? Tenk deg at du befinner deg i et rom med 5 folk, det går fint å snakke med alle da, og det går fint å snakke en og en. I et rom med 40 går det også greit. Det går faktisk fint i et 17 mai-tog med flere tusen folk også. Inntill noen begynner å rope "SKAL VI SPILLE DUKE NUKEM 3D?" så høyt at alle hører det. Med 5 folk er det ikke et stort problem - du overlever, med 40-50 går det ok-ish. Men om et helt søttendemaitog roper, blir det bråkete. Og forskjellen på et rom og et LAN er at i et rom så avtar jo lyden med avstand, så du blir ikke forstyrret om noen står lenger bort, men i et LAN så gjør det ikke det. Heldigvis er det sånn at om du snakker kun til en pc så er det bare den som får signalet, men det er masse ting en PC gjør som går til "alle" - alt fra å finne LAN-spill til å lete etter printere til å spre virus.... Jo flere som deler samme LAN, jo mer støy.

Derfor har vi delt inn TG slik at hver kantsvitsj har sitt eget nettverk (andre ord på det samme: ett subnet, noen vil si "vlan", men det er litt missvisende).

I vårt eksempel blir det som om hver kantsvitsj er et eget rom.

Hver kantsvitsj er koblet med 3 "uplink"-kabler opp til det vi kaller en distribusjonssvitsj (vi pleier å kalle det en distro på TG). Vi kaller det uplink når man går fra en mindre dings til en åpenbart større/mer sentral... veldig vitenskaplig ....

Distro

distro

Distroene er de svitsjene dere kan se i midtgangen. Se på det som at du befinner deg i et rom, og om du går ut i gangen når du en distro-svitsj.

For å sørge for at de 40 folka du deler kantsvisjen med kan få litt bedre hastighet - og for at konsekvensen ved feil er mindre - så har vi trukket ikke en, men TRE kabler fra kantsvitsjene til distroene. Disse er satt opp så det for svitsjene opptrer som én enkel kabel - men med tre ganger så høy hastighet. Om noen tar ut en av de tre vil vi fortsatt ha 2Gbit/s igjen å gå på.

En annen litt kompliserende faktor er at hver av distro-svitsjene våre består av 3 fysiske svitsjer som er helt like. Men disse tre svitsjene er satt opp til å snakke sammen med en intern protokoll og oppfører seg NESTEN som om de var en og samme svitsj. Så for alle praktiske formål kan du tenke på det som en enkelt svitsj, selv om det fysisk er tre av dem.

Hver av distro-svitsjene våre er koblet på cirka 10-15 kantsvitsjer. Kanskje 500 deltakere? I tillegg kobler vi de trådløse akksesspunktene på disse også (vi holder trådløs litt utenfor).

I gamledager (fram til og med TG17 - skikkelig superlenge siden) brukte vi disse distrosvitsjene som "rutere", det gjør vi ikke dag. En ruter er en nettverksting som skjønner adressering av internett-pakker - et lite logisk nivå over "alle i et rom"-nivået. Fordi våre distrosvitsjer har vist seg å være litt svake så har vi slutta å rute på dem - før kunne trafikk som skulle fra en kantsvitsj til en annen kantsvitsj på samme distro rutes "direkte": fra kantsvitsj A til distro til kantsvitsj B. Det kan de ikke lenger. I stedet sender vi all trafikk som går UT fra en kantsvitsj TIL en distro opp til .... core!

CORE

Så vi har kantsvitsj->distro-> core?

Så distro-svitsjene våre er altså koblet til noe vi kaller "core". Dette er gjort ved at vi har trukket 2 fiberkabler fra taket i vikingskipet ned til hver av distrosvitsjene. Disse fiberkablene kan hver overføre 10Gbit/s. Og akkurat som vi gjorde med de tre kablene fra kant til distro så har vi satt det opp så det fremstår som én logisk kabel.

I "gamledager" hadde vi en faktisk ruter i taket. Det har vi ikke lenger, fordi fiberkabler har en egenskap som din TP-kabel ikke har: Du kan trekke fiberkabler LANGT! En TP-kabel har en maks-lengde på 100 meter. En fiber-kabel slik vi bruker har flere ti-talls kilometer. Da slipper vi slikt som vi hadde under TG17:

duecore

Så når de 2 fiberkablene fra en distro kommer opp i taket så kobles de inn i et "patcheskap". Dette er rett og slett bare et dumt koblingsskap. I andre endren av skapet er det en kabel med 24 fiberkabler, denne kabelen går langs med en "bro" i taket og ned til "NOC"en som dere ser på tribunen - der Tech:Net sitter med den fine grønne lampa. Denne fiberkabelen har vi lagt permanent i vikingskipet.

Siden vi har 9 distro-svitsjer, hver av dem bruker 2 fiberkabler, så bruker vi "bare" 18 av 24 fiberkabler nå, og har 6 vi kan bruke til annet.

Nede ved NOC'en står det en core-ruter, dette er en kraftigere ting, den vi lånte for TG18 og sikter på for TG19 kan veie opp mot 86kg så det er fint å
slippe å bære den helt opp i taket.

Core ser cirka slik ut:

mx

(Her har vi altså vår tekniker på saken! Den store er core, den lille til høyre er ring-node - vi kommer til det!)

Alle distro-svitsjene blir altså koblet inn på core, og om du på din kantsvitsj skal snakke med naboen din som sitter på en annen kantsvitsj - eller noen i helt andre enden av skipet - så går trafikken "opp til" denne ruteren.

For å tegne dette med høyteknologiske hjelpemidler....

tegndistro

Dette er egentlig et veldig tradisjonelt stjerne-nettverk, uten veldig mye eksotiske ting ved seg.

Fra "IP-perspektiv" ser det litt annerledes ut - som jeg forvirret dere med tildigere så gjør vi ikke ruting på distro-svitsjene våre, så de er en slags "kabel-samlere" bare. Så rent logisk ser det mer slik ut:

tegndistro2

Ganske rett fram!!!

Ringen

Men så blir det litt klønete da. Vi skal jo også ut på INTERNETT! Og det er masse små rare ting rundt om i skipet som IKKE er koblet via "core". Det vi har snakket om foreløpig er kun det vi kaller "gulvet" - alle de "vanlige" kantsvitsjene.

I vikingskipet er det masse steder vi trenger nettverk uten at det er lett å koble på via "gulvet". For å løse dette har Tech-crewet lagt en permanent fiber-infrastruktur i vikingskipet, som vi kaller "ringen". Det er rett og slett 6 fiberkabler som sammen danner en ring rundt hele vikingskipet. Hver av "nodene" i ringen befinner seg henholdsvis:.

I "NOC"en - altså på tribunen i vest der også core står. Denne brukes til Tech:Net-crewet, til alle crewene som sitter på tribunen, sponsor-rommene, ned til resepsjonen (aner ikke helt hvor DET strekket går! Men noen vet!) og masse annet - dette er den mest brukte noden. Dere kan skimte ring-noden ved noc'en på bildet av core over.

Videre nordover går det til "elrommet" et rom veldig få folk er inne i - I praksis bare noen få i Tech:Net og HOA (de som eier vikingskipet) - det er her all strømmen i skipet føres inn. Dette er under auditoriet i nordenden. Denne noden brukes blant annet for å dra kabler til auditoriet og ut til enkelte sponsorer og annet som er helt i nord.

Østover er neste stopp i "swing" - et lager i nord østre sving. Dette er bak scenen og til venstre, og brukes - ikke overraskende - til blant annet scenen og alt som skjer der (av og til har vi droppet en ekstra fiber fra taket også, men ikke i det siste tror jeg)..

Neste stopp med klokka er "log" - dette er lageret til bak og til høyre for scenen, der blant annet logistikk-crewet sitter. Og brukes igjen nettopp til logistikk og tilsvarende "ymse".

Videre igjen går vi ned til "south" - lageret i sør øst hvor "creative" har pleid å holde til. Og igjen, brukes til blant annet creative, trådløspunkter, og IKKE MINST, kameraet vi har helt i sørenden av skipet!

Neste stopp er telematikkrommet - dette er det desidert mest kritiske rommet for Tech:Net - det er et bittelite "teknisk rom" i noen ganger i sør vest - ikke langt unna den inngangen dere går inn i ved hovedinnslippet..

Her går det videre igjen til NOC'en, og ringen er sluttet. Hvert strekk i ringen har 6 fiberpar, så vi har litt å gå på siden vi normalt bare bruker ett par til den "logiske" ringen. I tillegg til dette går det en ekstra kabel fra NOC'en og ned til tele-rommet, så vi har 6 + 24 par dit. Vi har også en siste kabel vi faktisk ikke bruker som går fra logistikk og opp til gangene i etasjen over bak scenen. Denne har vi av og til brukt når det stod en buss med produksjonsutstyr bak der.

ringtegn

Her har jeg forøkt å tegne kun de fiberkablene som ligger permanent i skipet - inkludert de 24 parene som går opp i taket.

Så for at resepsjonen skal kunne koble seg på så drar vi typisk to TP-kabler helt fra resepsjonen og opp til NOC'en - i diverse kabelgater og ganger (ikke spør meg hvor de går - dette er her Tech:Support stepper inn!).

På hver av ring-"nodene" har vi en svitsj som er hakket kvassere enn distro-svitsjene våre (Distroene er EX3300 og ringen består av 6 EX4300 eller EX4600 - det er jo større tall så det må være bedre!).

For å spare oss selv litt jobb så har vi satt opp ringen slik at alle 6 nodene fremstår som en logisk svitsj - nesten nøyaktig det samme vi gjør med distroene våre. Så selv om det er fysisk 6 svitsjer så snakker de sammen og later som om de bare er en svitsj.

De er også koblet sammen med 40Gbit/s fiber - i hver retning. Siden det er en faktisk ring betyr det at om vi "mister" en kabel (f.eks. noen kobler ut noe eller vi mister strøm) så vil fortsatt trafikken flyte den andre retningen.

Ringen er det første vi setter opp, så og si. Dette fordi vi faktisk trenger den for å komme på nett selv!

En liten forskjell på ringen og en distro er at siden ringen består av bedre svitsjer så klarer vi å gjøre ruting på den - om de i resepsjonen skal snakke med en pc på scenen går det kun på ringen, ikke via noe core-ruter.

Tele

tele

Ok, men hvordan henger gulvet og ringen og internett sammen?

Da må vi snakke om tele-rommet!

På telerommet er det tre ting vi har som er viktig:

  1. En "ring"-node.
  2. En "tele-gw" - ruter for internett og lokalt. Det var vel 4 svitsjer i en logisk enhet på TG18?
  3. En "tele-fw" - en firewall (brannmur).

Jeg holder brannmuren litt utenfor jeg.

Så vi har snakket om ringen. Det bør være lett å gjette nå, men den "ring-noden" som står på tele-rommet er naturligvis koblet på "tele-gw"-ruteren. Dette er 40Gbit/s.

Det som ikke er like åpenbart er at ring-noden som står ved NOC'en er også koblet med 40Gbit/s til "tele-gw". Via samme fysiske kabel som linken som kobler de to ring-nodene på NOC og tele, men et annet par....

Dette er både forvirrende og kanskje vanskelig å forstå hvorfor. Men tenk dere selv hva som skjer om noe skjer med ring-noden som står på tele: Vi snakket jo om at ringen går i ring og dermed vil trafikken fortsatt flyte om vi mister en node, men det hjelper jo ikke hvis den noden var den som hadde eneste forbindelse mot internett! Derfor denne litt invikla trekanten. Logisk betyr det at ringen har 80Gbit/s mot "tele-gw". Fysisk er det 40Gbit/s fra "ring noc" og 40Gbit/s fra "ring tele"...

Tele-gw igjen er koblet mot internett med 5 stykk 10Gbit/s-linker. Via en brannmur (her har vi brukt litt forskjellige løsninger, men for å ikke forvirre ALT for mye så holder vi det med det).

Core - altså der all trafikken fra "gulvet" kommer - er koblet til tele-gw via to 40Gbit/s linker også.

I tillegg har vi en "stand" med servere som dere kanskje har sett. Denne er igjen koblet både med to 40Gbit/s-linker til core-ruteren, og to
40Gbit/s-linker til "tele gw"....

Om dette er forvirrende for deg er det ikke så rart - jeg var ikke helt klar over detaljene her selv før i helga - men vi tegnet denne flotte tegningen på tavla (blås i de øverste bitene - det er del av en annen tegning).

telecore

Her er "MX" kort for "MX480" - core-ruteren. Og "rs tele" er det samme som "tele gw" - navn er vanskelig.

Så la meg prøve på to tegninger til - en med fysisk kabling og en logisk ruting!

Først det fysiske kaoset:

skipetfysisk

Så det logiske:

skipetpsykisk

....

Som du kanskje ser så er det logiske nettverket på TG ikke ekstremt komplisert egentlig. Men som krussedullene mine kanskje hinter om - dette er ikke noe jeg heller har 100% oversikt over hele tiden - det krever en del tenking. Og jeg måtte dobbeltsjekke litt med resten av Tech:Net mens jeg rundet av denne blog-posten..... Vi har prøvd å forenkle det der vi kan, men HELT enkelt er det ikke. Det som kanskje etterlater et par spørsmål er hvordan ruting fungerer når det er flere måter å komme fra A til B, og hvordan det fungerer om vi "mister" en link...

Kort fortalt.... alle ruterene snakker sammen via en protokoll og forteller hverandre om hva de kan nå. Så om en ruter detter ned så vet naboene alt hva som "lå bak" den og hvordan de kan nå alt det andre. Det vil merkes som et lite "blipp" i nettet, men ellers ikke merkbart i praksis.

Jeg vet ikke om jeg lyktes i å gjøre det forstålig for alle, men kanskje litt mer forstålig? Det er masse smådetaljer man kan fylle inn, men dette er det absolutt viktigste av infrastrukturen vår egentlig.

FOTNOTER

Siden sikkert en del som faktisk kan litt nett vil lese og flisespikke/lure:

Jeg skriver konsekvent om fiberkabler og mener da PAR. Så vi har GU48 opp i taket - 24 par, 48 fiber. Valgte å forenkle litt.

Vi terminerer altså vlan hovedsaklig på core og ring, ikke distro. Vi bruker VirtualChassis for ringen, distro-svitsjer og stand.

Det er selvsagt mye flere kantsvitsjer enn jeg har tegnet, og en og annen raritet jeg kanskje har glemt, men det er ikke viktig egentlig.

WiFi har jeg droppa - vi kobler ap'ene på distro eller ring etter behov og slenger de i et AP-nett tror jeg, og de tunellerer uansett trafikken inn til en wifi-kontroller som står i stand. De kjører, meg bekjent, i samme IP-nett.

Vi kjører OSPF internt og BGP ut mot internett.

I fjor hadde vi "firewall on a stick", det er nok ikke det vi blir å bruke i år. I fjor tok vi altså trafikk fra internett inn på tele-gw, rutet det ut til tele-firewall som firewallet og sendte tilbake på et annet vlan til tele-gw. Lett/logisk, men litt rotete å forklare.

Labels: Tech TG19

På kanten av Tech:Gathering

01 Feb 2019, by Kristian Lyngstøl from Tech:Net

Denne helga samles Tech-crewet for The Gathering 2019 for å begynne siste del av planlegginga for påsken. Dette er en årlig greie, med litt varierende tema og agenda. I år har vi prøvd å få med flere fra Tech:Support, da det er en gjeng drastisk undervurderte folk.

En av tinga vi satser på denne helga er noe jeg ikke har vært med på før: Vi skal snakke oss igjennom hele opprigget, steg for steg. Jeg mistenker det vil gi oss plenty av muligheter til digresjoner, for å si det sånn!

Hvorfor gjøre dette?

Fordi jeg tror ikke det er en eneste person i crewet som faktisk har god oversikt over opprigget vårt i sin helhet, og vi håper å kunne spare mange timer på små endringer.

Det går rett og slett på ting som "Hvorfor bruker vi hele fredagen bare på å få satt opp vår egen arbeidsplass i NOC'en?" og "er det fordi vi gjør ting tregt at det tar så lang tid å sette opp distro-svitsjene, eller er det en annen grunn?"

Jeg skal ikke gå for mye inn i detaljer (Fordi Marius er rett rundt hjørnet for å låne sofaen min), men jeg tror dette blir ... spennende.

Andre ting vi ser på denne helga er diverse småting og små demoer. Ansible til å kjøre kommandoer på svitsjer, netbox for ipam, og ganske mye annet.

Om vi rekker kommer vi også til å kjøre igjennom en del standard Juniper-ting, av det nærmest banale. Fordi vet du hva? Det er faktisk bare en eller to i Tech som jobber med Juniper jevnlig nå. Vi er ikke eksperter faktisk. De fleste av oss er med på dette fordi vi lærer sykt mye hvert enese år.

Jeg lover å komme med en oppdatering, men i mellomtiden kan dere også joine oss på discord (vi er blitt unge og hippe nå! Discord i stedet for IRC!!!!) - INVITE LINK TING

Labels: Tech TG19

The Gathering Origins, LAN tech crew, og ranting

17 Oct 2018, by Kristian Lyngstøl from Tech:Net

Da jeg i sin tid begynte å arrangere LAN for alvor var det 30-50 folk vi starta med. Hvis vi hopper over en gjesteopptreden på TG02 så var første gang BølerLAN i 2003. Jeg hadde akkurat flytta ut av Oslo, og det var aldri arrangert LAN på Bøler før. Selv om vi endte opp uten internett (ingen viste brukernavn/passord og slikt til ISDN-linken som fritidsklubben hadde) så er det et av de beste arrangementene jeg kan huske.

Å arrangere mindre parties var utrolig gøy, men å faktisk få tak i utstyr var ikke lett. Å finne ut hvordan man får fiksa internett på en pålitelig måte tok noen år - ikke fordi vi ikke klarte å sette det opp, men fordi vi måtte lære oss hvordan vi skulle snakke med ISP'er og sånt på et språk som nådde fram.

På TG er det helt motsatt. Vi har, sammenlignet med BølerLAN, en helt enorm skala. Vi har et par hundre svitsjer stående på et lager (!!! ikke i boden min, men et faktisk LAGER!), vi har eget crew som kan hjelpe med avtaler med sponsorer. Og vi HAR sponsorer! Vi har faktisk fiberkabler (!), vi kjører ikke DHCP-serveren fra privat-pc'en min. Vi har et eget crew som har ansvar for å frakte ting dit det skal når det skal være der. Vi har en helt annen hverdag enn stort sett alle andre dataparties/LAN i Norge.

Men hei, her er greia. Vi har også "jira" (prosjektstyringsverktøy), planlegging for TG19 som tar nærmere ett år. Egne tasks som går kun ut på å finne ut hvilke tasks vi faktisk har innen et gitt område. Vi får (muligens rettmessig) kjeft av folk som bruker begreper som "HMS" når vi gjør litt trygghetsmessig tvilsomme ting på toppen av høye ting (ahem, dette skal vi altså ikke gjøre). Vi må forholde oss til tollsedler. Mengden ting vi må TELLE før og etter hvert arrangement er i seg selv verdt å telle opp. Vi må koordinere når vi ruller ut svitsjer under opprigg så det ikke kolliderer med planene til de som rigger scena, de som rigger strøm eller de som skal henge opp et eller annet i taket. Det er i det hele tatt en helt annen greie å arrangere TG.

Men i helga skal i hvert fall jeg litt tilbake til røttene. I helga går spillexpo av stabelen på Lillestrøm, og underveis arrangeres "The Gathering: Origins" (https://origins.gathering.org/). Dette er det jeg vil kalle et "vanlig" LAN. Om du ikke har noe å bestille i helga så ta turen innom (Ser du dette Dawn? Får jeg pluss i margen nå for å reklamere litt?)! Størrelsen er vel kanskje 70 folk?

På teknisk har jeg med meg et par andre tg-folk. Vi skulle gjerne hatt ikke-tg-folk, men for meg var dette noe jeg bare gjør fordi noen spurte meg. Etter 16 år med dataparties med alt fra 30-40 deltakere til 5500+ så er det å gå "tilbake" til noe slikt ganske gøy.

At vi kan låne TG sitt utstyr fra KANDU hjelper selvsagt. Men så viste det seg at vi har jo også et ganske solid kontaktnett. Så når vi fant ut at vi kanskje trengte en firewall fordi vi (fortsatt) er litt usikre på om vi må kjøre NAT eller ikke, så spurte jeg litt rundt. Da viser det seg selvsagt at Harald (I Tech:Net og fra Fortinet), fantastisk som han er, har en gigantisk Fortigate-brannmur liggende hjemme - den vi etter planen skal bruke på TG19. "Og forresten, Kristian, så har jeg no fortinetsvitsjer også som fortigaten kan styre så slipper du konfe svitsjer?". Ja ok, så vi har et lager fullt av svitsjer til TG, men det viser seg at HARALD har basically hele nettet vi trenger liggende klar til bruk hjemme så vi trenger ikke en gang låne fra TG/KANDU? Hva skjedde med tiden der jeg knappast klarte å oppdrive TP-kabler nok til et LAN!?

Men så prater jeg litt piss med Lasse da, og vi kommer - som vi ofte gjør - inn på dette med LAN. Og vi mimrer om gamledager og sånt. Jeg tenker at det er ganske gøy med slike små parties. Og han nevner noe for meg som jeg kanskje visste, men ikke har tenkt på: Det er parties som sliter med å skaffe tech crew der ute.

Folkens, dette må vi jo fikse!

Det er folk i detta landet som elsker å arrangere LAN og kan løse det aller meste. Det er folk som sitter med utstyr de VIL låne bort til LAN, fordi da kan de teste det litt. Og du har folk som ikke får tak i tech-crew til LAN?

Dette er jo for dumt.

Så, jeg vet ikke hvordan vi løser dette, men jeg kan jo bidra litt. Vi prøvde oss på tech-meetup SLACK, men det døde ut rimelig fort. Jeg orker ikke komme med et forslag på bedre kommunikasjonsplattform nå (Da er vi litt over i oppgaver som sorterer i "Jira"-paragrafen over i stedet for den morsomme paragrafen), så jeg foreslår heller:

Sliter du med å få tak i tech-crew til et LAN et eller annet sted? Sliter du med utstyr? Internett? whatever teknisk? Ta kontakt med oss/meg så ser vi om vi finner ut noe. Enten bare skriv en kommentar her, eller mail meg på kly@kly.no (eller ping meg på EFNet, jeg er kly, men svartid varierer veldig). Ikke noe høytidelig eller noe. Om e-post-boksen min eksploderer så går det bra.

Om noen andre har gidd nok til å sette opp noe for å løse og ønsker å spre det glade budskap så tar jeg gjerne å skriver om det her altså. Og/eller kommer med innspill. Personlig er jeg ingen facebook-bruker, så akkurat der melder jeg meg ut personlig (men jeg er en gammal gubbe i LAN-målestokk, så ikke la meg diktere løsning).

Om du er interessert i å hjelpe udefinerte LAN parties hvis det passer så kan du jo slenge deg på under i kommentarfeltet også?

Point being: Det er hjelp å få, om man spør! Vi suger bare på selv-organisering på tvers av LAN!

Nytt: contrib.gathering.org

11 Feb 2018, by Kristian Lyngstøl from Tech:Net

Jeg vekket akkurat contrib.gathering.org til live, men dette blir en to-delt blog-post.

Hva er contrib.gathering.org?

La oss begynne med det viktigste: contrib.gathering.org er en samling linker til ting som er løst relatert til TG. Jeg håper lista vil eksplodere, etter hvert som alle dere der ute som lager ting får lagt til innholdet deres. Hjelp oss!

Den enkleste måten å gjøre det på er via github. Helst kan du lage en pull request, men et vanlig issue virker selvsagt også.

Vi håper å få samlet så mye artige linker (relatert til TG som mulig). Bildegallerier, konkuransebidrag, eller hva det måtte være. Bruk fantasien!

Del to: Deploy

Den andre delen av denne posten er stacken som ligger bak. Tidligere har alt vi hoster på TG stort sett ligget på den samme enorme serveren, men nylig har vi begynt å bevege oss over i litt mer moderne metoder. Contrib er foreløpig den desidert mest moderne pipelinen vi har. Den vil forhåpentligvis være et positivt bidrag for å få flyttet andre, viktigere websider over til mer moderne og fleksible utviklingsmiljøer.

Selve biten med rst2html og sånt for å generere html er ganske lite interessant.

Det som er artig er at dette kjører på Kubernetes. I dag kjører det på Google Cloud, men det kan selvsagt kjøre andre steder også - vi prøver ut Google Cloud først.

For å deploye til "prod" er alt vi trenger å gjøre i dag å comitte til master-branchen i git, når det skjer så trigges en automatisk bygg i Google Cloud, som avslutter med å gjøre en deploy i kubernetes-clusteret (også i google cloud). Denne deployen gjøres med en rolling update.

I dette tilfellet er det forholdsvis overkill, siden det ikke er noe kode bak - bare statiske filer - men det er en fin test, og vil gjenbrukes for andre prosjekter.

For de interesserte så ligger alt for deployment i samme git-repo. En rask gjennomgang:



* /Dockerfile - Denne brukes til å bygge en 
  container, den kan kjøres på din lokale laptop om du vil
* /cloudbuild.yaml - Dette brukes av den automatiske
  byggeprosessen. Kort fortalt definerer den at ved
  en ny git commit skal det gjennomføres en docker build,
  push og kubernetes deploy.
* /k8s/ - Dette er ressursene som er lagt opp i Kubernetes.
  De er i utgangspunktet bare lagt til en gang for hånd,
  eller ved endringer.
* /k8s/deploy.yaml - dette er selve deploymentfila, som i
  praksis bare definerer hvilket image vi skal bruke. Imaget
  oppdateres automatisk av byggescriptet.
* /k8s/service.yaml - Her gjør vi deploymenten tilgjengelig for
  andre tjenester i clusteret
* /k8s/ingress.yaml - Denne definerer at tjenesten skal
  eksponeres på internett, via "ingress"-tjenesten. Den
  spesifiserer domenet, og ber om SSL-terminering, via
  let's encrypt.

(Jadda, flott med en blog der bullet points er brukket)

Det som ikke ligger i det repoet er resten av infrastrukturen: ingress-kontrolleren og let's encrypt automatikken. Dette kan det hende det kommer mer om når det faktisk er 100% ferdig. Teknisk sett kjører alt dette på min personlige gcloud-konto/cluster i dag.... Fordi jeg glemte igjen login/passord til KANDU/TG sin konto på jobben (... glemte "pass git push", for de nysgjerrige).

Labels: devops, k8s

Invitasjon: Tech Meetup #2 på The Gathering 2018

05 Feb 2018, by Simen Linderud from Tech:Net

I fjor samlet vi hele 40 personer fra LAN miljøet rundt om i Norge. Initiativet fikk gode tilbakemeldinger og det virket som et fornuftig initiativ.

Vi ønsker i år som i fjor å samle teknikere fra hele Norges LAN/Dataparty-miljø. Dette er lavterskel, det eneste vi ønsker er at de som deltar har vært med teknisk på et arrangement før. Det kan være et med 10 deltakere eller 10 000. Spiller ingen rolle.

Agendaen blir ganske løs som i fjor. Har du noe du på hjertet og ønsker prate om så er det ingenting i veien for det.

Sannsynligvis kommer dette til å skje på Fredag og vi kommer til å stille med et rom og trolig noe å tygge på.

Høres dette interessant ut? Påmelding finner du her: https://goo.gl/sLCRpY

Om du bare kommer for meetupen kan det hende vi kan ordne noen dagsbiletter, men vi kan ikke garantere noe enda da vi må se ann pågangen litt. Ta kontakt, så finner vi ut av det!

Har du noen ytterligere spørsmål eller kommentarer så ta gjerne kontakt med oss via meetup@gathering.org

Labels: Meetup, Tech TG18

Network design TG17

16 Apr 2017, by Martin Karlsen from Tech:Net

The Gathering has almost come to an end and it's about time we posted some details about our network design.
Network Design

Network design

Our network is designed in the traditional three-layered hierarchical model with the core, distribution and access layer where L3 is terminated at our distribution.


Core layer
The core L3 switches consists of 2x Juniper QFX5100 in a virtual chassis, which is Junipers stacking technology. In addition to provide our distribution with uplinks, the core switch also connects our 80Gig backbone ring with our stand and border router.
Between our border router the internet we have an inline Juniper SRX5800 which is capable of pushing 2Tbps worth of firewall throughput(!). This is where we terminate our BGP peering with Telenor and do route redistribution to OSPF, making the SRX our OSPF ASBR.

Distribution Layer
The L3 distribution switches consists of 3x Juniper EX3300 in a virtual chassis per distribution. It connects to the core using 2x 10Gbps singel-mode transceivers patched into our MPO cassettes pulled from the ceiling. The distro redistributes its connected routes into the OSPF area and advertises it to the core.

Access layer
The L2 access switches consists of 144+ Juniper EX2200 with a 3x 1Gbps connection to our distribution. To protect our network at the edge, we run a series of security features collectively called first-hop security. This takes care of a lot of potential issues such as loops, spoofing and ARP-poisoning.

vc1.ring
One of the design choices this year was to turn our backbone ring, which traverses the entire arena, into a virtual chassis instead of separate routers. This effectively means that it becomes a distribution switch for our crew network. This makes it easy for us to provision edge/access switches to our sponsors and crew areas. As a result we have for the first time ever provisioned our entire access network. Not a single access switch has been configured manually this year!

Internet capacity

TL;DR - 40Gbps...

At TG16 we suffered several DDoS attacks towards our network and even our website (gathering.org). In order to be able to handle a potential DDoS attack this year we decided to upgrade our internet capacity from 40Gbps to 40Gbps + 10Gbps, where the newly added 10Gbps-link would be reserved for our production environment. Instead of dedicating a single physical interface, we decided to include the interface in our aggregated interface and rate-limit our participants network to 40Gbps. This way we keep our production network alive when our participants network gets lit up.

A report from the NOC

13 Apr 2017, by Kristian Lyngstøl from Tech:Net

The party is well underway, and I was dumb enough to say aloud the phrase "We should probably blog something?". Everyone agreed, and thus told me to do it. Damn it.

Anyway, things are going disturbingly well. We were done with our setup 24 hours ahead of time, more or less. I've had the special honor of being the first to get a valid DHCP lease in the NOC and the first to get a proper DHCP lease "on the floor". And I've zeroized the entire west side of the ship (e.g.: reset the switches to get them to request proper configuration, this involved physically walking to each switch with a console cable and laptop).

But we have had some minor issues.

First, which you might have picked up, we have to tickle the edge switches a bit to get them to request configuration. This cost us a couple of hours of delay during the setup. And it means that whenever we get a power failure, our edge switches boot up in a useless state and we have to poke them with a console cable. We've been trying to improve this situation, but it's not really a disaster.

We've also had some CPU issues on our distribution switches. Mainly whenever we power on all the edge switches. To reduce the load, we disabled LACP - the protocol used to control how the three uplinks to each edge switch is combined into a single link. This worked great, until we ran into the next problem.

The next problem was a crash on one of the EX3300 switches that make up a distribution switch (each distribution switch has 3 EX3300 switches in a virtual chassis). We're working with Juniper on the root cause of these crashes (we've had at least 4 so far as I am aware). A single member in a VC crashing shouldn't be a big deal. At worst, we could get about a minute or two of down-time on that single distribution switch before the two remaining members take over the functionality.

However, since we hade disabled LACP earlier, that caused some trobule: The link between the core router and the distribution switch didn't come back up again because that's a job for LACP. This happened to distro7 on wednesday. We were able to bring distro7 up again quite fast regardless, even with a member missing.

After that, we re-enabled LACP on all distribution switches, which was the cause of the (very short) network outage on wednesday across the entire site.

Other than that, there is little to report. On my side, being in charge of monitoring and tooling (e.g.: Gondul), the biggest challenge is the ring now being a single virtual chassis making it trickier to measure the individual members. And the fact that graphite-api has completely broken down.

Oh, and we've had to move our SRX firewall, because it was getting far too hot... more on that later?

This time, there were no funny pictures though!

Labels: Tech TG17

Wireless at TG17

13 Apr 2017, by Marius Linge from Tech:Net

This year our wireless seems to be alot more stable then ever before.
Unfortunately i'm not much of a wireless-guy myself, so i can't go into all the details, but i just felt like writing a small post about our wireless anyway.

This year we have Fortinet onboard to provide us with equipment for the wireless network.
The equipment we use consists of a total of 162 FortiAP U421EV (deployed) and 2 FortiWLC-3000D.

APs

As of right now we have 1517 clients, where 1487 of them are on 5GHz and 30 on 2.4GHz.
The 2.4GHz SSID is hidden and mostly used for equipment that don't support 5GHz, like PS4 for example.

We have performed some testing by roaming around the vikingship and got an average of 20ms latency and 35-ish Mbps. Our Wireless guy almost managed to watch an entire episode on Netflix without major disruption while walking around!

APStats

The accesspoints are spread evenly across the Vikingship.
We have one accesspoint at the end of every second row on each side of the vikingship, as well as one accesspoint per row on each side.

Well.. it's kinda hard to explain in words, so have a low-quality picture from my phone of our drawing board in the NOC:

The red dots across the tables represents the AP placements in the main area of the vikingship.
Below you can see a map with the AP placement from our wireless controller.

APLocations

Well.. as i said i'm not much of a wireless guy, but i hope you got some interesting information about how our wireless is deployed this year.
If you have any questions regarding Wireless at TG17, feel free to contact us on the official discord server for The Gathering, channel #tech :-)

Labels: Tech TG17, Wireless
more

About

TG - Technical Blog is the unofficial rambling place of the Info:Systems, Tech:Net and Tech:Server crews from The Gathering.

Filter posts by crew

Related sites

Collaborators