pharmacy with shelves and medications
01

Uitdaging

Het applicatielandschap van Medi-Market groeide snel. Om de toenemende complexiteit te beheren hadden ze een schaalbare en geautomatiseerde hostingoplossing nodig


02

Oplossing

AWS en Kubernetes werden ingezet voor flexibele en efficiënte containerorkestratie, waardoor eenvoudig schalen, auto-healing en kosteneffectiviteit werden gegarandeerd.


03

Benadering

Door gebruik te maken van een infrastructure-as-code methodologie met Terraform en continue monitoring via Datadog, bereikten we nauwkeurige controle, proactieve waarschuwingen en gestroomlijnd beheer.

medi-markt-1

Over Medi-Market

Medi-Market is een keten van parafarmacies van het Belgische bedrijf Medi-Market Group en is actief in de apotheek- en parafarmaciebranche. Het doel van Medi-Market is om een zo uitgebreid mogelijk assortiment kwaliteitsproducten toegankelijk te maken voor zoveel mogelijk mensen tegen de laagste prijs. Medi-Market heeft ongeveer 40 verkooppunten verspreid over België, Frankrijk en Italië.

Uitdaging

Een groeiend en divers applicatielandschap hosten

Sinds het begin van onze reis bij Medi-Market is het aantal applicaties dat het bedrijf gebruikt enorm gegroeid. Eind 2018 begon een van onze ontwikkelteams met het schrijven van één applicatie. Fast forward naar twee jaar later, en er draaien al 13 verschillende applicaties. De infrastructuur van deze applicaties wordt gebruikt in België en Italië.

We hebben Docker-containers gebruikt om de verschillende applicaties voor Medi-Market te ontwikkelen. Door deze containers te gebruiken, zorgen we ervoor dat de Medi-Market applicaties sneller geüpdatet kunnen worden en dat ze minder resources gebruiken.

Om alle applicaties van Medi-Market goed te laten werken, zijn er ook verschillende aanvullende tools nodig. De toepassingen van Medi-Market maken bijvoorbeeld gebruik van ElasticSearch en Kafka. Wat betreft de infrastructuur voor de applicaties, zorgt Datadog voor monitoring, metrics en logging. Tot slot zijn er ook enkele tools om de beveiliging te verbeteren, zoals Sealed Secrets en Calico.

Deze extra tools draaien ook in aparte containers. In totaal draaien er ongeveer 60 containers met tools en applicaties in de infrastructuur van Medi-Market. Het handmatig beheren van zo'n groot aantal containers wordt echter al snel een enorme klus. Medi-Market had daarom meer automatisering en betrouwbare hosting nodig om het handmatige beheer, dat nodig is om alle applicaties correct te laten draaien, tot een minimum te beperken.

medi market flexible hosting 1

 

Oplossing

Flexibele hosting op basis van AWS en Kubernetes

Om een flexibele en kostenefficiënte oplossing te kunnen bieden, maakten we gebruik van cloudprovider Amazon Web Services (AWS). Met de krachtige containermanagementmogelijkheden van AWS startten we de Docker-containers, die nodig zijn voor de correcte werking van de applicaties van Medi-Market, op de virtuele machines van AWS. Dankzij de flexibiliteit die AWS biedt, konden we starten met het minimaal benodigde aantal virtuele machines. Wanneer er nieuwe containers of applicaties worden toegevoegd, kunnen we snel extra capaciteit instellen.

medi market flexible hosting 3

Aanpak

Een transparante en flexibele aanpak

We hebben Kubernetes gebruikt als container orchestrator, de perfecte tool om het grote aantal containers bij Medi-Market te beheren. Het Kubernetes-platform zorgt voor het juiste beheer van de verschillende applicaties, ondersteunende tools en monitoring die binnen de infrastructuur van Medi-Market draaien. Dit betekent dat alle applicaties, inclusief de applicatie voor automatisch voorraadbeheer, alleen draaien op de capaciteit die op dat moment nodig is. Zodra er meer of minder capaciteit nodig is of wanneer er nieuwe applicaties worden toegevoegd, schaalt Kubernetes de hosting omhoog of omlaag. Op deze manier betaalt Medi-Market nooit voor ongebruikte overcapaciteit en behoudt het efficiënte hosting die flexibel schaalt.

Door de uniforme opzet van het Kubernetes-platform kunnen extra applicaties of ondersteunende tools snel worden toegevoegd, zonder voorafgaand ontwikkelwerk. Een ander voordeel is dat de capaciteit eenvoudig kan worden aangepast op basis van de huidige vereisten. Het updaten van een applicatie naar een nieuwe versie kan ook eenvoudig, automatisch en in veel gevallen zonder downtime. Hierdoor kan Medi-Market altijd in een veilige omgeving werken en de nieuwste functies gebruiken. Het Kubernetes-platform ondersteunt ook 'auto-healing': problemen zoals kapotte hardware of crashende machines worden automatisch gedetecteerd en vervangen, met minimale impact op de prestaties of beschikbaarheid. In veel gevallen merkt de eindgebruiker hier helemaal niets van.

medi market flexible hosting 2

Infrastructuur-as-code aanpak voor maximale controle en testen

We hebben een infrastructure-as-code aanpak gebruikt met Terraform. Bij een infrastructure-as-code aanpak wordt infrastructuur geschreven als uitvoerbare code. Met deze aanpak kunnen we snel nieuwe omgevingen toevoegen, zoals een test- of productieomgeving. Bovendien stelt deze aanpak ons in staat om wijzigingen snel en eenvoudig te testen in een testomgeving voordat ze in productie gaan. Omdat alles in code wordt geschreven, hebben we altijd controle over wijzigingen.

Een ander voordeel is dat we de infrastructuurcode kunnen behandelen als elke andere code. Op deze manier kunnen we ook pull requests doen en een review van de code vragen van enkele teamleden voordat het wordt toegevoegd aan de codebase. Hierdoor houden we extra controle over wat we precies creëren in AWS.

Sterke en proactieve bewaking

Er draait altijd een datadog-agent binnen het Kubernetes-cluster. Deze monitoring agent is verantwoordelijk voor het doorsturen van monitoring metrics en de logs van de verschillende applicaties. De binnenkomende metrics worden continu geëvalueerd via monitors die we hebben ingesteld. Zodra een kritieke waarde wordt bereikt, wordt het team automatisch op de hoogte gebracht via een alert in OpsGenie. Zo kunnen we snel en proactief reageren op potentiële problemen.

Gerelateerde cases

Ontdek hoe andere bedrijven hun IT-landschappen hebben geoptimaliseerd met AWS, Kubernetes en infrastructure-as-code.

Deel met je team!

Deel de zaak via: