NLEN
Direct technisch advies?
Home > Blog

De ouderwetse DBA is niet meer, lang leve de nieuwe DBA!

Martijn Wallet 28-9-2018 0:00
Categorieën: BLOG, Carierre, Cloud, DBMS, Open Source

Mag ik u voorstellen: de Database Reliability Engineer (DBRE)

Dankzij disruptieve technologiën als robotisering, artificial intelligence en machine learning is er de laatste jaren veel veranderd in het bedrijfsleven. Elk bedrijf is nu een IT-bedrijf en wie niet op tijd anticipeert, wordt opgeslokt of verdwijnt. De technologische ontwikkelingen zorgen er ook voor dat oude beroepen verdwijnen en dat nieuwe beroepen ontstaan. Ook in databaseland is dit het geval: the king is dead, long live the king. Mag ik u voorstellen: de Database Reliability Engineer (DBRE). De ‘ouderwetse’ DBA is niet meer, lang leve de nieuwe DBA!

Het is tegenwoordig niet meer de vraag óf een bedrijf naar de cloud gaat, maar wannéér. Bedrijven die op het punt staan om te migreren naar de cloud, zullen vroeger of later altijd bij de vraag uitkomen “maar wat doen we met onze databases?” De database is binnen de IT namelijk altijd een ondergeschoven kindje. Omdat er bij de meeste bedrijven niet genoeg werk is voor een fulltime DBA, moet iemand het er maar een beetje bijdoen. Logischerwijs heeft deze persoon nooit de ervaring die daarvoor nodig is en dat is vaak wel een pijnpunt binnen een organisatie. En dat wordt pas goed duidelijk op het moment dat een migratie naar de cloud aanstaande is.

Van databaseserver naar virtual machine naar de cloud

Database in de cloudDe taken van de ouderwetse DBA verdwijnen meer en meer. De cloud zorgt namelijk niet alleen voor allerlei nieuwe mogelijkheden, het maakt alles ook veel dynamischer. Vroeger was het allemaal betrekkelijk eenvoudig. Er was een server en daarop installeerde je databasesoftware. Dat was het eigenlijk wel en het was vrij statisch. Toen virtual machines zijn intrede deden, werd het al wat flexibeler en kon je meerdere VM’s inrichten. Nu met de cloud kun je in principe alles doen wat je wilt. Je kunt in no-time machines in de lucht brengen, wat het enorm schaalbaar maakt.

 

Scripten en automatiseren

Die voordelen hebben alleen nut als de rest ook snel geregeld is. Iedere keer opnieuw databasesoftware installeren en dezelfde post-installatietaken uitvoeren is daarbij niet alleen tijdrovend, maar ook nog eens heel vervelend werk. ICT zou ICT niet zijn als je dit niet kon automatiseren en met behulp van scripting en automation talen als Terraform en Ansible hoef je die repetitieve taken niet weer iedere keer opnieuw te doen.

Functietitel DBA gaat verdwijnen

De taken van de DBA zijn in de loop van de tijd dus steeds meer opgeschoven. Van iemand die de database installeert, users aanmaakt, back-upt en hem bijwerkt als er een nieuwe versie is naar iemand die ook zorgt voor deployment automation, infrastructure automation en orchestration. Zo zal de functietitel DBA langzaamaan gaan verdwijnen. We zien het al een tijdje in de Verenigde Staten, waar in Silicon Valley grote platforms als Facebook en Twitter veelal niet meer op zoek zijn naar een ouderwetse DBA, maar vacatures plaatsen voor een DBRE, de Database Reliability Engineer.

Betrouwbaarheid, beschikbaarheid en uptime

Database ReliabilityEn dat is niet zo gek natuurlijk. Door de enorme schaal waarop deze platforms opereren, is het praktisch gezien al onbegonnen werk om de infrastructuur en database deployment niet te scripten en te automatiseren. Omdat ze te maken hebben met privacygevoelige informatie, moet de betrouwbaarheid van de data te allen tijde gegarandeerd kunnen worden. En omdat gebruikers moord en brand schreeuwen als een platform even uit de lucht is (en dit al snel miljoenen kan kosten wegens gederfde reclame-inkomsten), is het ook de uptime van de servers en de beschikbaarheid van de data van het grootste belang. 

Voorkomen van configuration drift

Natuurlijk streeft de DBRE altijd naar de beste deployment van infrastructure en bijbehorende configuratie, want zo kan hij ‘configuration drift’ voorkomen of zelfs beperken. Configuration drift is alles wat je nog moet doen op een server na de deployment. Instellingen wijzigen voor een database of configuratie-opties tweaken, iedere keer nadat je een deployment doet? Dat zijn herhalende taken en herhalende taken zijn vervelend, maar kunnen ook fouten in de hand werken en dat wil je juist voorkomen.

Immutable infrastructure

Het is dus zaak om alles zo te scripten en te automatiseren dat er een zo perfect mogelijk image van de database, software en instellingen ontstaat, de Golden Image. Als dit goed wordt gedaan, dan praten we over een immutable infrastructure. Daarin hoeven geen aanpassingen meer worden gedaan na deployment. Mochten er toch veranderingen moeten plaatsvinden, dan worden die aangebracht in de version controlled configuration definition. Daarna wordt er een redeploy gedaan.

Eenvoud, voorspelbaarheid en herstelbaarheid

Database deployment automationDeze manier van werken heeft een aantal voordelen. Allereerst zorgt dit voor eenvoud. Omdat er geen aanpassingen worden toegestaan zijn de permutaties van de status van de infrastructuur significant beperkt. Het tweede voordeel is voorspelbaarheid. Omdat de status altijd bekend is, zal onderzoek en ontdekking veel sneller plaatsvinden en zijn eventuele problemen eenvoudig te reproduceren. En tot slot is er nog het voordeel van herstelbaarheid. De status kan eenvoudig worden hersteld door het opnieuw deployen van het Golden Image. Dit zorgt ervoor dat de MTTR (mean time to recover) behoorlijk wordt verkleind. De images zijn bekend, getest en op elk moment klaar voor deployment!

Elke DBA zal transformeren tot DBRE

In Amerika werd de term DBRE al een paar jaar geleden geïntroduceerd, maar ook in Nederland zie je de laatste maanden steeds meer vacatures voor de Database Reliability Engineer. Ik ben er ook van overtuigd dat elke DBA zal transformeren tot DBRE, de een in meer mate dan de ander. Want net zoals bij de ouderwetse DBA, zal ook niet ieder bedrijf genoeg werk hebben voor een full-time DBRE. Het is zeker niet iets wat je ‘er gewoon even bij kunt doen’. Wanneer je als DBA serieus wilt transformeren naar een DBRE, dan vereist het niet alleen een nieuwe manier van werken, maar ook van denken. Je moet anders gaan nadenken over je werk en bij alles wat je doet, moet je nadenken hoe je kan voorkomen dat je hetzelfde nog een keer handmatig moet herhalen.

Migreert uw bedrijf binnenkort naar de cloud? 

Migreert uw bedrijf naar de cloud? Vergeet de database niet! Wij hebben ruime ervaring met de grote drie cloudplatformen Azure, Amazon en Google. Maar ook als het gaat om private-cloudoplossingen weten wij wat de best practices zijn. En we weten hoe we configuraties kunnen tweaken voor de beste performance. Zijn er problemen? Dan kunnen wij die oplossen. Bij OptimaData hebben wij alle kennis in huis en die delen we graag. Neem contact met ons op als u verder wilt praten!

Inspiratie:

Het boek van Liane Campbell en Charity Majors over Database Reliability Engineering en Designing and Operating Resilient Database Systems.
De review van Brent Ozar (wereldwijd de allerbeste SQL Server DBA / Specialist) over de transitie van de "oude" DBA naar de "nieuwe" DBA in het boek Database Reliability Engineering.

Video's:

De keynote van Laine Campbell over Modernizing the DBA role
Deze blog over de DBRE en de transitie van de oude naar de nieuwe DBA in steekwoorden: The next iteration of the DBA

Terug naar blogoverzicht

Reageer