Site Reliability Engineering is een belangrijke publicatie. Onderwerp is een radicaal andere aanpak voor it-operations waarin bij Google hoog gekwalificeerde engineers worden ingezet in plaats van operators op Level 1 niveau. Een boek dat door iedere it-professional. betrokken bij de operationele kant. zou moeten worden gelezen. Sterker nog, eigenlijk door iedere it service management (itsm)-professional of leidinggevende die zich afvraagt hoe het vakgebied zich verder zal ontwikkelen
Uitgangpunt van dit boek is de gedachte dat in het ideale geval alle routinematige handelingen in een productie-omgeving geautomatiseerd zouden moeten worden. Dat is niet alleen het starten en controleren van bijvoorbeeld batch jobs, maar ook het automatisch voorkomen en/of afhandelen van verstoringen en fouten. Eigenlijk wil je alle routinematige handelingen uitsluiten. Dat is dus inclusief de meeste service management-activiteiten zoals bijvoorbeeld het verzorgen van rapportages of het goedkeuren van changes.
Dit is natuurlijk de kerngedachte achter cloud, maar ook vanuit ‘high availability’-oogpunt is deze ontwikkeling onmisbaar. De Nederlandsche Bank zet bijvoorbeeld de grote banken onder druk om de beschikbaarheid van de belangrijkste betalingssystemen op te schroeven naar 99.88 procent. Ook in andere sectoren is een dergelijke hoge 24×7 beschikbaarheid steeds belangrijker. En dat zal alleen maar kunnen door volledig geautomatiseerde systemen die geregeld worden bijgewerkt door mensen die echt weten waar het over gaat.
Dit klinkt makkelijk, maar dat is het natuurlijk niet. Heel veel software is oud en complex. Maar ook het bouwen van nieuwe systemen gaat bepaald niet vlekkeloos. Alle fouten uitsluiten is onmogelijk en vreselijk kostbaar, dus je zal altijd verstoringen houden. Wat je wel kan doen, is systematisch proberen om fouten voortijdig te signaleren en zo effectief mogelijk af te handelen. Ook het design van een oplossing speelt natuurlijk een belangrijke rol.
Kern van de gedachte bij Google is dat er hoog gekwalificeerde engineers met een brede achtergrond worden ingezet voor operations in plaats van mensen die vooral vooraf gedocumenteerde activiteiten uitvoeren en anderen gaan inschakelen als het complex wordt. Ten eerste is dit noodzakelijk, omdat je domweg steeds minder tijd hebt als er iets fout gaat om specialisten te gaan inzetten. Ten tweede is een engineer over het algemeen zeer gemotiveerd om een terugkerende routine handeling te voorkomen. Dat vinden ze niet leuk.
Site Reliability Engineering is eigenlijk te vergelijken met het enige jaren geleden verschenen Continuous Delivery van Jeff Humble en anderen. Dat werk was en is fundamenteel voor een ieder betrokken bij DevOps en Agile development. Dit boek verdient dezelfde rol voor elke service management-professional.
Het Engelstalige boek bestaat uit een groot aantal losse artikelen, gegroepeerd in vijf gedeelten en een appendix. Eerst een introductie, de principe’s en dan practices; een groot aantal practische onderwerpen zoals montoring, post mortem analyses en technische onderwerpen die soms wel erg ver gaan. Daarna als vierde een aantal onderwerpen onder de noemer management gevolgd door een conclusie en een appendix met bijvoorbeeld voorbeelden van formulieren.
De lezer moet zich wel realiseren dat Google natuurlijk niet een gemiddeld bedrijf representeerd. Non-functionele aspecten zoals schaalbaarheid, performance spelen een veel grotere rol in de omgevingen met enorme aantallen systemen waarmee Google werkt. De meeste organisaties, bijvoorbeeld banken, zullen een diversere omgeving hebben met veel meer verschillende applicaties. Dat betekent dat de Google gedachten niet zomaar kunnen worden toegepast in een andere omgeving. Hoe bijvoorbeeld de integratie met DevOps-teams en het Agile-denken in het algemeen zou moeten verlopen komt niet echt aan bod.
Belangrijkste aspect van het boek is echter de denkrichting. En die is van toepassingen op alle grotere organisaties. Het stelselmatige terugdringen van ‘Toil’ en de inzet van brede hooggekwalifeerde professionals met inhoudelijke kennis in operations wordt steeds crucialer.