abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 05:44 | Bezpečnostní upozornění

    Balíček s příkazem sudo byl vydán ve verzi 1.9.17p1. Řešeny jsou zranitelnosti CVE-2025-32462 (lokální eskalace práv prostřednictvím volby host) a CVE-2025-32463 (lokální eskalace práv prostřednictvím volby chroot).

    Ladislav Hagara | Komentářů: 0
    dnes 05:22 | IT novinky

    Do služeb Seznam.cz se lze nově přihlásit pomocí služby MojeID [𝕏].

    Ladislav Hagara | Komentářů: 0
    dnes 03:33 | Bezpečnostní upozornění

    Bezpečnostní výzkumníci zveřejnili informace o osmi zranitelnostech, které postihují více než 700 modelů tiskáren, skenerů a štítkovačů značky Brother. Bezpečnostní upozornění vydali také další výrobci jako Fujifilm, Ricoh, Konica Minolta a Toshiba. Nejzávažnější zranitelnost CVE-2024-51978 umožňuje útočníkovi vzdáleně a bez přihlášení získat administrátorská oprávnění prostřednictvím výchozího hesla, které lze odvodit ze

    … více »
    Ladislav Hagara | Komentářů: 0
    včera 16:00 | Komunita

    Společnost Oracle vlastní ochrannou známku JAVASCRIPT. Komunita kolem programovacího jazyka JavaScript zastoupena společností Deno Land vede právní bitvu za její osvobození, viz petice a otevřený dopis na javascript.tm. Do 7. srpna se k nim má vyjádřit Oracle (USPTO TTAB).

    Ladislav Hagara | Komentářů: 4
    včera 13:11 | IT novinky

    Byl představen samostatný rádiový modul Raspberry Pi Radio Module 2 s Wi-Fi a Bluetooth.

    Ladislav Hagara | Komentářů: 6
    včera 12:44 | Upozornění

    Certifikační autorita Let’s Encrypt ukončila k 4. červnu zasílání e-mailových oznámení o vypršení platnosti certifikátů. Pokud e-maily potřebujete, Let’s Encrypt doporučuje některou z monitorovacích služeb.

    Ladislav Hagara | Komentářů: 0
    včera 01:44 | Pozvánky

    Přemýšlíte, jak začít prázdniny? Už v úterý 1. července se bude konat Virtuální Bastlírna, tedy online setkání bastlířů, techniků, vědců i akademiků, kde se ve volné diskuzi probírají novinky ze světa techniky, ale i jiných zajímavých témat.

    Za poslední měsíc jsme byli svědky plamenů několika raket. Zatímco malá raketa od Hondy se úspěšně vznesla a opět přistála, raketa od SpaceX se rozhodla letět všemi směry najednou. Díkybohu méně … více »
    Uprdkávač | Komentářů: 0
    29.6. 23:44 | Komunita

    Linus Torvalds zmínil, že souborový systém Bcachefs zřejmě odstraní z mainline Linuxu v začleňovacím okně pro vydání 6.17. Kent Overstreet mu totiž posílá kód s novou funkcionalitou i pro začlenění do kandidátů na vydání, kdy očekává pouze opravy chyb. Kent Overstreet byl již dříve z vývoje vyloučen kvůli konfliktní komunikaci.

    Fluttershy, yay! | Komentářů: 12
    27.6. 11:55 | IT novinky

    Ministerstvo průmyslu a obchodu propaguje Microsoft. Ten ve spolupráci s Ministerstvem průmyslu a obchodu spouští AI National Skilling Plan v ČR. "Iniciativa Microsoftu přináší konkrétní a praktickou podporu právě tam, kde ji nejvíc potřebujeme – do škol, firem i veřejné správy.", říká ministr průmyslu a obchodu Lukáš Vlček.

    Ladislav Hagara | Komentářů: 33
    27.6. 10:55 | Zajímavý projekt

    Jste český ISP? Vyplněním krátkého dotazníku můžete pomoci nasměrovat vývoj nové generace routerů Turris Omnia [𝕏].

    Ladislav Hagara | Komentářů: 4
    Jaký je váš oblíbený skriptovací jazyk?
     (59%)
     (28%)
     (7%)
     (2%)
     (0%)
     (1%)
     (3%)
    Celkem 335 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    Rozcestník

    Virtualizace na úrovni jádra operačního systému

    31. 7. 2007 | Jaroslav Tomeček | Systém | 15016×

    S virtualizacemi se poslední dobou jakoby roztrhl pytel. Obvykle při ní simulujeme činnost nebo funkčnost celého hardwaru - vytváří se virtuální stroj nebo speciální přístup k fyzickému stroji. Takový způsob s sebou však nese i vyšší režijní ztráty a malou míru sdílení zdrojů. Tento problém řeší virtualizace na úrovni jádra operačního systému (kernel-level virtualization).

    Seriál, jehož první díl čtete, popíše dva nástroje virtualizace na úrovni jádra operačního systému - Linux-VServer a OpenVZ. Ukážeme si jejich instalaci a základní konfiguraci. OpenVZ se minulý rok stal součástí distribucí Debian a Mandriva a Linux-VServer je základem celoplanetárního gridu PlanetLab. I to ukazuje, že si pozornost zaslouží.

    Virtualizace

    Co je vlastně virtualizace? Požadavky správců a uživatelů na víceúlohové a víceuživatelské operační systémy vedou k vývoji a zdokonalování metod souběžné obsluhy procesů a uživatelů, které využívají virtualizaci. Jedná se o mechanismus, pomocí něhož dosáhneme určitého stupně abstraktního stroje s abstraktním hardwarem. Pro hardwarový zdroj, který je v počítači obsažen pouze jako jedna fyzická instance, je možné vytvořit více virtuálních instancí, stejně jako zprostředkovat hardwarový zdroj, který se vyskytuje ve více fyzických instancích jako jedno virtuální zařízení. Přistupovat k hardwaru pak můžeme jednodušším způsobem, než jak je fyzicky zapojen a skryjeme tak pro uživatele nepodstatné informace.

    Samotné metody abstrakce hardware směřují už od 60. let 20. století k vytvoření celých virtuálních strojů postavených na kombinaci hardwarových a softwarových technik. Jeden fyzický stroj by pak mohl obsluhovat řádově až stovky virtuálních strojů. Metoda kombinuje myšlenku sdílení systémových prostředků a izolovanosti jednotlivých virtuálních prostředí. Výhodou virtuálního stroje je možnost sestavení celého operačního systému na míru každému uživateli, který takový počítač používá, bez toho, aby se operační systémy vzájemně ovlivňovaly, a aby byla systémová režie příliš vysoká. Každý operační systém by měl být plně funkční bez jakéhokoliv omezení.

    Běh virtuálních strojů vyžaduje vyřešení mnoha problémů. Vlastní virtualizační systém musí mít plánovač, který bude schopný spravovat požadavky operačních systémů. Zabezpečuje, aby činnost jednoho operačního systému nebyla ovlivněna činností ostatních systémů. Z pohledu virtualizačního nástroje dochází k přepínání kontextu celých OS. Algoritmus plánování přístupu k hardwaru řeší vícenásobný přístup k systémovým zařízením. Dalším problémem je ošetření komunikace mezi virtuálními stroji. Například správné doručování příchozích paketů z vnější sítě a jejich pohyb mezi běžícími systémy by mělo být rychlé, ale zároveň nesmí příliš snižovat výkon počítače.

    Nejčastěji se virtualizace dosahuje zavedením softwarového rozhraní mezi vlastním OS a fyzickým hardwarem. Tato vrstva komunikuje s fyzickým a vytváří virtuální hardware pro běžící operační systémy a obsluhuje jejich požadavky. Existuje více metod, jak dosáhnout robustního systému, který bude schopen kvalitně plnit svoji funkci. Wikipedia uvádí tyto typy virtualizací:

    • Aplikační virtualizace – Zástupcem je například Java Virtual Machine. Jedná se o speciální, na platformě závislé API, které zprostředkovává komunikaci mezi hardwarem. Jeho prostřednictvím provozujeme na platformě nezávislou aplikaci, kterou pak můžeme spustit i na jiné architektuře, než na které byla napsána. Vlastní kód programu se interpretuje pomocí virtuálního stroje.
    • Simulace nebo emulace – Nástroje umožňují spustit operační systémy, které nejsou původně určeny pro architekturu fyzického systému. Využívá se dynamické reinterpretování kódu virtuálního stroje. Virtuální prostředí vytváří kompletní virtuální hardware a umožňuje spustit nemodifikovaný operační systém, který může být určen i pro jinou architekturu než fyzický stroj. Metoda je používána k vývoji aplikací pro procesory, které ještě nejsou na trhu, a známá je pouze jejich specifikace, nebo k simulaci prostředí jiných architektur. Příklady jsou Bochs, PearPC, Qemu (bez akceleračního modulu) a emulátor Hercules.
    • Úplná virtualizace – Nástroje úplné virtualizace vytvářejí kompletní virtuální hardware. Umožňují spouštění neupravených OS stejné architektury jako fyzický počítač. Virtuální stroje nekomunikují přímo s fyzickým hardwarem, ale jejich požadavky odeslané virtuálním zařízením jsou zpracovány a předány fyzickým zařízením. Příklady jsou Virtual Iron, VMware Server, VMware Workstation, Win4Lin, KVM a další.
    • Paravirtulizace – Nevytváří se kompletní virtuální hardware, nástroje pouze umožňují komunikovat upravenému jádru virtualizovaného operačního systému s fyzickým hardwarem přes speciální API upraveného jádra hostitelského systému. Systémová volání probíhají přes hypervisor (odtud název hypervisory používaný pro paravirtualizační nástroje). Nejznámějším zástupcem nejen této skupiny určeným pro Linux je Xen. Dalšími jsou VMware ESX Server nebo Win4Lin 9x. Systémy na bázi paravirtualizace dosahují vysoké efektivity.
    • Virtualizace na úrovni jádra operačního systému – K virtualizaci dochází až na úrovni operačního systému. Rozšiřuje obsluhu procesů jádrem na celé skupiny procesů – kontexty. Využívá částí virtualizovaných operačních systémů, které by se při plné virtualizaci nebo paravirtualizaci vyskytovaly vícekrát. Provozované servery sdílí jádro OS a jeho služby. Metoda umožňuje provoz více instancí stejných operačních systémů určených pro stejnou architekturu jako hostitelský systém. Technika kombinuje princip izolace, který je jedním z požadavků virtualizace OS, a sdílení, díky kterému systémy dosahují vysoké efektivity. Příklady jsou FreeBSD Jails, Solaris Containers, Virtuozzo, OpenVZ a Linux-VServer. Mechanismus dosahuje při běhu virtuálního systému téměř stejné efektivity jako jeho běh v nevirtuálním prostředí.

    Virtualizace na úrovni jádra operačního systému

    Virtualizace na úrovni jádra operačního systému je společně s paravirtulizací považována za nejefektivnější typ virtualizace. Virtualizovaná prostředí běží nad společným jádrem, které má přímý přístup k fyzickému hardwaru, tudíž se nevytváří virtuální zařízení ani speciální přístupové API. Režijní ztráty jsou způsobeny pouze oddělením procesů, diskových prostorů a síťového provozu serverů.

    V seriálu se zaměříme na využitelnost systémů pracujících na tomto principu a podíváme se na specifické vlastnosti, například dynamické změny omezení systémových zdrojů.

    Paravirtualizační prostředí, zastoupené například systémem Xen, nabízejí plnou izolovanost virtuálně běžících OS. V případech, kdy provozujeme více stejných operačních systémů, se však stává celý systém neefektivním, protože některé části operačních systémů běží vícenásobně. Naproti tomu při virtualizaci na úrovni jádra běží všechny virtuální servery nad jedním jádrem. Celý mechanismus pouze rozšiřuje služby jádra OS tak, aby byly schopné odizolovat jednotlivé související skupiny procesů nazývané sekce nebo kontexty a k nim příslušné diskové souborové systémy. V systémech typu unix lze technologii považovat za rozšíření mechanismu chroot. Výhodou řešení je výrazné snížení režijních ztrát (např. pouze 1 - 3 % u OpenVZ) a nutnost upravit pouze jádro hostitelského systému.

    Následující obrázek ilustruje princip úplné virtualizace, simulace a paravirtualizace.

    Úplná virtualizace/paravirtualizace

    Druhý obrázek ukazuje, jak pracuje virtualizace na úrovni jádra operačního systému.

    Virtualizace na úrovni jádra OS

    Systém umožňuje měnit limity systémových prostředků za běhu virtuálních serverů, což bývá u paravirtualizace obtížné nebo často nemožné. Na rozdíl od systému Xen můžeme dynamicky zvyšovat i snižovat hodnoty hardwarového nastavení virtuálních serverů. Tyto nástroje alokují potřebné hardwarové prostředky již při startu serveru a následná změna by vyžadovala spolupráci virtualizovaného OS. Naproti tomu Linux-VServer a OpenVZ přistupují k serverům jako k procesům, kterým můžeme v Linuxu přidělení hardwarových prostředků snadno měnit. Nevýhodou je možnost provozovat pouze operační systémy stejného typu jako upravené jádro, avšak s různými knihovnami a popřípadě různé distribuce.

    Virtuální stroje založené na virtualizaci na úrovni jádra jsou využívány pro testování software na různých distribucích. Programátor nemusí instalovat celý operační systém, stačí jen potřebné knihovny dané distribuce a programy nutné pro běh virtuálního serveru a testovaného programu. Změna OS je pak otázkou několika málo minut.

    V samostatném prostředí může běžet antivirus a firewall nezávisle na uživatelském serveru. Bezpečnostní software pak není negativně ovlivněn procesy provozovanými uživateli. Technologii lze použít pro provoz gridů se stejnými, ale na míru upravenými OS.

    Systém využívají také firmy poskytující provoz, pronájem a prodej serverů. Každý zákazník si upraví server podle svých představ bez ohledu na ostatní uživatele. Poskytovatel služby však může provozovat více virtuálních na jednom fyzickém serveru. Sníží značně náklady a správa takového systému je také podstatně jednodušší. Tento nepříliš náročný způsob virtualizace je výhodný pro výuku. Každý student má k dispozici vlastní server. Chybný úkon však neznamená poškození vlastního operačního systému nebo hardwaru.

    Nyní již víme, co je virtualizace a virualizace na úrovni jádra OS, a v příštím díle se podíváme na instalaci Linux-VServeru.

           

    Hodnocení: 100 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    31.7.2007 12:04 polish
    Rozbalit Rozbalit vše Re: Virtualizace na úrovni jádra operačního systému
    tesim se na popis openvz
    pit0 avatar 31.7.2007 12:39 pit0 | skóre: 8
    Rozbalit Rozbalit vše Re: Virtualizace na úrovni jádra operačního systému
    Pekny clanok a pripajam, sa k radujucim sa. Tesim sa na pokracovanie!
    31.7.2007 15:13 skywaker
    Rozbalit Rozbalit vše Re: Virtualizace na úrovni jádra operačního systému
    niekde som cital ze dragonflybsd je prve bsdcko co podporuje Vkernel teda virtualkernel po vzoru KVM v linuxu...
    31.7.2007 18:17 martink
    Rozbalit Rozbalit vše Re: Virtualizace na úrovni jádra operačního systému
    I linux-vserver je součástí Debianu, viz třeba http://packages.debian.org/stable/net/util-vserver a http://packages.debian.org/stable/admin/linux-image-vserver-686
    1.8.2007 16:02 Jan Zapletal
    Rozbalit Rozbalit vše Re: Virtualizace na úrovni jádra operačního systému
    Ano, a na rozdil od OpenVZ se nemusi patchovat a kompilovat jadro (protoze jsou prislusne obrazy jader rovnou v archivu.) Z tohoto pohledu je tvrzeni, ze je OpenVZ soucasti Debianu pomerne usmevne.
    pushkin avatar 1.8.2007 09:43 pushkin | skóre: 43 | blog: FluxBlog
    Rozbalit Rozbalit vše Re: Virtualizace na úrovni jádra operačního systému
    Jeden dotaz, týkající se QEMU: pokud samostatné QEMU, provozované bez akceleračního modulu spadá do oblasti simulace / emulace, jak je to s kombinací QEMU+kqemu?
    stativ avatar 1.8.2007 19:21 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: Virtualizace na úrovni jádra operačního systému
    to je pak klasická virtualizace, jelikož už se pak neprovádí překlad instrukcí procesoru.
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    1.8.2007 10:41 Jiri Bajer | skóre: 34 | blog: Sarimuv koutek | Praha
    Rozbalit Rozbalit vše Re: Virtualizace na úrovni jádra operačního systému
    Pekny clanek, mozna by stalo za to ho jeste doplnit o povidani o HW virtualizaci (nPar u HP, fPar u IBM, domeny od SUNu) popr. pseudo-HW virtualizaci (vPar u HP) apod...
    Petr (DotaZ) Jakubec avatar 1.8.2007 13:43 Petr (DotaZ) Jakubec | skóre: 5
    Rozbalit Rozbalit vše Re: Virtualizace na úrovni jádra operačního systému
    pekny clanek, zajimavy... dika, urcite si prectu i pokracovani...

    jeste by mne zajimalo, kdyz se vam to autore tak pekne podarilo rozskatulkovat, jake vyhody ci nevyhody vsechna ta reseni maji.
    2.8.2007 15:57 Jaroslav Tomeček
    Rozbalit Rozbalit vše Re: Virtualizace na úrovni jádra operačního systému
    Já se odkazuji na wikipedii. Pouze jsem využil toho, co už někde je. Na wiki také naleznete výhody a nevýhody řešení.

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.