Bár a nyílt, adott feltételek mellett bárki által szabadon felhasználható forráskódú szoftverek készítésének ötlete Richard Stallman 80-as évekbeli tevékenységére vezethető vissza, valamint további lendületet kapott 1991 augusztusában, amikor is Linus Torvalds bejelentette a Linux kernel projektet, a desktop meghódítására tett minden kísérlet marginális maradt. A 90-es években azonban még sokan hittek abban, hogy az operációs rendszerek piacán is érvényesül majd a sokszínűség. Gondoljunk csak bele, hogy csak az IBM által megalapozott DOS-nak (Disk Operating Systems) hányféle variációja versenyzett egymással! Volt MS DOS, FreeDOS, OpenDOS, DR-DOS és így tovább.
A Linux egyik legfőbb erényének akkoriban azt tartották, hogy képes volt a kvázi szabvánnyá váló x86-os architektúrán megvalósítani a Unix rendszerek logikusságát, rugalmasságát, megbízhatóságát és biztonságát. Amikor a Windows egyre inkább kiszorított minden más kezdeményezést a piacról, a Linux szinte egyedüli ellenlábasaként maradt talpon – ám marginális szereplője volt a desktop PC-piacnak.
Azóta nagyot fordult a világ. A desktop-központúság és a monokultúra több éve folyamatosan megszűnőben van, általános célú, végfelhasználóknak szánt operációs rendszer alatt ma már inkább értünk egy iOS-t, mint egy Windows-t, még akkor is, ha ebbe kevesen gondolnak konkrétan bele. A szórakoztató-elektronikai célrendszerek piacán egyértelműen egyeduralkodó a Linux és az Android, elég ha megnézünk egy smart TV-t, egy médialejátszót, egy NAS-t, egy médiaszervert. Ez a kép ismétlődik, ha megvizsgáljuk az automatizálási és irányítástechnikai niche-piacokat, a telekommunikációs és hálózati háttérrendszereket. Még jobban kitágul a kép, ha általánosabb ökorendszerekben kezdünk gondolkodni: például egy teljes iskolai oktatási és infrastrukturális környezet, ami ugyan célrendszer, de nagyon sokrétű feladatokat kell ellásson, ma sokkal könnyebben megvalósítható Linux-alapokon, mint bármely egyéb platformon, jó példa erre a SuliX.
A fent leírt területek a jelent mutatják és sikeres megoldásokat, azonban a nyílt forráskód még ennél is sokkal többet jelent. A konkrét megoldások mellett, sokszor azok sikerére építkezve a nyílt forráskód számos, manapság kiemelt területen túl tudott lépni a konkrét megoldások keretein és technológiai szabvánnyá vált, referenciaimplementációvá, teljes iparágak számára. A továbbiakban szeretném bemutatni a felhő példáján, hogy ez hogyan jöhetett létre, illetve milyen kilátásokkal kecsegtet a jövőre nézve.
A kétpólusú rendszer
Nem is kell nagyon sarkítanom ahhoz, hogy kijelenthessem, ma két operációs rendszer van a világon: a Windows és a Linux. Míg klasszikus desktopon a Windows egyelőre verhetetlen (leszámítva az Apple nyílt, amúgy OpenBSD-gyökerű operációs rendszerét), szerverkörnyezetben szembeötlő a Linux uralma. Bár nehéz pontos statisztikákat készíteni, de szerver környezetben ma legrosszabb esetben is a piac felét uralja. A fele persze a "jobbik" fele, mert legtöbbször az előremutató, innovatív megoldásokhoz kötődik. Emellett Linux esetében persze az "uralja" kifejezés egyáltalán nem helytálló, több szempontból sem – lásd alább.
Ráadásul a felhőnek köszönhetően ma már olyan kiterjedt ökoszisztéma alakult ki, amely messze túlmutat az operációs rendszeren. A felhő és a vele érkező technológiai szabványok megkerülhetetlenné tették a nyílt forráskódú megoldásokat. Ma már nincs olyan hardvergyártó, felhőszolgáltató, alkalmazásszállító, integrátor, amely ne használná, sőt támogatná azokat. A legnagyobb ellenzői is kénytelenek behódolni neki.
Persze ki így, ki úgy. Ki nyíltan, ki fű alatt, ki vállalva, ki tagadva. Ki elkötelezettségből, ki józan üzleti számításból, ki pedig azért, hogy ott legyen, ha épp meg kell akadályozni valami számára kedvezőtlent.
Támogatom, tűröm, tiltom
Nézzük, milyen az egyes cégek hozzáállása a kérdéshez!
A legegyszerűbb a helyzet azokkal a vállalatokkal, amelyek teljesen nyílt forráskódú megoldásokra alapozták üzleti modelljüket. Egyre nagyobb számban találunk ilyeneket. Nyilván elsőre mindenkinek a Red Hat juthat eszébe, de ma már a legkülönbözőbb üzleti területeken találunk csak nyílt forráskódban gondolkodó gyártókat, amelyek – ha nem is akkora méretűek, mint a Red Hat – a saját területükön nagy jelentőséggel bírnak. Ide számíthatjuk a ForgeRockot, az Alfrescót, a Nagiost, hogy csak néhány példát említsünk.
Egy érdekes, speciális terület még az üzleti analitika. A fejlett analitikai piac két jelenlegi vezetője (SAS, IBM) mellett két kisebb vállalat is a vezető analitikai szállítók közé került a Gartner legutóbbi magic quadrantjában, a svájci KNIME és a német RapidMiner, melyek nyílt forráskódú analitikai eszközöket kínálnak.
Az ökoszisztémának nagyon jót tettek azok a cégek is – ez lenne talán a második legfontosabb csoport –, melyek használnak open source megoldásokat, de maguk nem közvetlenül ebből élnek, szolgáltatásaik fejlesztéséhez azonban igénybe veszik a közösség eredményeit, sőt sajátjukből is visszajuttatnak egy jelentős részt a közösségnek. Ennek a csoportnak a hozzáállását jól példázza a Google. Bár az Android (ami úgy ismét csak egy speciális Linux-változat) révén a keresőóriás némileg speciális helyzetben van, alapvetően a nagy üzletet számára nem nyílt forráskódú megoldások, hanem az azokkal megvalósított szolgáltatásai jelentik. Ehhez felhasználja a közösségi fejlesztés eredményeit, sőt segíti is munkájukat. (Itt most az egyszerűség kedvéért eltekintek attól az üzleti haszontól, amit az Android certifikálása hoz a Google-nek.) Kiemelkedő példa a Google tevékenységében a GSoC (Google Summer of Code), ami nem csak a népszerűségét növeli, hanem nagyon hasznos hozzájárulásokat szült az elmúlt sok-sok évben.
Szintén jelentős erőt képviselnek azok a cégek, amelyek rendelkeznek nyílt forráskódú technológiával, ám vajmi kevéssé érdekeltek azok közvetlen sikerében. Az Oracle például a Sun felvásárlásával hozzájutott adatbázishoz (MySQL), van saját Linux-disztribúciója (Oracle Linux), illetve birtokában van az egyik legelterjedtebb nyílt forráskódú platform (nyelv, fejlesztő- és futtatókörnyezet), a Java, sőt, JavaEE futtatókörnyezetből is van neki vagy három, ebből a sunos "maradvány", a Glassfish nyílt is ráadásul. A felvásárlás óta eltelt öt év eredményekeit nézve azonban az látszik, hogy a vállalat jobbára marketingeszköznek vagy hangulatjavítónak használja ezeket a szerzeményeit – amolyan "half hearted" módon támogatja is őket –, ám komolyabb energiákat nem fektet abba, hogy fejlődjenek, hívhatjuk ezt egy fajta kontrollált innovációnak (ezalól kivétel a Java maga). Ráadásul a vállalatnak amiatt is speciális a helyzete, mert az utóbbi években erősen felértékelődött és éretté váltmidleware piacon pont a nyílt forráskódú világból támadtak komoly ellenlábasai, elsősorban a JBoss, de kisebb rendszerek területén még egy "mezítlábas" Tomcat is sokszor labdába rúg.
A hardvergyártók nem kerülhetik meg
A negyedik csoporttal, a hardvergyártókkal is érdemes kicsit bővebben foglalkozni. Az IBM – mint azt a Bitport is megírta – a mainframe-jeiből két olyan változatot is kiadott, amelyeken csak Linux futtatható, és ettől várja azt, hogy újabb alkalmazásfejlesztői köröket tud bevonni a hardver támogatásába. Ezen a területen probléma lehet, hogy a vevők egyre inkább a viszonylag olcsó és standard x86 technológiát választják és inkább ezt veszik "kilóra", mintsem a komplex, jóval drágább és egyedi rendszereket. Az IBM persze itt sem maradt le: példásan gyártotta a Linuxos illesztőprogramokat a hardvereihez. A HP sem csinálja másképp; más kérdés, hogy manapság hardvert eladni már nem akkora üzlet, mert a virtualizációnak és a felhőszolgáltatásoknak köszönhetően kevesebb szerver kell, és sokkal kevesebben vesznek szervert (példaként mind a Google, mind a Facebook maga építi a szervereit). Sok kisvállalat (az USA-ban nagyvállalat is) felhőszolgáltatást vásárol, annak a hardver-erőforrásigényét szerverként nem veszi meg. Így tudott naggyá válni a Google mellett egy Amazon vagy egy Salesforce.com.
Ezek a példák is jól mutatják, hogy ma már nincs olyan számottevő hardvergyártó, amely szervereit és egyéb adatközponti eszközeit ne igazítaná hozzá a nyíl forráskódban megtestesülő technológiai szabványokhoz, egyszerűen a túlélésüket, illetve a „mainstream”-ben maradásukat biztosítandó.
Ezenkívül egyre inkább kezdenek rájönni arra, hogy az ehhez szükséges alapokat érdemes közösen kifejleszteni. Ez az oka annak a nagy egyetértésnek, ami nagy nyílt felhős projekteket övezi. Azok adnak ugyanis olyan alapot, amelyek révén megteremtődik a szolgáltatások versenye, rugalmasan összekapcsolhatóvá válik a privát és a publikus felhő, adatok szempontjából átjárhatóvá válnak a külső és belső SaaS (Software as a Service) szolgáltatások és adattárházak.
Ha egy nyílt, teljes felhős stackről gondolkodunk, akkor két dolog jön szóba: egyrészt az egyre szélesebb körben támogatott OpenStack, ha pedig konténertechnológia, akkor ott a Docker és a Kubernetes. Amellett, hogy a hardvergyártóknak kedves az OpenStack, mert a fenti előnyökön kívül ki tudják adni az a változatot belőle, ami a saját hardverükkel van (vagy csak marketing vagy konkrét műszaki szinten is) összeintegrálva. Ettől azért sokan megrémülnek (többek közt magam is), mert a felhőt olyan területnek tervezik stratégiailag, ahol a hardverfüggőséggel nem szabad számolni. Nagyobb vállalatok (mint például az Ericsson) ezért maguk építik a saját hardverfüggetlen OpenStack platformjukat, aki meg érthető módon nem akar evvel bajlódni, annak több standardizált, hosszútávon támogatott, hardverfüggetlen változat is rendelkezésére áll (Red Hat Linux OpenStack Platform, Ubuntu OpenStack stb.).
Ha tehát valaki hardvert akar eladni, akkor mindezzel számolnia kell, mert önmagában a vas nem érték. A szolgáltatások futtatásához természetesen kellenek, ezért is tartják szem előtt, hogy szabványos, csereszabatos rendszerek kerüljenek le a gyártósorokról. Ebben önmagában kevés innováció és megkülönböztető érték van, bajban is vannak a hardvergyártók, hogy tudnak-e hitelesen a hardverre építkezve értéknövelt rendszereket, szolgáltatásokat értékesíteni.
A felhő mindent visz...
Ha már OpenStack és konténertechnológia... Jól látszik – már csak a támogatók nagy számából is –, hogy egyre többen teszik le a voksukat a felhő mint platform irány mellett. Ma – leszámítva természetesen a végfelhasználói kört, amely kiválóan elboldogul a Google Apps-szel vagy épp Office 365-tel – a vállalati felhasználók összességében nagyságrendekkel több saját fejlesztésű vállalati szoftvert használnak, mint dobozos, standard terméket. Ezeknek a felhősítése nagyon nagy üzlet. De miért is?
A vállalatok a növekedésük, összeolvadásaik, számos fiókvállalatuk, nemzetközi terjeszkedésük, felhasználószám-bővülésük kapcsán két dologgal szembesülnek: egyrészt az alkalmazásaik (tovább)fejlesztésére, átírására, élesbe állítására szánt idő egyre kisebb lesz, másrészt az alkalmazások terhelése előre nem megmondható mértékű és időbeli lefutású. Ezeket a problémákat az IaaS nem képes megoldani, mivel az IaaS a heterogén munkaterhelések szeparációjára és nagyobb alkalmazássűrűség elérésére jött létre (és arra jól is működik, lásd OpenStack): jól osztja fel a meglévő hardvererőforrást, de nem jól skálázza fel. A SaaS szintúgy nem oldja meg a problémát, mivel itt nem "dobozos", hanem egyedileg fejlesztett vállalati alkalmazásokról van szó.
Olyan dolgot keresünk tehát, ami a fejlesztőknek is segít és az üzemeltetést is olajozza, ez pedig nem más, mint a PaaS, azaz a platform-szintű felhő. A platform-szintű felhőben "feloldódik" az operációs rendszer és a virtuális gép fogalma: ezeket az absztrakciós, és főleg a hozzájuk tartozó overhead szinteket átugorva egy alkalmazás-fejlesztő és automatikusan skálázódó alkalmazás-futtató környezet áll elő egyben. Ezzel a fejlesztés-üzemeltetés dichotómiának is élét vesszük (majd akkor lehet mást utálni) és a folyamatokat is felgyorsítjuk. Egy ilyen környezetben az egyedi vállalati szoftverek gyors átfutású fejlesztése és "large-scale" futtatása is megoldódik: felhősítettük a saját vállalati alkalmazásainkat.
Mondani sem kell, hogy ezek a technológiák is nyílt forráskódon szabványosodtak és hihetetlen terjedésük indult el. Nem csak a Google gigászi Apps gépházában ketyeg a platform felhő, hanem támogatott, vállalati formában például a Red Hat is kínálja OpenShift formában, hogy meghódítsa vele a felhő újabb szintjeit.
Itt tart jelenleg a nyílt világ, indulva a 80-as évek Emacs szerkesztőrendszerétől, 30 év adatközpont-linuxosodás után megérkezünk a világ legnagyobb felhőrendszereiig, amely egyre nagyobb felhasználótábort és innovatív fejlesztőt vonz. Ez a folyamat persze nem áll meg, már az ajtóban áll a big data, és kopogtat...
Nyílt forráskód: valóban ingyenes, de használatának szigorú szabályai vannak