When Murphy strikes banner

When Murphy strikes: wat als alles in jouw DevOps-team fout gaat?

Wat als alles in jouw DevOps-team fout gaat?

Een dag in het leven van een DevOps Engineer verloopt normaliter zonder problemen. Maar resultaten uit het verleden, zijn geen garantie voor de toekomst… Wat kan er allemaal misgaan en hoe voorkom je een DevOps-horrorscenario?

Mark van der Walle, Lead Software Architect bij Sogeti en Edo Hendriksen, Lead Solution Architect bij Sogeti, schetsen een dag in het leven van de fictieve DevOps Engineer Daniël. Hij werkt bij Carleasing Inc, waar hij zich bezighoudt met de ontwikkeling van het Carleasing Trading Platform. Zijn werkende leven verloopt vlotjes, tot alles op een dag helemaal de soep in loopt.

Wat ging er allemaal mis? Hadden Daniël en zijn teamleden dit kunnen voorkomen? En zo ja, op welke momenten hadden ze kunnen ingrijpen en hoe?

Een dag in het leven van een DevOps Engineer

Het is vrijdagochtend 7 uur. Daniël staat opgewekt op, het weekend staat voor de deur en op zijn werk verwacht hij geen problemen. Het Carleasing Trading Platform werkt al tijden vlekkeloos. Met dank aan zijn collega William, die het platform heeft gebouwd en daarbij supergoed werk heeft geleverd. Helaas is William de laatste tijd wel wat aan het mopperen, dat zal wel aan het weer liggen of hij heeft het te druk. Het platform is in ieder geval niet de oorzaak, dit werkt perfect en alle stakeholders zijn tevreden. Momenteel is William er even tussenuit, de bergen in. Dat zal hem goed doen, denkt Daniël.

Om 8.15 arriveert Daniël op kantoor, zijn collega’s Lisa en Henry zijn er al. Hij gaat aan de slag, tot er om 8.50 een reseller belt; sommige klanten zien geen hun gegevens niet op het Carleasing Trading Platform. Komt dat door de productie-update van vannacht? Daniël gaat er mee aan de slag: hij kijkt naar de production log files op diverse machines. Na wat zoekwerk vindt hij de juiste file. Hij scant het bestand en vindt niets. Dan maar eens kijken in de code base. Rond 9.50 opent Daniël deze module; het is een briljant stukje code gemaakt door zijn collega William. Zo briljant dat niemand in het DevOps-team de code begrijpt… Na wat speurwerk ontdekt Daniël dat de code base afhankelijk is van een framework dat hij niet kent.

 

Rond 10.10 uur vindt Daniël informatie over dit framework op internet. Het is tien jaar oud en al zes jaar niet geüpdate. Op een security forum komt hij een waarschuwing over een datalek in het framework tegen. Oei, dat klinkt niet goed. Inmiddels is het 10.25 uur en er hangt een tweede reseller aan de lijn: zijn klanten zien de data van andere klanten. Al snel volgen er meer resellers, het is alarmfase 1 bij het DevOps-team! Lisa belt William om 10.40 voor de vierde keer, maar hij is nog steeds onbereikbaar. Wat kan het team nog meer doen: eerdere platformversies terugzetten en gebruiken? Dat is helaas technisch niet mogelijk. Het systeem platleggen dan? Nee, want dat kost een vermogen. Ondertussen hebben sommige media het nieuws van het datalek bij Carleasing Inc al opgepikt.

Om 12.10 uur roept Henry het team bijeen: er is hoop, hij heeft een vervangend framework gevonden. In allerijl begint het team dit framework te integreren in het Carleasing Trading Platform. Maar gaandeweg blijkt dat er te veel afhankelijkheden zijn tussen het oude framework en platform. Dat wordt opgelost met verschillende bypasses en dubbelingen. Eindelijk, het is inmiddels 17.55, is het vervangende systeem klaar om live te gaan. Maar nadat Lisa de acceptatieomgeving heeft gecheckt, blijkt om 18.15 dat het systeem nog steeds niet werkt. Het probleem zat blijkbaar niet in het framework maar in een andere module. Helaas kan het team de code base van de huidige productieomgeving niet kopiëren, dus wordt er in hoog tempo een tijdelijke, nieuwe code geschreven.

Om 22.45 heeft het team het systeem opgelapt. Het is klaar om in productie genomen te worden. Lisa checkt weer of alles goed werkt in de acceptatieomgeving en daarna wordt het aangepaste platform naar de productieomgeving gebracht. Alles lijkt goed te werken: ze hebben het opgelost! Alleen is er de komende dagen en weken nog wel wat werk aan de code base te verzetten. Rond 23 uur daalt de rust neer en komt het team gezamenlijk tot de conclusie dat ze hun manier van werken moeten veranderen om dergelijke issues in de toekomst te voorkomen.

Voorkom een horroscenario

Welke ‘red flags’ heeft het DevOps-team bij Carleasing Inc gemist? Wat zijn de belangrijkste oorzaken van de problemen met het Carleasing Trading Platform – zowel technisch als in de manier van werken? En hoe los je deze afzonderlijke problemen op om een toekomstig horroscenario te voorkomen? Bekijk de video van de QX Day-presentatie ‘When Murphy strikes: A day in the life of a DevOps Engineer'

Digitaal transformeren met DevOps?

Ontdek wat DevOps kan betekenen voor jou organisatie met de DevOps simulation game of vraag direct DevOps expertise aan. 

DevOps services

Kan ik je helpen?

Mark van der Walle Lead Software Architect
Phone number: +31 (0)6 152 279 08