IT was nog nooit zo simpel (en ingewikkeld)

29-10-2012

Ik hoor en lees regelmatig stukken waarin wordt gejubeld hoe 'simpel' IT inmiddels is geworden. Als je de IT van een jaar of tien geleden vergelijkt met die van nu, zit daar vast wel iets in.

Tegenwoordig kunnen we de installatie van een virtuele server volledig automatiseren, we kunnen complexe applicatie-frameworks uitrollen met een paar klikken van de muis, en we kunnen serverproblemen tot op het bot ontleden zonder nog van onze bureaustoel op te staan. Nog niet zo gek lang geleden was hier zowaar zware fysieke arbeid voor nodig: servers in racks plaatsen, handmatige OS-installaties, bezoek aan datacentra, kabels trekken, netwerken configureren en zo voorts.

Maar de tijd schrijdt voort en we zijn al die zaken voortdurend blijven stroomlijnen en verbeteren om het beheer te vereenvoudigen, veelvoorkomende taken te automatiseren en in zijn algemeenheid de werkdruk te verlichten. Let wel, dat wil niet zeggen dat het minder complex is geworden. IT-systemen zijn complexer dan ooit, maar we hoeven er veel minder lichamelijke arbeid voor te verrichten en er zijn veel minder saaie repeterende taken. We hebben de basis van de IT geabstraheerd, zaken verder de keten in geschoven. Dat vergt in aanvang aanzienlijk meer planning en inspanning, maar de winst en besparingen volgen al snel en blijken de investering meer dan waard.

Uiteraard is virtualisatie de drijvende kracht achter dit proces, niet alleen in de vorm van server-virtualisatie, maar ook storage-virtualisatie, applicatie-virtualisatie en netwerk-virtualisatie. Het kost meer kennis om die componenten op te bouwen, maar een stuk minder kennis om zo aan de praat te houden. We zijn niet langer voortdurend bezig onze IT-infrastructuur te ver- en herbouwen, maar bouwen het nu een keer op en teren vervolgens lange tijd op die investering.

Maar vergis je niet: IT is nog steeds niet “simpel”.

De meest banale handelingen zijn nu eenvoudiger en in steeds meer gevallen zelfs self-service, maar dat heeft ons niet bevrijd van de vaagheden van ons vakgebied, van het volledig onverwachte.

Aan de ene kant kun je wijzen op wat er begin vorige week bij AWS is gebeurd (Amazon Web Services kwam knarsend tot stilstand en haalde daarmee een aantal zeer grote en populaire webservices uit de lucht, waaronder Netflix, Pinterest, Foursquare en Reddit). Dat was een bijzonder langdurig probleem, dat ook nog eens bijzonder zichtbaar was (juist voor niet-IT’ers). Het werd kennelijk veroorzaakt door een menselijke fout, en verder verergerd door slechte planning. Alle automatisering ter wereld had dat probleem niet kunnen voorkomen – het zou in de meeste gevallen het probleem alleen maar erger hebben gemaakt. Deze blunder zal nog lang blijven doorklinken bij Amazon.

Aan de andere kant heb je merkwaardige problemen zoals het verhaal waar Mina Naguib onlangs mee kwam. Ik kwam zijn berichtje toevallig tegen en volgens mij is het een perfect voorbeeld van een zeer ervaren en kundige admin die een probleem ontdekt en verhelpt dat in alle redelijkheid helemaal niet zou moeten kunnen bestaan. Of het nou logisch is of niet, het oplossen van onmogelijke IT-problemen verloopt via bijna precies dezelfde stadia als rouwverwerking:

Ontkenning. Je hebt een sterk fluctuerend probleem dat nauwelijks te reproduceren valt en waar om een of andere reden een van de meest stabiele en betrouwbare protocollen op het internet bij betrokken lijkt. Het probleem kan eigenlijk helemaal niet bestaan.
Woede. Nadat je alle stappen hebt genomen die je redelijkerwijs kunt bedenken om het probleem op te lossen, bestaat het probleem nog steeds. Frustratie is een understatement.
Smeken. Zelfs de meeste ervaren IT-ninja krijgt vroeg of laat de neiging alles te willen doen en iedere deal te willen sluiten als dat probleem zichzelf maar oplost. Je belooft bijvoorbeeld voortaan al je code uitgebreid te testen, als de oplossing voor deze ellende je maar plots te binnen wil schieten.
Depressie. Dit hoeft niet eens per se het probleem te zijn van degene die het probleem moet oplossen, maar ik heb zeker een aantal gevallen gezien waarin het management en anderen die ermee te maken hadden door deze neerslachtigheid werden gegrepen. Die zitten dan ook niet tot hun nek in de modder om het probleem op te lossen. Ze staan aan de zijlijn te wachten tot ze van die ellende worden verlost. Het is hun hemel die naar beneden komt.
Acceptatie. Hier lopen IT en rouwverwerking plots uiteen. Acceptatie bestaat niet in de IT. IT-problemen moeten worden opgelost – linksom of rechtsom. De kwaliteit of betrouwbaarheid van de oplossing mag ter discussie staan, maar er komt nooit een moment dat je het gewoon kunt opgeven en een serieus probleem kunt laten voor wat het is. Dat is geen optie. Het moet werken. De bits moeten stromen.

In het geval van het bizarre TCP-probleem dat Mina beschrijft, lag de oorzaak bij een netwerkprovider die een heel eind verderop in het netwerk zat, zonder directe relatie met de getroffen partijen. Een router met fouten in de code of een kaduke interface bleek de oorzaak van dit ondoorgrondelijke probleem, en de enige reden dat dit uiteindelijk aan het licht kwam was dat iemand met opmerkelijk veel toewijding en een bijzonder scherp oog bereid was zich erin vast te bijten.

Dit was geen probleem dat met een paar muisklikjes of een bezoek aan een webportaal kon worden opgelost. Dit probleem zou door een beginneling nooit zijn ontdekt en al helemaal niet opgelost. Dit was niet ‘simpel’.

Aan de buitenkant lijkt het misschien alsof IT steeds eenvoudiger wordt: soepeler, sneller, gestroomlijnd – maar achter al die verf en plamuur wordt het bouwwerk bepaald niet minder complex. Het zware werk is nu misschien eerder logisch dan fysiek, maar de belasting is in feite hoger dan ooit.

ComputerWorld  Paul Venezia

Index