Slik drifter de Norges største nettavis, VG.no

AWS, Heroku, Zetta.IO og Akamai. - Nevn en teknologi, så har vi hatt det i produksjon!

Audun Ytterdal og gjengen bak VG.no er noen av de fremste i Norge på hosting. 📸: Privat
Audun Ytterdal og gjengen bak VG.no er noen av de fremste i Norge på hosting. 📸: PrivatVis mer

Få norske selskap har vært toneangivende for hosting i Norge som gjengen bak VG.no og resten av nettsidene i Schibsted.

Stor trafikk krever robuste løsninger, slik som caching-løsningen Varnish, som sprang ut av labben til VG på midten av 2000-tallet. I dag bruker samtlige norske nettaviser Varnish, inkludert dagbladet.no, samt store internasjonale sider som The New York Times, The Guardian, Wikipedia - for ikke å glemme Reddit, Facebook og Twitter.

Det er åpenbart at folka på Schibsted vet hva de driver med, men hva driver de egentlig med?

kode24 har pratet med Head of Operations hos Schibsted, Audun Ytterdal, om hva som rører seg i Schibsted om dagen.

#1. Hvor hostes det dere bygger i dag? 🏰

Det vi bygger i dag blir hostet på en kombinasjon av AWS, Heroku, Zetta.IO, Akamai og i datarom hos to separate ISP-er i Oslo.

Snakker man spesifikt om VG så kan man starte med å si at vi har vært online siden 1995. Man kan nesten bare nevne en teknologi, så har vi, eller har hatt, det i produksjon.

I dag er hovedplattformen hos henholdsvis Redpill Linpro og Broadnet i Norge. De leverer strøm og internett. Vi har som policy å ha to separate leverandører for redundans (også mot for eksempel konkurs), med korte kontrakter for å ha muligheten til å kontinuerlig forhandle pris.

«Vi har et samfunnsansvar å kunne levere i en krise.»

Vi har i stor grad flyttet mange av applikasjonene til AWS og Heroku, men sett en fordel av ha noe infrastruktur i Norge for å dekke de viktigste tjenestene våre av følgende årsaker:

  • a) Pris. Ser vi bort i fra video så leverer vi fortsatt over 1 Petebyte i måneden, peaker på 30Gb/s og over 100.000 http req/s. Mange skytjenester blir rett og slett for dyre i en del sammenhenger.
  • b) VG ble startet av motstandsbevegelsen etter krigen. Vi har et samfunnsansvar å kunne levere i en krise. Da må vi både kunne levere både fra Norge og fra utsiden av Norge.
  • c) Vi skal være presseetiske uavhengige av leverandørene våre og i tillegg kan vi av og til sitte på data vi må ha full kontroll på selv.

#2. Hvordan håndterer dere deploy til serverene? 🛫🛬

Jenkins2, Travis og GoCD, Chef, Ansible samt litt make-filer her og der.

Dette blir blir deployet lokalt i Norge (Mesos/Marathon, Kubernetes) eller på Cloud (Kubernetes/Convox på AWS eller Heroku).

#3. Hva bruker dere til å holde oversikt over drift?🔍

Automatisering: Chef, Ansible og Terraform.
Metrics: Datadog, New Relic, Collected, Prometheus, InfluxDB, Munin og Grafana.
Logging: Fluentd, Splunk, Sumologic.

Som vanlig har vi bedt om bilder i liggende format. VG-gjengen innfrir! 📸: Privat
Som vanlig har vi bedt om bilder i liggende format. VG-gjengen innfrir! 📸: Privat Vis mer

Her er vi også litt overalt. En funfact er at jeg og Nicolai Langfelt, som også jobber her, var med å starte munin-prosjektet. Selv om vi i stor grad har migrert metrics over til andre plattformer, har det fortsatt en verdi utover den rent nostalgiske verdien. I form av "Vi aner ikke helt hvor vi skal starte, la oss se på grafene"-situasjoner.

«Vi bruker mye tid på Varnish, som på mange måter er navet i de fleste nettstedene våre i Norge og Sverige.»

#4. Hva bruker du mest tid på i hverdagen? 💻

Selv om de individuelle oppsettene er ganske bra, ønsker vi i mye større grad å harmonisere logging, metric, build, deploy og runtime på tvers av sitene våre. Det jobbes det mye med. I tillegg bruker vi mye tid på Varnish, som på mange måter er navet i de fleste nettstedene våre i Norge og Sverige.

#5. Hva bruker dere til caching? 👾

Varnish til det aller meste, både mot caching mot sluttbrukere og mellom tjenester. VG startet Varnish-prosjektet, så der er vi litt biased. Vi bruker også Redis og litt memcached internt i apper.

#6. Hva bruker dere til domener/DNS? 💙

De fleste domenene våre vedlikeholdes manuelt med sonefiler i Git. Her skulle vi gjerne hatt større grad av automatisering, men det store spekteret av teknologier i bakkant gjør det litt utfordrende. For infrastruktur i AWS benytter vi Route53.

God steming hos hosting-gjengen i VG. De har til og med fått besøk av en kjent kar på storskjerm. 📸: Privat
God steming hos hosting-gjengen i VG. De har til og med fått besøk av en kjent kar på storskjerm. 📸: Privat Vis mer

#7. Hva er du mest fornøyd med å ha gjennomført i forbindelse med hosting det siste året? 😚

Skrevet en Okta-integrasjon for Kubernetes i Go. Samt håndtert flere store incidents uten at sluttbrukeren har merket det. Det å bygge, vedlikeholde, og beskytte flere av skandinavias største webtjenester i seg selv er det vi kanskje er mest stolt av. Og her trenger vi flere gode kollegaer!

#8. Hva har du lyst til å teste/bytte ut fremover, og hvorfor? 🤔

Harmonisere og skalere opp verktøykassen vår.

9. Hva skulle du ønske utviklere og kolleger ble flinkere på? 🍬

Generelt i bransjen må det være å stadig minne oss selv på at teknologivalg, arkitekturvalg og metodikkvalg i de fleste tilfeller er et verktøy for å nå et mål, ikke målet selv.