Van 1100 ongecontroleerde datastreams naar een gestructureerd observability-platform. TVH laat zien hoe je met heldere policies en platform engineering observability transformeert zonder ontwikkelaars te frustreren.
Center of Excellence Manager Platform bij TVH, Thibaut Vandenbussche, spreekt openhartig over de uitdagingen waarmee het bedrijf kampte. Bij TVH hadden ze meer dan 1100 verschillende datastreams die data leveren. Dan sta je voor een enorme uitdaging want ze moesten in detail gaan kijken: wat komt van waar, wat is de trend, en vooral: wordt deze data überhaupt wel gebruikt?
TVH is een internationale distributeur voor industriële onderdelen met 90 locaties wereldwijd. Het bedrijf levert onderdelen voor vorkheftrucks, transportbanden en zelfs vliegtuigonderdelen. TVH weet exact welke onderdelen nodig zijn om machines een optimale levensduur te geven, maar ook alternatieve onderdelen van derden wanneer originele componenten niet meer beschikbaar zijn.
Daar komt een enorme logistieke operatie bij kijken met honderden stappen. Bij TVH moesten ze de data van al die stappen op de juiste manier inzichtelijk krijgen.
Van technische monitoring naar end-to-end observability
Het bedrijf draait grotendeels op één groot systeem dat meer dan 30 jaar geleden is ontwikkeld. Dit systeem handelt alles af: van magazijnautomatisering met robots tot e-commerce en financiële administratie. “Het systeem waarop we groot zijn geworden, maar waar we wel tegen bepaalde limieten aanlopen,” zoals Vandenbussche het stelt.
De transformatie naar observability begon in 2021 toen TVH een serieuze klant werd van Elastic Cloud. Op dat moment ging het nog om laagdrempelige monitoring. “Ontwikkelaars schreven hun eigen custom monitoring, gericht op hun eigen service. Draait mijn component goed? Hoeveel milliseconden duurt het?”, aldus Vandenbussche. Dat was een goede eerste stap, maar ook werd snel duidelijk dat het probleem zit in de volledige end-to-end flow.
De supply chain bij TVH is volgens Vandenbussche extreem complex. Een order doorloopt honderden stappen: van prijsbepaling (dynamisch op basis van klant, locatie en voorraad) tot het bepalen van het optimale distributiecentrum, picking, packaging en verzending via schip, vliegtuig of vrachtwagen. “Als bij wijze van spreken een kleine machine dat een label drukt op een doos niet werkt, lijkt dat weinig, maar dat kan één stap zijn van de honderden stappen om een order correct te verwerken.” Zo’n kleine stap kan echter wel zorgen voor flinke vertraging. Dan schiet eenvoudige monitoring te kort en heb je echt volledige observability nodig van het begin tot het eind.
Observability met 2,5 terabyte per dag
De eerste uitdaging voor TVH om volledige observability in de organisatie te krijgen was grip krijgen op wat er precies gebeurd. Met het Elastic Consumption Framework ging het team vervolgens aan de slag: hoeveel data wordt er geïngest, wat komt waar vandaag, wat zijn de trends, en het belangrijkste: hoe wordt die data gebruikt?
De bevindingen waren volgens hem redelijk confronterend. “We zagen dat bepaalde data nooit werd opgevraagd”. Erger nog: veel teams werkten met cold data, terwijl effectieve observability juist draait om hot data. Volgens Vandenbussche hoorde hij van sommige teams dat ze al hun data in Elastic bewaarde omdat ze dat was opgedragen. Elastic is echter niet gebouwd als database.
Dat resulteerde in een grondige herziening van data retention policies en infrastructuur. TVH hanteert nu een matrix waarbij teams op basis van hun specifieke behoeften een passende setup krijgen. Teams die actief bezig zijn met observability en direct actie ondernemen bij een incident, krijgen andere infrastructuur dan teams die maar af en toe iets moeten opzoeken.
De keuze tussen hot, warm en frozen storage werd systematisch aangepakt. De meeste datastreams pushen ze bij TVH nu direct naar frozen. Cold gebruiken ze vrijwel niet meer. Dit leverde 10 procent kostenbesparing op, maar ook een betere ervaring. Aan de andere kant hebben andere teams hun data nu juist langer beschikbaar in hot, omdat beter op behoeften wordt gestuurd.
Platform engineering: ontwikkelaars aan boord krijgen
De kern van deze transformatie is uiteindelijk platform engineering. “Voor ons zijn de ontwikkelaars onze klanten. We moeten het makkelijk maken voor hen. Als je het niet makkelijk maakt, krijg je ze niet mee,” aldus Vandenbussche.
Dat bleek geen sinecure. Developers kunnen weerstand bieden tegen verandering, zeker in een omgeving met een sterke open source-cultuur. Als voorbeeld noemt hij: “Je hebt mensen die zeggen: ik doe het al 15 jaar zo, waarom kan ik dat niet zo blijven doen?”
De oplossing lag voor TVH in een combinatie van top-down en bottom-up aanpak. Eerst werd leadership aan boord gehaald met heldere uitleg over de waarde voor zowel developers als business. Vervolgens werd van elk team minstens één developer gevraagd als ambassadeur. Zodat zij weer alle learnings en ervaringen kunnen meenemen naar hun eigen teams.
Verder heeft TVH een community opgericht met workshops, hackathons en succesverhalen. Allemaal in de context van observability. Ze proberen de platform engineering mindset door te trekken naar alles. Door zoveel mogelijk te standaardiseren en mensen op dezelfde manier te laten ontwikkelen worden het eenvoudiger om observability toe te passen.
De toekomst is gedeelde KPI’s voor business en IT
Het huidige framework bestaat uit guardrails en policies die nieuwe oplossingen probleemloos kunnen onboarden. Dat betekent dat bij veranderingen in de infrastructuur of applicaties het altijd kan worden aangesloten op het framework. Bijvoorbeeld bij migraties naar nieuwe oplossingen.
OpenTelemetry staat ook op de roadmap. “Als je de owner bent van je observability space, moet je jezelf een beetje indekken. We hebben een goed partnership met Elastic, waarbij openheid enorm belangrijk is. Als er ooit een andere vendor komt met aanvullende functionaliteit die ook OTEL-compatible is, kan je die eenvoudig toevoegen.”, aldus Vandenbussche.
Uiteindelijk wil TVH de business en IT samenbrengen rond gedeelde KPI’s. “Elke afdeling moet KPI-driven zijn. Die KPI’s zijn er al, maar iedereen meet op zijn eigen manier. Als er ergens een probleem is, moet dat end-to-end toegankelijk zijn,” aldus Vandenbussche.
Het meest kritische is de “Always On” KPI: uptime en beschikbaarheid van de core platformen. “Dat is een shared KPI voor IT en de business. Als je een bestelling plaatst en het duurt vijf dagen, is dat een probleem voor beide.”
Wil je dat echter op tijd tackelen en de exacte stap detecteren die verantwoordelijk is voor de vertraging, dan moet de basis van observability kloppen en moet er voldoende data beschikbaar zijn.
De boodschap is helder: observability is een flinke klus die je niet even tussen neus en lippen door doet, of zoals ze in België zeggen tussen de soep en de patatten.