Al jaren wacht ik op de Linux (en open source) revolutie in de IT markt. Linux op desktops, Linux op servers en Linux op telefoons. De wereld zou overspoeld worden en Linux zou overal te vinden zijn. Hoe kunnen bedrijven met hun commerciële software hiermee concurreren?
Geen revolutie
Niets was echter minder waar. Linux op de desktop zette niet door. Niet dat het ontbrak aan goede Linux desktop distributies en ook niet aan goede software. Bovendien steeds meer applicaties werden web-based. Een Linux desktop was een prima alternatief. Eindgebruikers stoorden zich toch aan kleine visuele verschillen en bleven Microsoft Windows trouw. Vreemd genoeg waren het vaak juist deze eindgebruikers die het geen probleem vonden over te stappen maar OS X.
Toch een revolutie
Hoewel het minder zichtbaar was, kwam Linux toch in elk bedrijf en in elke huiskamer binnen. Routers, firewalls, NAS en andere appliances werden steeds vaker voorzien van Linux. Dit is begrijpelijk, Linux kost niets en is eindeloos aanpasbaar. Ook kwam er goedkope PC hardware (Raspberry pi) op de markt en daarop draaide natuurlijk Linux. Ineens gingen naar mijn idee mensen om me heen zonder enige Linux geschiedenis daar gewoon mee experimenteren. De drempel is blijkbaar toch laag.
Microservices en Cloud computing
De invloed van web gebaseerde technieken op de IT ontwikkelingen deed zich gelden. Het werd steeds interessanter geen grote applicaties te bouwen, maar kleine stukjes functionaliteit, zogenaamde microservices. Deze microservices maken het mogelijk dat development sneller kan plaats vinden en met minder risico’s en impact op eindgebruikers. Ook de bijbehorende development methoden werden geadapteerd, zoals continuously delivery, agile en scrum. Tegelijkertijd raakten bedrijven overtuigt van het nut van virtualisatie van infrastructuur (getuige het grote succes van VMware). De stap van virtualisatie naar Cloud Computing is daarom geen al te grote technische stap. De open source community volgde rap met bijvoorbeeld OpenStack.
Datacenter automation
Hoewel Cloud Computing technisch geen al te grote stap betekende, mist het zijn effect op de IT niet. Alles binnen een Cloud omgeving laat zich scripten en daarmee automatiseren. Of het nu gaat om de deployment van virtuele servers, de configuratie daarvan of het schalen van capaciteit (scale in en scale out). Dit wordt wel aangeduid met datacenter automation. Het verklaart de populariteit van tools als Puppet en Ansible. Het laat zich raden dat die zich goed laten combineren met het idee van de microservices. Men spreekt hier wel over de verandering van “server as pets” naar “servers as cattle”.
Alle ingrediënten samen
De principes van “scale out” en “scale in” en de microservices samen stelden steeds minder eisen aan de features van het operating systeem. Een OS wordt steeds eenzijdiger ingezet. Linux leent zich hier wederom erg goed voor. Het lijkt eerder een doos met Lego blokjes waaruit je zelf iets kan maken, dan een kant en klaar product. Het is naar mijn idee hier dat Linux revolutionair zal blijken. Naast dat bijna alle cloud infrastructuren op Linux gebouwd worden (zoals bijvoorbeeld Amazon, maar ook OpenStack) is de keuze voor Linux als OS binnen de Cloud ook logisch. Voordelen zijn bijvoorbeeld: lage kosten, geen licentie problematiek en de aanpasbaarheid.
Nog eenvoudiger
Het toepassen van microservices in Cloud infrastructuur verlangt verdere afslanking. De overhead van een virtuele server is nog steeds te groot. Hier biedt het gebruik van container technologie, zoals Docker uitkomst , zeker in combinatie met datacenter automation. Het OS hoefde nog minder features – en dus complexiteit – te hebben. Ook het update mechanisme kon vereenvoudigd worden. De grote Linux distributeurs kwamen met “uitgeklede” versies van hun OS met aangepast update mechanisme (zoals Ubuntu Snappy Core en Red Hat’s Atomic).
d.d. 7 december 2015 Aanvulling, Vandaag kwam ik dit artikel tegen over unikernels. Dit sluit precies aan bij de zoektocht naar kleinere OS-en, een kernel die slechts een applicatie draait.
Features
Kon commerciële software voorheen met Linux concurreren op basis van features, dan zie ik de grond daarvoor nog verder verdwijnen. De aanpasbaarheid en kwaliteit maken Linux tot een onweerstaanbare keuze voor bedrijven – nog los van kostenvoordelen. De schaalbaarheid en automatisering daarvan schreeuwt om open source software. Linux “loves Cloud Computing”. Deze revolutie is in alle hevigheid los gebarsten.