Takto vyzerá brnenská pobočka zvonka, fotografia bola prevzatá z prezentácie Red Hatu
Ak patríte k linuxovým nadšencom, museli ste o firme Red Hat počuť už veľakrát. Založená v roku 1993, medzi prvými firmami, ktoré Linux komerčne podporujú, je dnes medzi najúspešnejšími linuxovými firmami. Red Hat tiež patrí medzi niekoľko málo firiem, ktoré prijali filozofiu open-source programovania za vlastnú. Väčšina ich projektov má svoju komunitnú verziu, v ktorej otvorene prebieha vývoj, a ten potom vývojári doladia, učešú a zabalia pre svojich zákazníkov. Takto napríklad z Fedory 14 vznikol Red Hat Enterprise Linux 6.
Deň otvorených dverí
Čo teda čakať od dňa otvorených dverí organizovaného Red Hatom? Veľa prednášok o zaujímavých projektoch, zaujímavé súťaže, a množstvo informácií o možnosti zamestnať sa v Red Hate. Píšete bakalárku alebo diplomovku? Hľadáte brigádu cez prázdniny? Prácu na polovičný úväzok? Alebo perspektívne zamestnanie? Ja som do Brna šiel hlavne kvôli novinkám v oblasti virtualizácie a musím povedať, že prednášky stáli za to. Ak ste chceli stihnúť Red Hat DevConf, ktorý bol pred dvoma mesiacmi, ale nepodarilo sa vám to, Red Hat Open House bol vynikajúca príležitosť doplniť zameškané. Na svoje si prišli aj záujemcovia o JBoss, Javu a samozrejme tí, ktorých zaujíma vývoj Linuxu.
Red Hat v Brne
Pobočka v Brne sa zaoberá hlavne vývojom projektov, ich testovaním a udržiavaním. Ľudí z marketingu, ani manažmentu tu veľa nenájdete, programátorov, s ktorými sa dalo porozprávať o zaujímavých projektoch, tu však bolo viac než dosť. Momentálne ich tu pracuje viac ako tri sto a aj napriek tomu, že sa brnenská pobočka rozširovala, začína im znovu dochádzať miesto.
Po budove ma previedol Jiří Eischmann. Väčšinou boli kancelárie viac menej open space, ale presné hranice medzi jednotlivými oddeleniami nebolo až tak vidieť. V jednom z boxov sme našli Deltacloud tím, ktorý pripravuje rozhranie pre prístup k rôznym cloud providerom. Cieľom je, aby užívateľovi mohlo byť v podstate jedno, či mu jeho virtuálny server beží v jeho firme, alebo niekde na druhom konci sveta v serverovniach Amazonu, alebo RackSpace. Celkom ma potešilo, že túto technológiu už aj niektorí používajú v praxi.
Takto nejak sa pracuje v Red Hate
Kúsok ďalej sedel Fedora Q/A tím (medzi nimi aj Kamil Páral, autor Esmsky), ktorí sa stará práve o testovanie a ladenie Fedory. Jedným z projektov, na ktorom pracujú, je AutoQA, ktoré by malo umožniť automatické testovanie Fedory. Na túto tému hovoril pred pol rokom aj Jesse Keating, keď mal v Brne prednášku o Fedore a jedným zo záverov bolo, že nieje dobré vyslať vašu distribúciu do sveta hneď, ako zistíte, že vám na vašom stroji nabootuje. A práve Fedora Q/A tím prispieva k tomu, aby nielen nabootovala, ale aj fungovala tak, ako má.
Červených klobúkov bolo všade neúrekom
Ďalším dôležitým tímom je Desktop Q/A. Veľká časť z toho, čo sa v Red Hate robí, je testovanie a Q/A, teda overovanie kvality. Začínajúci programátor často žije v klame, že keď dopísal svoj program, jeho práca tým končí, ale v skutočnosti je oveľa dôležitejšie overiť, či program naozaj funguje tak, ako má. Iný tím, okolo ktorého sme prechádzali, robil na novej verzii inštalátora Anaconda. Bolo tiež vidieť, ako sa pobočka v Brne za posledný rok rozrástla, keď sme prechádzali okolo malej zasadačky, ktorá bola prestavaná na malú kanceláriu. Za posledný rok sa totiž počet ľudí zvýšil takmer o tretinu.
Takto to dopadne, keď si do firmy pustíte základnú školu
V Brne sa okrem vývoja a testovania zaoberajú aj podporou zákazníkov. Zákazník, ktorý si kúpi server, určite chce mať k dispozícii telefónne číslo, na ktoré môže zavolať, keď niečo nefunguje. Pre mňa trochu nečakaným bolo nájsť v Red Hate tím, ktorý sa zaoberal písaním dokumentácie. V tíme pracuje napríklad Petr Kovář, ktorý dlhodobo spolupracuje na prekladoch GNOME do češtiny.
Druhým nečakaným zistením bol počet ľudí, ktorí sa nezaoberajú vývojom Linuxu, ale pracujú na Jave. Red Hat pred niekoľkými rokmi odkúpil firmu JBoss, ktorá vyvíjala open-source middleware pre Javu. Musím sa priznať, že som zatiaľ nenapísal ani jednu „enterprise“ aplikáciu v Jave, ale pre veľkých zákazníkov je pohodlné kúpiť od jednej firmy kompletné riešenie zahŕňajúce operačný systém, virtualizáciu, platformu aj aplikačný server. Zaujímalo ma teda, či má Red Hat vôbec nejaké služby, ktoré by boli zamerané na menších zákazníkov než obrovské spoločnosti s tisícmi zamestnancov. Čiastočnú odpoveď som dostal od tímu o kúsok ďalej, ktorý vyvíja server Spacewalk. Spacewalk je server na manažovanie veľkého množstva linuxových serverov. Je open-source, komunita vývojárov číta do dvadsať ľudí, a funguje so všetkými na Red Hate postavenými distribúciami. Brnenskí vývojári potom Spacewalk raz za čas skopírujú, doladia, otestujú a vydajú ho ako Satelite server, s podporou pre veľké firmy, ktoré potrebujú spravovať tisíce serverov.
Ak nie som ani veľká firma, ani administrátor odhodlaný rozbehnúť si vlastný manažovací server, ale len náhodou mám od Red Hatu server s podporou, stále sa môžem k Satelitu dostať ako ku službe, ktorú poskytuje Red Hat svojim zákazníkom na manažovanie svojich serverov.
Ešte je veľa tímov, ktoré by som mohol spomenúť a ktoré významnou mierou prispievajú k napredovaniu Linuxu. Napríklad Kernel tím, ktorý pracuje na ovládačoch pre zariadenia, súborových systémoch a ostatných veciach v hlbinách linuxového systému. Práve vďaka nim sa Red Hat pravidelne umiestňuje na predných miestach zoznamu firiem prispievajúcich do kernelu (kde zodpovedajú za takmer desatinu celkového počtu zmien). Ďalej BaseOS tím, ktorý pracuje na všetkom medzi kernelom a desktopom, alebo Security Response tím, ktorý zodpovedá za čo najrýchlejšiu opravu objavených bezpečnostných chýb. Alebo Desktop tím, ktorý pracuje na KDE, GNOME a ostatných prostrediach (a kde napríklad pracuje Tomáš Bžatek, tvorca Tux Commanderu). A určite som na niektorý zaujímavý tím zabudol.
Súťaže
Pre návštevníkov boli pripravené tri zaujímavé súťaže. BaseOS tým prichystal už tradičný Bug Hunting. V jednom kole proti sebe stálo približne tucet programátorov, ktorí pomeriavali svoju schopnosť čo najrýchlejšie odhaliť chyby v programe. Programy boli rôzne, od Bash skriptov, po znefunkčnené časti coreutils, zišli sa znalosti z C, Pythonu, Bashu aj Perlu. Niekedy stačilo len vymazať bodkočiarku, inokedy sa musel človek poriadne zamyslieť. Jedno kolo trvalo štyridsať päť minút, opravy chyby sa automaticky premietli do skóre a bolo celkom napínavé na veľkej obrazovke sledovať svoje poradie v súťaži. Na konci dostal víťaz malú cenu (mám pocit, že reproduktory).
Takto dopadla výsledková listina pri Bug Hunte
Ďalšou zaujímavou súťažou bol Bash Master. Trochu mi pripomínala naše písomky v škole, desať otázok, na každú okolo minúty času a odpoveďou bol väčšinou jednoriadkový príkaz. Priznám sa, hľadať obskúrne chyby v kóde ma baví trochu viac ako vymýšľať bashovské zaklínadlá, ale ako nápad sa mi to páčilo. Navyše som po úspešnom absolvovaní dostal malý diplom.
Test znalosti Bashu sa odohral v miniatúrnej zasadačke
Posledná súťaž, ktorej som sa však nestihol zúčastniť, bola Code Arena. Išlo o podivný programátorský duel, kde vyhrával ten, kto bol schopný do programu zaniesť nenápadnejšiu chybu. Postup bol takýto: Obaja súperi dostanú zdrojový kód (mám pocit, že išlo o kód programu sort), ten zmenia tak, aby začal zlyhávať na niektorých testoch. Potom si vymenia vykompilované binárky a vyhrá ten z nich, ktorý prvý nájde taký vstup, na ktorom sa program nespráva tak, ako má. Musím povedať, že najviac sa mi na týchto súťažiach páči, že sú originálnejšie, než býva zvykom. Vo väčšine súťaží musíte čo najrýchlejšie vyriešiť úlohu. Súťaž, v ktorej bolo treba pokaziť riešenie, a potom čo najrýchlejšie nájsť chybu, som naozaj videl po prvý raz.
Duel medzi dvoma programátormi už začal
Zaujímavé projekty
Ako som na začiatku hovoril, v celej budove Red Hatu prebiehali okrem súťaží aj prezentácie zaujímavých projektov. Zďaleka som nestihol všetky, tieto štyri ma však zaujali najviac.
OpenSCAP
Prvá prezentácia, ktorú sa mi podarilo absolvovať, bola o projekte SCAP. Ak ste niekedy nastavovali server, určite ste veľkú časť trávili jeho zabezpečovaním. Skontrolovať, či je systém naozaj dobre zabezpečený, vyžaduje veľa úsilia a aj s dobrým návodom si na konci nieste celkom istý, či ste náhodou na niečo nezabudli. Práve kontrolu správneho nastavenie má na starosť Security Content Automation Protocol. Miesto návodu na zabezpečenie si stiahnete XML súbor, tým nakŕmite openSCAP knižnicu a tá vám vygeneruje peknú správu o tom, či máte ten stroj naozaj tak nastavený, ako má byť. Samozrejme, tento nástroj je cielený na firmy so stovkami serverov a ešte chvíľu potrvá, kým bude „ready for the enterprise“. Myslím však, že tento projekt má svoje čaro aj pre lenivých administrátorov Fedora serverov, ako som ja. Pýtal som sa vývojárov, či tento nástroj nejak pomôže aj lenivým administrátorom Debianu, a vyzerá, že tak pol na pol. Knižnica má deb balíčky, ale kontrolné XML budete hľadať ťažšie. Keď však bude hotový editor, na ktorom sa usilovne pracuje, nebudete mať problém si z vlastnej iniciatívy takéto XML vytvoriť.
Takto vyzerala štandardná prezentácia projektu
RHEV-M a Spice
Asi najskloňovanejším slovom na dni otvorených dverí bola virtualizácia. Kernel tím pracuje na KVM module, ďalšie tímy sa podieľajú napríklad na vývoji libvirtu a ostatných virtualizačných nástrojov. K nim sa čoskoro pridá aj RHE Virtualization Manager. Narozdiel od desktopového virt-manageru ide o webovú aplikáciu, ktorá umožňuje vzdialene spravovať celé clustery virtuálnych serverov. Od vytvárania prednastavených templatov, cez migráciu, po prideľovanie administrátorov a užívateľov k jednotlivým virtuálnym strojom. Tí sa na ne môžu vzdialene pripojiť priamo z prehliadača. Celé riešenie bude vydané pod open-source licenciou, zatiaľ je však v stave uzatvorenej betaverzie. Manažér bol totiž pôvodne vyvíjaný firmou Qumranet ako aplikácia pre Windows Server a jediným plne podporovaným prehliadačom je Internet Explorer. Toto sa našťastie rýchlo mení a bolo predvedené funkčné pripojenie a spustenie virtuálneho stroja na Linuxe cez Mozilla Firefox. Chvíľu však ešte potrvá, kým si rovnakú vec vyskúšate na svojej Fedore.
Jedno z mála miest v Red Hate, kde bolo možné vidieť operačný systém z Redmondu. Aj keď len virtuálne. Video však prehrával pekne
Čo si však môžete vyskúšať už teraz, je Spice, nové rozhranie na prístup k virtuálnym strojom. Doteraz bolo prívetivé užívateľské rozhranie skôr doménou VirtualBoxu, a ak ste virtualizovali čokoľvek grafické cez KVM, mali ste prakticky len dve možnosti. Buď použiť protokol VNC, alebo spúšťať cez quemu-kvm. Spice práve pre priaznivcov platformy quemu-kvm (teoreticky aj Quemu a v budúcnosti aj ostatné) prináša veľké množstvo vylepšení, ako možnosť pripájať USB zariadenia z klienta priamo na virtuálny stroj, zdieľanie schránky myši, alebo akcelerácia videa. Navyše umožňuje virtuálnemu stroju používať viacero monitorov naraz. Spice má podporu v najnovšom virt-manageri, takže vám nič nebráni v tom, vyskúšať si túto technológiu v praxi.
FreeIPA
Ďalším zaujímavým projektom je FreeIPA, ktorý poskytuje centrálny server pre správu užívateľov. Technológie, ktoré umožňovali takýto server postaviť, sú na Linuxe už dávno. Problém je v tom, že nakombinovať a správne nastaviť takéto riešenie je prácou pre skúseného administrátora na niekoľko dní. Väčšinou na takéto riešenie potrebujete mať adresárový server (napríklad openLDAP), správne fungujúce DNS, a Kerberos server na centrálnu autentifikáciu. FreeIPA všetky tieto služby nastaví za vás, navyše do balíku pridá vyrábanie elektronických certifikátov a celé to zastreší príjemným webovým rozhraním. Ambicióznym plánom je v budúcnosti pridať podporu pre Sambu a tak priamo konkurovať ActiveDirectory serveru.
Čo príde ďalej?
Deň otvorených dverí v Red Hate bola vynikajúca akcia a musím potvrdiť slová Mira Hrončoka, že Česká republika si na tom z pohľadu vývoja Linuxu stoja veľmi dobre. Navyše, pretože sme v svete otvoreného softwaru, na väčšinu noviniek z dielní Red Hatu nemusíte čakať, ale môžete ich rovno vyskúšať.