Avviksrapport for Cerebrum 2. februar 2019

Avviksrapport for hendelse i Cerebrum 2. februar 2019, der studenter mistet tilgang til flere tjenester.

Mellom fredag 1. februar og lørdag 2. februar 2019 fjernet Cerebrum fødselsnumre fra nesten alle studenter, for alle utdanningsinstitusjoner som bruker Cerebrum levert av UiO med integrasjon med Felles Studentsystem (FS). Dette hadde mange konsekvenser, både for FS og for systemer som bruker studentdata fra FS og Cerebrum (herunder StudentWeb og Canvas).

Beskrivelse av avviket og feilrettingsprosess

Dette er en beskrivelse av hva som skjedde og hvordan situasjonen ble rettet.

  • 02-01 ca 1500: En feilfiks settes i produksjon for FS-importen. Koden har blitt vurdert («peer reviewed») av en seniorutvikler, men inneholder en feil som gjør at fødselsnummer ikke lenger er gjeldende identifikator for personer som importeres fra FS.
  • 02-01 2300 og utover: Cerebrum importerer data om studenter fra FS. Denne importen sletter fødselsnummer fra alle studenter som også har en annen identifikator i Cerebrum (i praksis studentnummer/FS-nummer). Tidspunktet for når dette skjer varierer litt fra institusjon til institusjon, spesielt fordi importen bruker kort tid på mindre institusjoner, fordi det er en filbasert fullimport.
  • 02-02 0030: IT-drift hos Høgskolen i Østfold (HiØ) merker at overførte filer fra Cerebrum (LDAP og ABC) har blitt markant mindre, og sender e-post til Cerebrum-drift om problemet (RT-sak).
  • 02-02 0400 og utover: Cerebrum oppdaterer brukernavn og e-postadresser i FS, basert på data i Cerebrum. Dette gjør at brukernavn og e-postadresse fjernes fra FS for de personene som fikk fjernet fødselsnummeret.
  • 02-02 1139: IT-drift hos HiØ ringer tjenestegruppeleder for Cerebrum, Joakim Hovlandsvåg, om problemet.
  • 02-02 1150: Feilsøking og intern koordinering på USIT starter.
  • 02-02 1355: Driftsmeldingen er lagt ut og Joakim Hovlandsvåg har informert Cerebrum-kundene i sektoren.
  • 02-02 1445: FS-support hos UNIT er informert.
  • 02-02 1506: En fiks er satt i produksjon for HiØ.
  • 02-02 1532: Nye importer og eksporter er ferdige for HiØ, og problemet er verifisert løst for dem.
  • 02-02 1546: Problemene er løst for Norges Musikkhøgskole og Norges Idrettshøgskole.
  • 02-02 1628: Problemene er løst for de resterende institusjonene, Universitetet i Agder og Universitetet i Oslo.
  • 02-02 1638: Driftsmeldingene er oppdatert.

Konsekvenser

Fødselsnumre ble fjernet i Cerebrum for ca 32000 personer ved UiO, ca 14000 hos UiA, og en rekke andre på andre institusjoner. Dette førte igjen til at Cerebrum fjernet brukernavn og e-postadresse i FS for disse personene. Feilen berørte ikke personer uten studentnummer.

Vi vurderer at denne feilen var av kategori A; en meget alvorlig feil hvor store deler av sektoren var rammet. Imidlertid skjedde dette i helgen, så omfanget var mye mindre enn det kunne ha vært.

Hva skulle vi gjort for at situasjonen ikke oppsto?

Rutine for prodsetting av endringer i Cerebrum ble ikke fulgt.  Endringen i Cerebrum ble ikke testet godt nok, og den ble satt i produksjon på et uheldig tidspunkt uten å bli fulgt opp i etterkant. Dette ble gjort av en nyansatt juniorutvikler, så kommunikasjon av prodsettingsrutiner har ikke blitt gjort godt nok av de ansvarlige for Cerebrum.

Endringen i kode for Cerebrum skal igjennom peer review. Dette ble gjennomført her i henhold til rutine men seniorutvikler oppdaget heller ikke kode-feilen ved godkjenning av koden.

Angående tidspunkt: Endringen kunne ha blitt satt i produksjon på et annet tidspunkt enn fredag ettermiddag. FS-importen kjører kun etter arbeidstid, så om alt annet hadde vært likt, ville den i så fall ikke blitt oppdaget før dagen etter. Det hadde kanskje gått kortere tid å fikse den om morgenen på en hverdag, men på den annen side ville svært mange flere brukere ha merket problemene på det tidspunktet enn en lørdag formiddag.

Feilen kunne ha blitt fanget opp automatisk og utløst varsler i Zabbix, så hjemmevakta umiddelbart kunne skjønt at problemene stammet fra Cerebrum.

Hva kunne USIT gjort bedre?

Det kom ingen automatiske varsler da feilen oppsto, og symptomene på feilen (innloggingsproblemer i StudentWeb, manglende kurs i MineStudier og Canvas) ble derfor ikke umiddelbart knyttet til feil i FS eller Cerebrum.

Siden hjemmevakta på USIT ikke kunne skjønne at problemene stammet fra Cerebrum, ble andre deler av driftsorganisasjonen til USIT involvert. Ansatte i BNT/INT visste imidlertid at Cerebrum var årsaken relativt tidlig men det var først da linjeleder for cerebrum-drift ble klar over feilen i Cerebrum at hjemmevakt ble informmert om sammenhengen og Cerebrum-driftspersonell hentet inn for å jobbe med feilretting.

Når det var fastslått at Cerebrum var årsaken, kunne driftsmelding blitt lagt ut/oppdatert tidligere.

De relevante loggene til Cerebrum burde vært bedre. Utvikleren som testet bugfiksen måtte legge inn mer logging lokalt for å se at den fungerte, og driftssjef som satte bugfiksen i produksjon kunne ikke se av loggene underveis som loggen kjørte om den fungerte eller ikke, men måtte vente til importen var ferdig for å se på resultatet.

Tiltak

  • USIT hjemmevakt har opprettet en egen kanal på Mattermost for intern koordinering ved slike større hendelser.
  • USIT reviderer prodsettingsrutinene for Cerebrum slik at  det blir tydeligere hvordan en endring må testes før den settes i produksjon.
  • USIT reviderer interne rutiner for varsling ved uforutsette hendelser for Cerebrum
  • USIT vurderer hvilke automatiske varsler som kan settes opp for å oppdage om noe lignende skjer igjen.
  • USIT forbedrer loggingen, så den inneholder relevant informasjon, og med riktig loggnivå.

 

Av Tobias V. Langhoff (ITI/GAP), Joakim Hovlandsvåg (BNT/INT)
Publisert 13. feb. 2019 11:48 - Sist endret 13. feb. 2019 11:48