De reden waarom velen met Linux beginnen, is omdat het open source is en dus gratis. De reden dat veel bedrijven gebruik van Linux maken, is omdat het stabiel is en de allerbeste garanties biedt voor continu. Elke Enterprise distributie echter begint als open source. In dit artikel lees je wat daar allemaal nog tussen zit.

Voordat we het kunnen hebben over het proces van open source tot Enterprise Linux, is het belangrijk duidelijkheid te hebben waarover het precies over gaat. Wanneer we het in dit artikel hebben over een Enterprise Linux distributie, gaat het over een distributie waar je in principe voor moet betalen. Dat is raar, want Linux is open source en dat geldt ook voor alle code in een Enterprise distributie. Dus waarom zou je ineens moeten gaan betalen voor iets dat in principe gratis is?

Het antwoord op die vraag is eenvoudig te geven: support. Bedrijven maken gebruik van Linux voor kritische toepassingen, omdat ze daarmee een behoorlijke besparing kunnen realiseren in vergelijking met de UNIX besturingssystemen waar die toepassingen in het verleden op draaiden.

Het succes van Enterprise Linux zit hem niet in Windows systemen, die vervangen worden door Linux. Daarvoor zijn de verschillen tussen Linux en Windows net iets te groot en voor een tevreden beheerder in het MKB is er geen enkele reden zijn goed functionerende Windows servers te vervangen door Linux. Windows servers worden vooral uitgefaseerd, omdat dezelfde functionaliteit ook geboden kan worden door services in de cloud. Linux wordt ingezet als vervanging van UNIX.

Nu gaat het bij heel veel Enterprise Linux servers om omgevingen waar zeer belangrijke, kritische toepassingen op draaien. De bedrijven die die toepassingen in het verleden op UNIX draaiden, willen dat de garantie dat de toepassingen op Linux net zo goed draaien volledig is. Daarom betalen grote bedrijven voor support op Linux.

Enterprise Support

Wanneer we het hebben over support in Enterprise omgevingen, gaat het om veel meer dan alleen maar “de handjes”. Support betekent in deze context een aantal zaken:

       Garantie dat toepassingen draaien op een Linux platform

       Garantie dat Linux draait op de hardware die als server gebruikt wordt

       Verificatie en uitgebreid testen van patches en updates, voordat deze uitgerold worden

       Hulp bij problemen

Het aardige is dat al deze zaken ook los ingekocht kunnen worden. Je hebt geen Red Hat Enterprise Linux nodig om een supported platform aan klanten aan te bieden. Daar gaat het echter niet om. Voor de IT manager gaat het er om dat garantie ingekocht wordt, waardoor alles ingedekt is. Hoe goed je als eenling ook bent en hoe mooi de open source distributie ook mag zijn, als er een keer iets flink mis gaat, dan moet de IT manager aan de directie uit kunnen leggen dat het niet aan hem ligt. Dus worden er support contracten afgesloten met partijen als Red Hat of SUSE. Niet alleen de kwaliteit van de software, maar ook het gevoel dat je veilig bent, omdat je terug kunt vallen op een betrouwbare partij, is daarbij essentieel.

Nu zijn er ook Linux distributies die precies dezelfde code bieden als de Enterprise distributies. Waarom bedrijven dan toch nog betalen voor een Enterprise Linux distributie mag duidelijk zijn: het gaat niet om de code, het gaat er om dat de IT manager aan de directie uit kan leggen dat alles goed geregeld is. “We hebben support van Red Hat” en vervolgens gaat het er weer om dat de directie dat uit kan leggen aan de aandeelhouders of aan het ministerie.

Naast deze hele categorie van Enterprise distributies, zijn er ook open source distributies die gebruikt worden in bedrijfsomgevingen. Denk daarbij vooral aan Debian of Ubuntu Long Term Support. Dit is echter een heel ander verhaal, omdat de mate van afdekken van verantwoordelijkheden daarin veel minder geregeld is.

Misbruik van Open Source?

Als je kijkt naar dé twee spelers op het gebied van Enterprise Linux (SUSE en Red Hat), is het proces allebei deze partijen hetzelfde. Er is een volledige open source distributie die gratis beschikbaar gesteld wordt door de community, maar die ook gesponsord wordt door Red Hat of SUSE. Met die sponsoring begint het teruggeven aan de community. Doordat deze partijen programmeurs betalen die actief mee ontwikkelen aan de gratis open source distributie, wordt goodwill gekweekt. Tegelijkertijd is de open source distributie een kweekvijver en testomgeving waarin alles uitgeprobeerd kan worden.

Op een gegeven moment komen er dan op Enterprise niveau product managers bijeen, die op basis van de open source distributie een Enterprise distributie maken. Daarbij wordt in principe niets nieuws toegevoegd, maar de accenten worden verlegd. Het begint ermee dat bepaald wordt wat er in de Enterprise distributie moet komen. Als dat duidelijk is, volgt een fase van stabilisatie van de software, die over het algemeen best lang duurt. Daarbij dragen ontwikkelaars van SUSE of Red Hat bij aan de code, die vervolgens weer terug gegeven wordt aan de community. SUSE heeft in de tijd dat het van Novell was wat mislukte experimenten gedaan met “mixed source”, maar dat was geen succes en gebeurt daarom ook niet meer.

De transformatie begint ermee dat software, die zich al bewezen heeft in open source, gekozen wordt. Deze software wordt vervolgens geïntegreerd in een goed samenhangende en stabiele Linux distributie. Daarbij wordt de software uitgebreid getest, totdat deze uiteindelijk stabiel bevonden is. Op het moment dat dit geschreven werd, zat de auteur midden in de ontwikkelingsprocedure van SUSE Linux Enterprise Server en spreekt dus uit ervaring.

Voor de totale ontwikkeling wordt ongeveer een jaar uitgetrokken. In november 2013 was op de jaarlijkse SUSE conferentie al in grote lijnen duidelijk wat er in de volgende Enterprise release moest komen. Op basis daarvan werd in maart 2014 de eerste bèta gelanceerd. Niet iedereen kan deelnemen aan deze bèta’s. De deelnemers worden zorgvuldig gekozen, omdat een hele grote groep bèta testers toch niet beheerd kan worden.

 In totaal zijn er 7 bèta’s, waarna de release candidates volgen (in principe 3, maar dat kunnen er meer zijn). Het belangrijkste verschil tussen beiden is dat in de bèta’s  features toegevoegd kunnen worden, terwijl de release candidate stabiel is, zodat hardware- en softwareleveranciers aan het werk kunnen om hun product voor de nieuwe versie te stabiliseren.

In de bèta van SUSE zijn er verschillende communicatiekanalen waarin bèta testers met ontwikkelaars kunnen communiceren. Elke bèta tester probeert datgene uit wat voor hem relevant is en op basis van die tests en de tests die verder intern nog gedaan worden, komen bugs naar boven die vervolgens opgelost worden. Daarnaast zijn er periodieke conference calls, waarin nieuwe aankondigingen gedaan worden, functionaliteit wordt uitgelegd en hangende issues besproken kunnen worden.

De communicatie in de bèta fase is bij SUSE erg open. Problemen die aangemeld worden, worden direct door de betreffende ontwikkelaars opgepakt. Daarin schuilt ook de animo van de bèta testers. Door op deze manier samen te werken, leer je er als bèta tester veel van.

Het uiteindelijke resultaat is er dan als de nieuwe versie gelanceerd wordt. Daarmee houdt het echter niet op. Als een nieuwe versie publiek gaat, dan komen er vaak ook wel weer dingen naar voren die opgepakt moeten worden. En daar volgen dan weer patches en service packs uit. De uiteindelijke overgang van open source naar Enterprise is daarom niet een eenmalig iets, maar een continue proces dat ervoor zorgt dat vrijwel alle grote bedrijven tegenwoordig een aanzienlijk deel van hun services op Linux draaien.

Dit artikel van Sander van Vught heeft eerder gestaan in Linuxmagazine 2014 nr 3 p 48