LXD

Výukový program LXD

Výukový program LXD

Základy LXD: Čo je to? A ako to využiť?

Kontajnerizácia LXD nedostala na výslnie to, čo urobil Docker, ale v skutočnosti je oveľa bližšie k základnej myšlienke virtualizácie operačného systému. Ale skôr ako sa tam dostaneme, poďme sa baviť o súčasnej virtualizácii na úrovni hardvéru.

Virtualizácia hardvéru

Tradičný spôsob, ako VMware, VirtualBox, KVM a podobné technológie fungujú, je tento - máte serverový počítač, napríklad špičkový procesor Xeon s 512 GB RAM, známy ako holý kov. Nainštalujete na to operačný systém, ktorý by potom fungoval buď VMware, Virtualbox alebo KVM.

Tieto sú rôzne hypervisori, a operačný systém, ktorý ich spúšťa, je hostiteľský operačný systém.

Čo hypervisor teraz ponúka, je toto - emuluje procesor, sieťové rozhrania, úložné disky, pamäť, I / O a ďalšie zdroje, takže na túto sadu môže byť nainštalovaný nový operačný systém virtuálny hardvér. Tento nový operačný systém je hosťujúci operačný systém a beží na virtuálnom hardvéri, ako keby to bolo nainštalované na fyzickom počítači, ale má to háčik.

Ak si myslíte: „Ale emulácia rôznych hardvérových zariadení pomocou skutočného hardvéru znie neefektívne a pomaly.„Máte úplnú pravdu. Virtualizácia na úrovni hardvéru je pomalá a neefektívna.

Samotné operačné systémy sú navyše kontrolnými čudákmi. Ak pridelíte hosťovskému OS 1 GB RAM a 2 jadrá CPU, bude šťastne trvať na všetkých zdrojoch, aj keď aplikácie bežiace v ňom využívajú iba zlomok z neho. Tieto zdroje nebudú môcť hypervisor použiť inde.

To výrazne obmedzuje počet virtuálnych počítačov, ktoré môžu bežať nad hypervízorom. Ak ste poskytovateľom cloudového hostingu, znamená to, že váš spodný riadok bude zasiahnutý zle.


Kontajnerový spôsob robenia vecí

Myšlienka virtualizovaného hardvéru sa vyhodí z okna, keď začneme hovoriť o kontajneroch a konkrétne o LXD. Namiesto emulácie jednotlivých hardvérových zdrojov sa snažíme virtualizovať operačný systém.

Keď je kontajner LX roztočený, OS sa ponúka (to je jadro, knižnice všetky dostupné zdroje) aplikáciám bežiacim vo vnútri kontajnera. Používatelia a aplikácie v tomto kontajneri nebudú vedieť o aplikáciách a balíkoch bežiacich mimo neho a naopak.

Pokiaľ ide o alokáciu zdrojov, môžete si jednoducho urobiť poznámku, ktorá neumožňuje konkrétnemu kontajneru používať viac ako napríklad 2 GB RAM a 2 CPU. Týmto spôsobom, keď aplikácie bežiace v kontajneri nerobia nič náročné, môžu byť prostriedky pridelené inde v hostiteľskom prostredí.

Ak sú však aplikácie spustené pri vysokom zaťažení, dosiahnu výkon ako v prevedení bare metal!

Zjavným nedostatkom toho je, že ako hosť nemôžete spustiť ľubovoľný operačný systém. Pretože rôzne operačné systémy majú úplne inú architektúru. Našťastie pre používateľov GNU / Linux, jadro Linuxu ponúka tak úzku kompatibilitu ABI, že môžete emulovať rôzne distribúcie na rovnakom jadre. Môžete teda spustiť binárne súbory CentOS a aplikácie Ubuntu na rovnakom kove iba v rôznych kontajneroch.


LXD zač

Kontajnerizácia LX je osvedčenou a robustnou technológiou pre operačné systémy založené na systéme Linux. Má dve hlavné komponenty, jedna je LXC, ktorá spravuje konfigurácie kontajnerov, obrazové súbory atď., A potom je tu LXD, čo je démon bežiaci na vašom hostiteľovi, ktorý zaisťuje dodržiavanie všetkých politík stanovených pre kontajnerizáciu.

Predvolene je nainštalovaný na Ubuntu Server 16.04 LTS, ak používate distro desktopu, spustite:

$ apt nainštalovať lxd lxd-client

Po dokončení je potrebné inicializovať rôzne parametre. Spustí vás nimi nasledujúci príkaz:

$ lxd init

Tu môžete zvoliť predvolené možnosti.  Najdôležitejšie by bolo nastavenie sieťových rozhraní. Keď sa zobrazí výzva na nastavenie siete LXD, vyberte predvolenú možnosť áno.

1 Odpovedzte áno, znova, keď sa zobrazí výzva na nastavenie siete

V ďalšom okne sa zobrazí výzva na zadanie názvu sieťového rozhrania (zobrazeného na hostiteľovi), ponechajte ho na predvolenú hodnotu lxdbr0.

Nastavenie podsiete IPv4 by malo prísť potom. Umožnilo by to rôznym kontajnerom LX komunikovať medzi sebou, akoby išlo o rôzne počítače v lokálnej sieti. Vyberte pre toto áno.

Ďalej ich bude niekoľko 10.202.X.X adries, z ktorých každá má v tejto podsieti inú rolu. Môžete stlačiť kláves Enter bez toho, aby ste museli vyladiť možnosti. Keď sa zobrazí výzva na konfiguráciu NAT, zvoľte Áno.

Toto umožňuje vašim kontajnerom získať pripojenie k internetu pomocou verejnej IP adresy hostiteľa, podobne ako váš laptop a ďalšie zariadenia prostredníctvom domáceho smerovača (s presmerovaním portov).

Posledná možnosť o podsieti IPv6 je úplne voliteľná a zatiaľ by som vám ju odporučil vynechať. Povedať č, po zobrazení výzvy na zadanie možnosti protokolu IPv6.


Točenie nádob

Ak chcete spustiť novú inštanciu povedzme Ubuntu 16.04, spustite nasledujúci príkaz:

$ lxc spustenie ubuntu: 16.04 name_of_your_container

Pretože je to prvýkrát, čo používate server Ubuntu, načítanie obrazu kontajnera zo vzdialených úložísk bude chvíľu trvať. Po dokončení môžete zobraziť podrobnosti o spustenom kontajneri spustením príkazu:

zoznam $ lxc

V tomto príklade je názov kontajnera pokrač.

Ak sa chcete dostať do kontajnera, spustite príkaz;

$ lxc exec name_of_your_container bash

Týmto sa dostanete do bash shellu, ktorý beží vo vnútri tohto kontajnera. Bolo by to cítiť a cítiť sa ako nová inštalácia Ubuntu 16.04 a môžete do neho voľne inštalovať balíčky a robiť rôzne experimenty, pri ktorých by ste neriskovali svoju hlavnú inštaláciu.

Teraz, keď máte obrazový súbor lokálne uložený v hostiteľskom systéme, môžete veľmi rýchlo roztočiť kontajnery Ubuntu a použiť ich ako jednorazové systémy.

Ak chcete zastaviť a odstrániť kontajner LX, spustite;

$ lxc stop Container_name $ lxc vymazať container_name 

Ako pri prvom roztočení nových kontajnerov použite príkaz spustenia lxc.


Odkiaľ ísť

Teraz, keď viete, aká je architektúra LXD, možno budete chcieť začať skúmať témy, ako je vytváranie sietí a ukladanie kontajnerov, a ako ich nakonfigurovať tak, aby vyhovovali vašej pracovnej záťaži.

Možno by ste sa tiež chceli dozvedieť viac o hlavných rozdieloch medzi Dockerom a LXD a o tom, čo by vlastne mohlo lepšie vyhovovať vašim potrebám. Ak chcete použiť ZFS ako back-end úložiska (ako by ste mali!) možno si budete chcieť pozrieť tento návod na základné informácie o ZFS.

Hry Ako zvýšiť rýchlosť FPS v systéme Linux?
Ako zvýšiť rýchlosť FPS v systéme Linux?
FPS znamená Počet snímok za sekundu. Úlohou FPS je merať snímkovú frekvenciu pri prehrávaní videa alebo herných výkonoch. Jednoducho povedané, počet n...
Hry Najlepšie hry Oculus App Lab
Najlepšie hry Oculus App Lab
Ak ste vlastníkom náhlavnej súpravy Oculus, musíte byť informovaní o bočnom nakladaní. Sideloading je proces inštalácie neuloženého obsahu do náhlavne...
Hry Top 10 hier, ktoré sa dajú hrať na Ubuntu
Top 10 hier, ktoré sa dajú hrať na Ubuntu
Platforma Windows je jednou z dominujúcich platforiem pre hry kvôli obrovskému percentu hier, ktoré sa dnes vyvíjajú na natívnu podporu systému Window...