“HVC is een organisatie die duurzaam afvalbeheer verzorgt voor meerdere gemeenten en waterschappen in Noord-Holland, Zuid-Holland, Flevoland en Friesland. De organisatie richt zich op afvalscheiding, voor hergebruik van grondstoffen, en produceert duurzame energie. 4,5 jaar geleden kwamen ze bij ons, digital agency Unc Inc, met een opdracht die precies in lijn ligt met onze missie: digitale producten en diensten voor purpose-driven merken, waarbij we human centered design inzetten. Het is echt samenwerken met HVC aan hun doelen en resultaten”, zegt Martijn Houtman, Technical Director & Partner van Unc Inc.
True x Unc Inc voor HVC
Groei van gebruikers van app HVC stelt eisen aan schaalbaarheid K8s op Azure
Duurzaam afvalbeheer in Nederland
“Deze samenwerking begon met een behoorlijke herziening van de website, met een online implementatie van de nieuwe merk-identiteit. Twee jaar geleden is daar een mobiele app bijgekomen. De focus van deze applicatie ligt op het verbeteren van afvalscheiding door inwoners”, zegt Martijn. “HVC richt zich namelijk op verduurzaming samen met hun klanten – gemeenten en waterschappen – en met inwoners van die gebieden. De organisatie biedt het concept aan van betalen naar hoeveelheid afval. Inwoners betalen geen afvalstoffenheffing, maar een basisbedrag plus een bedrag voor elke zak restafval die ze aanbieden. Dat draagt bij aan het verminderen van restafval.”
Verschillende gemeentelijke regels verwerken in één applicatie
“Voor een dergelijke applicatie gebruikte HVC eerder een white label applicatie. Daar ontbrak echter de nodige functionaliteit; de applicatie had op maat gemaakte informatie-voorziening nodig. Denk aan: hoe vaak heb je als inwoner restafval aangeboden, hoe doe je het ten opzichte van anderen, en tips om restafval te verminderen. Zo raken inwoners zelf betrokken bij duurzame afvalverwerking. Elke aangesloten gemeente heeft weer eigen tariefvorming en regels. Ook dat moest in de applicatie verwerkt kunnen worden. Aan ons om de juiste informatie bij de juiste inwoner te laten landen!” zegt Martijn.
Applicatie gebouwd met Laravel, React Native en een API applicatie
De applicatie van HVC heeft Unc Inc als native mobile app ontwikkeld met Laravel, React Native en een API applicatie op de achtergrond. Dit draait op de Kubernetes clusters die True beheert. “Dit platform zorgt ervoor dat we het schaalbaar kunnen houden. Op dit moment zijn er ongeveeer 200.000 gebruikers. Eén nieuwe gemeente als klant erbij voor HVC betekent voor de applicatie 15.000 tot 20.000 nieuwe gebruikers!” zegt Martijn. Ook voor piekdrukte is schaalbaarheid onontbeerlijk. “Aan het einde van het jaar wordt er een nieuwe inzamelkalender gepubliceerd. Dat zorgt voor piekdrukte. Ook geeft het begin van een nieuw jaar een impuls aan het bewuster bezig zijn met afvalscheiden. Op dit soort verwachte en onverwachte piekmomenten moeten we de applicatie aanpassen.” Juist vanwege deze eisen aan schaalbaarheid en piekmomenten hebben we vanuit True Kubernetes geadviseerd.
Wisselen van database op Azure
Bij schaalbaarheid is het, naast letten op je platform, ook letten op je database. Die vormt nogal eens een bottleneck bij forse groei van gebruikers. “Vorig jaar zijn er 4 nieuwe gemeenten bij HVC aangesloten; 50.000 extra gebruikers. De infrastructuur van de applicatie en websites moet daarop zijn ingericht. Twee jaar geleden, bij het opzetten van de infrastructuur, kozen we samen voor een oplossing met een database die toen voor handen lag. Inmiddels zijn er nieuwe manieren van een database inrichten binnen Azure”, zegt Martijn.
De technologie van een database – in dit geval een MySQL database op Azure – vernieuwt en verandert voortdurend. Twee jaar geleden was een single MySQL database de goede oplossing. Gedurende de tijd merkten True en Unc Inc dat de connectie naar de database langer duurde dan eerder. Ook gaat deze single database end-of-life in 2024. Reden om het aan te pakken met een nieuwe oplossing in de vorm van een flexible MySQL database. De requests gaan dan rechtstreeks naar de database server, in plaats van een hub. Dat zorgt dat er minder tijd nodig is om de requests af te handelen, wat ten goede komt aan de performance.
Martijn: “Deze oplossing betekende wel een migratie van de database. Die hebben we eerst op de acceptatie-omgeving gedaan. We merkten direct al flink meer performance en schaalbaarheid dan bij de single database in de productie-omgeving. Overigens blijft dit een kat-en-muis-spel: nieuwe gebruikers, nieuwe piekdrukte en nieuwe mogelijkheden om schalen nog effectiever in te richten houden ons scherp!”
Azure en Kubernetes specialist voor je klanten erbij
Martijn geeft aan dat de rol van True voor alle klanten van Unc Inc, en zeker ook in deze Story van HVC, ontzettend belangrijk is. “Voor kleine platformen beheren we zelf de hosting, maar niet voor zulke omvangrijke platformen. In de opdracht gaf HVC de eisen en wensen aan de SLA (Service Level Agreement) mee. We zagen al direct dat we dit niet zelf wilden doen en we adviseerden dan ook om het bij True als onze managed hosting partner te beleggen. Zo hebben we een specialist en adviseur erbij”, zegt Martijn. “We maken graag gebruik van de kennis van True, zeker in dit geval met een Kubernetes platform. Met een aantal collega’s zijn we op het kantoor van True geweest voor een spoedcursus Kubernetes. Zo hebben we ook zelf meerdere mensen die er kennis van hebben. Wordt het voor ons te complex, dan sparren we met engineers van True. Het is fijn om op hen te kunnen vertrouwen en terug te kunnen vallen.”
Nieuwe versie van Drupal én een server-upgrade
De websites van HVC draaien op Drupal, op de managed hosting omgeving voor True. “Voor Drupal zijn upgrades altijd wel een dingetje, zeker als er met een nieuwe versie van PHP ook een server-upgrade nodig is”, zegt Martijn.
Michael van Excel, Linux Engineer bij True: “Bij zo’n upgrade maken we gebruik van Ansible playbooks, een tool voor configuratiemanagement. Al onze best practices zitten hierin verpakt. Voor Unc Inc hebben we ook configuraties die specifiek voor hen zijn, erin, zoals een koppeling naar hun LDAP-omgeving.”
De benodigde server-upgrade is in nauwe samenwerking tussen True en Unc Inc gegaan. Martijn: “De website zelf functioneert als een portaal en verwijst of embedt alle tooling. Voor een upgrade zorgen wij voor een content stop, om down time te voorkomen. Tijdens die content stop kan de website nog wel alle inzendingen naar externe systemen doorsturen.”
“Voor de upgrade hebben we vanuit True de gewenste nieuwere versie van Ubuntu op nieuwe servers geïnstalleerd. Daarna kon Unc Inc voor HVC de migratie starten. Na uitgebreid testen zijn de DNS settings omgezet naar de nieuwe server. De upgrade was daarmee een feit!” zegt Michael. “Voor een enkele, kleine klant is zo’n migratie niet complex, wel tijdrovend. Voor meerdere klanten tegelijk wordt het wel een groot project. Alle applicatiecode moet worden bijgewerkt naar de nieuwere versies van de programmeertaal of het framework, het moet worden getest en gecommuniceerd met klanten. Die uitdaging – en soms pijn – van zo’n upgrade kunnen we verzachten door Unc Inc de tijd te hebben gegeven om het over te zetten.”
Doorontwikkelen van digitale applicaties en middelen
Wat zit er verder aan te komen als het om de (digitale) ambities van HVC gaat? Martijn: “HVC heeft als doel om van nu gemiddeld 250 kilogram of meer restafval per persoon per jaar naar 100 kilogram in 2025 te gaan. Vanuit Unc Inc dragen wij bij aan het online concept en (door)ontwikkelen van hun digitale middelen, zoals de applicatie. HVC zet ook vol in op het opwekken van duurzame energie uit afval en andere duurzame bronnen, zoals zonne- en windenergie. Hiervoor zijn we druk bezig om nieuwe en bestaande klanten online zo goed mogelijk te bedienen. Met dezelfde klantvriendelijkheid en aanzetten tot zelfstandigheid van inwoners. Een toffe ambitie!”