Project verhaal van Ricky: iPaas integratie oplossing Hub-X

Automation strategie

Project verhaal van Ricky: iPaas integratie oplossing Hub-X

Zo’n beetje iedere organisatie gebruikt meerdere softwareoplossingen voor administratieve zaken. Die systemen staan niet op zichzelf. Informatie die wordt vastgelegd in één systeem kan nodig zijn in een ander systeem. Een eenvoudig voorbeeld hiervan is urenverantwoording. De informatie die wordt vastgelegd in zo’n systeem is nodig voor facturatie dat weer met een ander systeem wordt gedaan. Het Hub-X project heeft als doel een applicatie te ontwikkelen waarmee we een laagdrempelige oplossing willen bieden voor dit soort “integratie” vraagstukken.

 

Hub-X, microservices architectuur 

 

Hub-X is gebouwd volgens de microservices architectuur. Het bestaat uit connector services en customer services. De connector services zijn de componenten die informatie ophalen uit of versturen naar een specifiek systeem. De customer services maken gebruik van de connector services en zij zorgen ervoor de informatie die opgehaald wordt door een connector service, op de juiste manier getransformeerd wordt, zodat het door een andere connector service verstuurd kan worden naar een systeem dat deze informatie gebruikt. Zo kunnen we snel en gemakkelijk nieuwe klanten aansluiten door voor iedere nieuwe klant een customer service te bouwen die de gewenste transformaties uitvoert en gebruik maakt van bestaande of eventueel nieuwe connector services. Klanten kunnen kiezen om hun eigen customer service in ons shared platform te laten draaien, maar bij zware workloads of hoge eisen aan vertrouwelijkheid kunnen ze ook voor een dedicated oplossing kiezen.

 

Gebruik van nieuwe, innovatieve technologie

 

Waar mogelijk gebruiken we de nieuwste technieken en werkwijzen. Hub-X draait in Kubernetes en is gebouwd met C# en .NET core 6.0. We deployen met CI/CD pipelines vanuit Azure Devops en gebruiken Git based source control. Sonar Qube is geïntegreerd in de pipelines voor geautomatiseerde code quality assessment en we eisen minimaal 80% code coverage voor unit tests. We reviewen elkaars pull requests en na review deployen we direct naar de development omgeving. Op dit moment draait ons shared Hub-X platform in Azure Kubernetes Services. De bedoeling dat we Hub-X in toekomst ook als dedicated oplossing aan klanten aan kunnen bieden en hen de keuze kunnen geven om in Azure, AWS of op eigen infrastructuur op Rancher te draaien. Voor iedere klant die dit wenst definiëren we dan een eigen pipeline in Azure DevOps.

 

De persoonlijke rol en ervaring van Ricky

 

In dit project heb ik me voornamelijk bezig gehouden met het opzetten van de Kubernetes omgeving op Azure. Dat vond ik erg leuk, aangezien ik de ontwikkelingen rond Kubernetes en aanverwante technologieën al een tijdje volgde. In het verleden heb ik in het kader van kennisdeling al eens een presentatie voor collega’s verzorgd over dit onderwerp. Ik had daarvoor een kleine voorbeeld applicatie gebouwd die werd gehost in een lokaal testcluster. Leuk, maar te klein om echt alle aspecten van Kubernetes te leren kennen. Nu kreeg ik de kans om Kubernetes in de praktijk te gebruiken en de specifieke problemen waar ik in tegenaan liep bij het opzetten van een product waardige omgeving zorgden voor een versnelde verdieping van mijn kennis.

Succesverhalen

Bitnami