IBM draait applicatiepijplijn om met Razee

IBM maakt Razee opensource en wil zo organisaties wereldwijd een flexibelere manier geven op applicaties snel maar gericht en flexibel uit te rollen en te updaten.

Een traditionele pipeline voor applicatie-ontwikkeling is vrij monolithisch. Van ontwikkelen over testen tot staging en uitrol is er weinig flexibiliteit. Historisch gezien is dat geen ramp, zeker niet bij kleinere ondernemingen met een beperkte IT-voetafdruk. Het wordt anders wanneer je zoals IBM toepassingen bestaande uit tientallen microservices uitrolt naar tienduizenden containerclusters verspreid over de hele wereld.

Misschien wil je een update voor een applicatie eerst in een geografisch kleine regio uitrollen of is een grote klant net aan een kritische migratie bezig waardoor een verandering van een app erg ongelegen komt. IBM liep tegen de beperkingen van de traditionele productiepijplijn aan, en bouwde daarom Razee.

Drie pijlers

Op KubeCon 2019 in Barcelona maakt de softwarereus dat project opensource. “Razee is gebaseerd op drie pijlers”, vertelt Jason McGee, VP en CTO van IBM’s cloudplatform aan Techzine. “Eerst en vooral schakelen we over van een traditoneel push-model waarbij applicaties in productie geduwd worden, maar een pull-model waarbij clusters zelf updates binnenhalen. Vergelijk het met het updatemodel van je smartphone.”

 

IBM bouwde Razee om een uitrol op schaal te faciliteren en maakt het project nu opensource.

Aan dat pull-model koppelt Razee vervolgens een uitgebreid rule-systeem. “Zo kan je definiëren welke versies van applicaties waar thuishoren, en waar updates nog niet gewenst zijn”, zegt McGee. Dat laat een organisatie heel flexibel toe om nieuwe apps of nieuwe versies van microservices heel gefaseerd het wild in te sturen. Zo is het eenvoudig om de uitrol te starten in minder kritische regio’s, en grote klanten bijvoorbeeld even te sparen als ze daar om gevraagd hebben.

Overzicht

De aanpak zorgt in contrast met een monolithische uitrol voor fragmentatie, waardoor Razee ook een derde pijler bevat. “De tool stelt een inventaris op aan de hand van rapportage van de clusters zelf. Die laten weten welke app of service op welke versie zit, waarna je een handig overzicht hebt.”

IBM ontwikkelde Razee uit noodzaak om flexibel microservices uit te rollen op schaal, maar het is er van overtuigd dat het Razee-project ook buiten het bedrijf gading zal vinden. “Zelfs in kleinere organisaties is het handig om gefragmenteerd toepassingen uit te rollen en een handig versie-overzicht ter beschikking te hebben”, voorspelt McGee.