Portál AbcLinuxu, 20. dubna 2024 00:49

Open Source Conference 2011

26. 4. 2011 | Jan Hrach
Články - Open Source Conference 2011  

Každoroční LinuxExpo bylo postupně pohlceno Open Source Conference. I přesto se ale letos objevilo několik zajímavých linuxových témat.

Na akci se letos také poprvé vybíralo vstupné – 100 Kč – a to i při předregistraci přes Internet. Různí šťastlivci, především návštěvníci minulých ročníků, ale obdrželi volnou vstupenku. Možná i proto bylo celkem plno, zaplněnost odhaduji tak na 80 % kapacity.

Obsah

Foyer

link

U stolků v předsálí probíhaly prezentace, a to jak komunit, tak i firem. K vidění byli především zajímaví lidé, sem tam i nějaký hardware nebo software.

OSCON 2011 OSCON 2011 OSCON 2011

Microsoft – hlavní partner, AbcLinuxu.cz – hlavní mediální partner :: Ruch u stánku Ubuntu

OSCON 2011 OSCON 2011 OSCON 2011

openSUSE :: HTML pexeso a jeho vylepšená pravidla

OSCON 2011 OSCON 2011

Přednášky

link

Adam Kliment: Deltacloud API

link

První přednášku měl Adam Kliment z VirtualMaster.cz. Začal popisem rozdílů mezi vertikálním a horizonálním škálováním zejména webových aplikací. Vertikální škálování – v podstatě navyšování hardwarových prostředků serveru – je, dalo by se říci, snadné, a nevyžaduje zásahy do aplikace, na druhou stranu tímto způsobem nelze škálovat donekonečna a kupování stále výkonnějších serverů je drahé.

Horizontální škálování oproti tomu znamená rozprostření zátěže na více serverů a teoreticky nemá horní limit výkonu; zase ale může vyžadovat úpravu provozované aplikace, aby uměla pracovat paralelně na více počítačích.

Dalo by se říci, že na horizontálním škálování je založen cloud computing. Jenže provozovatelů „mraků“ je mnoho a každý má jiné API pro nastavování virtuálních serverů, jejich správu atd. Pokud tak postavíte nějaké pokročilejší řešení nad API jednoho poskytovatele, můžete se dočkat nepříjemného vendor lock-inu.

δcloud se snaží sjednotit toto API poskytovatelů cloudů, a to buď tak, že poskytovatel přímo implementuje standardizované rozhraní, nebo alespoň vytvořením jakési proxy, překladové vrstvy, která bude specifické API poskytovatele překládat na API Deltacloud.

OSCON 2011

Protože v odpoledních hodinách odpadla jedna z přednášek, dostal Adam k dispozici jeden přednáškový blok navíc, ve kterém se zaměřil na praktickou ukázku práce s API. Ukázal, jak se pracuje s webovým rozhraním VirtualMasteru, které toto API také využívá, a pro některé akce předvedl ekvivalent volání v jazyce Ruby.

Snadné škálování v cloudu předváděl na distribuované změně rozlišení u mnoha velkých obrázků. Pomocí skriptů využívajících Deltacloud API vytvářel a zase odstraňoval jednotlivé výpočetní uzly [node], čímž měnil výkon celého systému. Podobným způsobem může systém automaticky zvyšovat průchodnost ve špičkách a naopak odstraňovat nevyužité virtuální servery mimo špičku. Díky platbě pouze za skutečně spotřebovaný výkon v cloudu se takto dají s minimálními náklady vykrýt špičky vzniklé například u zpravodajského webu po nějaké významné události.

Miro Hrončok: Xfce 4.8

link

Miro Hrončok tvdí, že třetí nejpoužívanější dektopové prostředí Xfce se nehodí jen na PC XT nebo MARK II, ale může se používat jako plnohodnotný desktop i na moderních počítačích nebo netboocích se SSD disky. Počítač nemusí mít po bootu do čistého desktopu zabráno 250 MB operační paměti… Xfce do jisté míry také odolává moderním trendům v KDE a GNOME, což se může líbit některým zpátečníkům v oblasti UI/UX a grafických efektů, jako je například autor článku.

Potom následovaly různé ukázky nových vlastností v Xfce 4.8. Začalo to různým dováděním s panely, pokračovalo předvedením vylepšení nabídky – už umí drag'n'drop. Thunar připojuje vzdálené souborové systémy (SFTP, FTP…) přes gvfs.

Xfce 4.8 už najdete například v openSUSE 11.4, Ubuntu 11.04 a Fedoře 15; do větve unstable Debianu se dostává právě v době psaní článku.

Na konci uvedl odkaz, kde najdete další informace o Xfce 4.8.

Petr Ferschmann: Vývoj multiplatformních aplikací

link

Účetnictví FlexiBee je multiplatformní. Klient je napsaný v Javě, ale poslední dobou jsou „in“ webové aplikace a HTML je ještě přenositelnější než Java. FlexiBee má proto 2 rozhraní – Javovské a webové, které může běžet na mobilu nebo klidně i na Kindle.

V demonstrační části přednášky bylo předvedeno webové rozhraní (v normálním desktopovém prohlížeči) a na něj navazující RESTful API. Screenshoty ze smartphonů a tabletů pak posloužily jako ukázka, jak lze pomocí posledních novinek v HTML5 upravit web pro mobilní zařízení (hlavně iPhone) – různé styly, formátování odkazů pro pohodlnější ovládání na dotykovém displeji nebo třeba optimalizace dotykové klávesnice podle typu inputboxu (screenshot).

Jaromír Červenka, Michal Hrušecký: Nebojte se KVM, libvirt a cgroups

link

Jaromír Červenka (i-Tux hosting) začal obecným úvodem o tom, co je to virtualizace a k čemu se hodí, a pokračoval výčtem různých funkcí KVM/qemu – snapshotováním systému, popsal grafické a konzolové výstupy, emulaci SMP a jiných architektur, živou migrace, balónování (odebrání části paměti hostovi), deduplikaci paměti v hostitelském systému pomocí KSM a další…

Virtualizačních řešení samozřejmě existuje více, a proto existuje projekt libvirt, který plní podobnou funkci jako Deltacloud pro správu cloudů – je to vrstva pro správu více VM v různých virtualizačních nástrojích, která se dá ovládat pomocí řádkového rozhraní, případně přes bindingy pro různé programovací jazyky. Také k tomu existuje klikátko VirtManager.

Michal Hrušecký pak pokračoval povídáním o cgroups (řídících skupinách), které slouží k omezování skupin procesů a jejich dětí. Bohužel na tuto část přednášky nezbyl dostatek času, takže se omezil pouze na základní informace.

Pavol Rusnák: Co nového v openSUSE 11.4

link

Nedávno vydaná verze openSUSE přináší různé novinky. Z těch týkajících se běžného uživatele je to například integrace Firefoxu 4 a LibreOffice do KDE (to znamená například použití open/save dialogů z prostředí) nebo KDE Plasma Netbook, upravené rozhraní KDE4 pro netbooky. V openSUSE Build Service je už dostupné GNOME 3. Xfce 4.8 zrušilo HAL a používá udev, gvfs, GIO, podporuje menu standardizovaná Freedesktop.org a obsahuje pokročilý konfigurátor xfconf.

Ze změn trochu pod kapotou stojí za zmínění například to, že zypp, knihovna pro správu balíčků, umí používat zsync – při aktualizaci se tak stahují jen rozdíly oproti předchozí verzi. V oS 11.4 je také alternativní rozhraní konfigurátoru YaST zvané WebYaST.

Testery nejnovějších verzí by mohl potěšit projekt openSUSE Tumbleweed, který do openSUSE přidává prvek rolling releases.

Bedřich Košata: Datové schránky pod Linuxem

link

O Datových schránkách toho už bylo napsáno víc než dost; Bedřich Košata z CZ.NIC v úvodu stručně zrekapituloval některé problémy, které byly systému vytýkány – například zbytečné použití uzavřeného pluginu pouze pro x86_32 Windows ve webovém rozhraní, security-by-obscurity ověřování, jestli daná zpráva Datovými schránkami prošla, serverem, či ne úplně chytře vymyšlená CAPTCHA (podrobněji jsem se o tom rozepsal ve svém blogu).

Pozitivnější část prezentace ukazovala, že dnes se již uživatel Schránek naštěstí obejde i bez děravého BLOBu do prohlížeče, může totiž použít svobodný program dsgui nebo aplikaci iDatovka pro iVěci od Apple. iDatovka už má 7000 instalací, což mi přijde jako úctyhodné číslo. Pro vývojáře je dostupná C knihovna pro správu Schránek libnicds.

Nejen s českou státní správou obecně se pojí ZFO Editor, což je alternativa 602XML Filleru pro vyplňování ZFO formulářů.

OSCON 2011

Novinky v PostgreSQL 9.1

link

Jakub Ouhrabka zahájil prezentaci o novinkách v PostgreSQL 9.1 stručným shrnutím historie PostgreSQL a krátkým výhledem do budoucna. 9.1 je aktuálně k dispozici jako 9.1 alpha 5, začátkem května by měla vyjít první beta a finální verze někdy v létě podle toho, jak rychle budou nalézány a opravovány chyby. Všichni uživatelé tohoto databázového systému by tedy měli otestovat své aplikace a hlásit případné problémy.

V přehledu historie jako nejvýznamnější novou vlastnost verze 9.0 Jakub uvedl streaming replication a hot-standby. V 9.1 se tato funkcionalita rozšiřuje o možnost synchronní replikace – commit SQL dotazu v tomto případě vrací úspěch, až když uspěl i na sekundárních serverech. Uspěl v tomto případě znamená, že WAL [write-ahead log] byl přenesen na všechny sekundární servery a tam proběhl fsync(). Tím je zajištěno, že změna způsobená daným SQL dotazem se na sekundárním serveru s jistotou projeví i v případě pádu, není tím ale zajištěno, že se již projevila – k tomu může v extrémních případech dojít až za několik sekund (v praxi to ale bude méně) a mezi tím budou servery vracet jiné výsledky.

Jestli se použije synchronní replikace, lze nastavit přímo v SQL dotazu v rámci transakce, v rámci jednoho systému je také možné kombinovat synchronní a asynchronní sekundární servery. Master server nicméně stále může být jenom jeden.

Další novinkou jsou nelogované tabulky. Slabinou současných verzí PostgreSQL je práce s rapidně se měnícími daty, příkladem takových dat mohou být sezení [sessions] webových aplikací. Nelogované tabulky se nezapisují do WAL, což umožňuje zvýšit výkon operací INSERT a UPDATE. Tato výhoda samozřejmě přichází za určitou cenu a tou je, že při pádu databáze se obsah všech takových tabulek smaže – po restartu tedy budou konzistentní, ale prázdné (což v případě sessions zas až tak nevadí.) Tyto tabulky také není možné replikovat.

Významnou změnou, která se objevila ve verzi 8.4, byla možnost nastavit řazení [collation] pro každou databázi zvlášť. Tato možnost se v 9.1 také rozšiřuje, nově bude možné specifikovat collation pro jednotlivé sloupce v tabulkách, například:

CREATE COLLATION "cs_CZ.utf8" ( locale = 'cs_CZ.UTF-8' );
CREATE TABLE test (obsah text collate "cs_CZ.utf8");

Verze 9.1 – stejně jako všechny předchozí verze PostgreSQL – přichází i s mnoha vylepšeními týkajícími se výkonu. Jedním takovým vylepšením je KNN GiST, tedy zpracování dotazů typu „vrať 10 nejbližších“. Toto vylepšení se týká například geometrických typů, Jakub uvedl příklad SQL dotazu:

SELECT * FROM t ORDER BY t.pozice <-> stred LIMIT 10;

Tuto konstrukci bylo možné použít již dříve, nyní se však při jejím zpracování použije index.

Dalším výkonnostním vylepšením je vykonávací plán merge append – ten nově umožňuje použít index u dotazů typu

SELECT * FROM rodic ORDER BY id LIMIT 100;

v případech, kdy se využívá partitioning.

Jakub popsal i vylepšení adminstračních nástrojů. V PostgreSQL 9.1 se objevuje nástroj pg_basebackup, který zjednodušuje vytvoření záloh sloužících pro replikaci databáze. Nástroj pg_ctl umožňuje použít nový příkaz pg_ctl promote, který „povýší“ sekundární streaming replication server na samostatný master server.

Marek Vašut: Das U-Boot – Universal Bootloader

link

Přednáška nás seznámila s procesem bootování embedded systémů a s vývojem U-Bootu nejen na architekturách ARM, MIPS a PPC. U-Boot není jen bootloader, ale i tzv. monitor – kromě prostého zavedení jádra umí i ovládat hardware, manipulovat s pamětí atd. Jako další zajímavou vlastnost, související především s vývojem a nasazením U-Bootu, zmínil Marek Vašut především jeho důkladné testování na různém hardware. Oblíbenost U-Bootu podle něj spočívá především v jednoduchosti jeho přeportování na nový hardware a ve snadném ladění – U-Boot se pokusí spustit sériovou konzoli co nejdříve, kdy jen je to možné.

Co se týče historie U-Bootu, v roce 2000 byl vydán první PPCBoot, monitor pro PowerPC. V roce 2002 byl vydán ARMBoot, což byl port PPCBootu pro zařízení postavená na architektuře ARM. PPCBoot a ARMBoot byly později spojeny do jednoho projektu Universal Bootloader a přejmenovány na U-Boot. Dnes U-Boot podporuje přes 550 zařízení.

Další část přednášky pak byla věnována shellu U-Bootu. Shell je podobný Bourne-Shellu (konkrétně byl portován z Busyboxu) a umožňuje skriptování, práci s proměnnými a jejich ukládání do flash paměti a dokonce i práci se sítí včetně stažení obrazu jádra přes TFTP. Přes sériovou konzoli se U-Boot také dá ladit pomocí GDB nebo integrovaným debuggerem bedbug.

S debuggováním kódu inicializujícího hardware souvisí jeden možný problém – pokud zařízení potřebuje při inicializaci vykonat nějaký časově kritický kód nebo rychle obsloužit přerušení, nemůžete pochopitelně v debuggeru vykonávání kódu přerušit [break].

OSCON 2011

Závěr

link

Prezentace si už teď můžete stáhnout z webových stránek konference.

Další články z této rubriky

Týden na ScienceMag.cz: Model Lambda CDM celkem sedí, ale kosmologická konstanta se může měnit
Týden na ITBiz: Vysokoteplotní supravodivá dioda
Týden na ScienceMag.cz: V kvantovém materiálu objevili částici podobnou gravitonu
Týden na ITBiz: Efektivní podnikání se bez edge computingu neobejde
Týden na ScienceMag.cz: Supravodivost i v silném magnetickém poli

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.