Portál AbcLinuxu, 12. května 2025 22:13
Hezky byl popsan falesny pocit bezpeci u virtualizaci na jednom z mailing listu:
x86 virtualization is about basically placing another nearly full kernel, full of new bugs, on top of a nasty x86 architecture which barely has correct page protection. Then running your operating system on the other side of this brand new pile of shit. You are absolutely deluded, if not stupid, if you think that a worldwide collection of software engineers who can't write operating systems or applications without security holes, can then turn around and suddenly write virtualization layers without security holes. You've seen something on the shelf, and it has all sorts of pretty colours, and you've bought it. That's all x86 virtualization is.
Tak nějak, docker je prakticky management rozhraní pro cgroups a linux namespaces (mount, uts, pid, net, ipc, user) spolu s definicí infrastruktury kolem toho (např. vrstvené image).
Nevím, proč nad to někdo chce cpát úplně jiný operační systém - možná čistě z marketingových důvodů, těmto věcem se v PR přezdívá "virtualizace", na úkor zákazníků, kteří jim to sežerou (a pak si stěžují u nás na #netfilter
, že jim nejdou nahrávat kernel moduly).
výtané
jakože na to vyje pes?
Libvirt můžeš používat i s LXC, je to dost šikovné – přes jedno rozhraní (GUI virt-manager, řádkový virsh nebo jakákoli nadstavba nad libvirtem) spravuješ různé virtualizační technologie (viz libvirt supports). U toho LXC můžeš mít jak virtuál pro celý systém, tak kontejner pro jednu aplikaci.
GnomeBoxes byly pohodlné (ale to jen pro ilustraci, je to plná virtualizace)Není to náhodou jen nadstavba nad libvirt?
Můj příspěvek berte prosím čistě jako pohled někoho, kdo potřeboval řešení svého problému.Takový příspěvek je dost tupý, pokud jeho součástí není popis problému a alespoň náznak analýzy těch řešení.
libvirt i GnomeBoxes ať je to implementováno jakkoliv, tak prostě byly blbé.Nejspíše nebyly vhodné pro daný účel. A nejspíše nebyly pro daný účel vůbec stavěné, pokud se docker ukázal jako vyhovující, vzhledem ke zcela odlišnému zaměření těch projektů.
Docker je sice jen jakási paravirtualizaceDocker v první řadě není paravirtualizace. Docker spouští linuxové kontejnery (jinde se tomu říká jails), tedy oddělené skupiny procesů, které se v mnohých ohledech chovají jako samostatný stroj. Jenže to, co přináší docker, nejsou ty linuxové kontejnery, OpenVZ a podobné se používaly dávno před ním. Docker tedy není ani tak o tvorbě kontejnerů jako o způsobu jejich provozu, tedy že se k nim nepřistupuje jako k běžným virtuálkám s běžným životním cyklem, ale předpřipraveným obrazům aplikací včetně celého systémového prostředí.
ale mnohem více mi to pomohlo, protože to bylo snadnější k použití.Je otázkou, zda má smysl porovnávat dle snadnosti použití nástroje, které primárně neslouží ke stejnému účelu. Takové srovnání často dopadne tak, že každý nástroj selže v tom, na co nebyl určen.
A samozřejmě, jde o příspěvek na který reaguji.To bych viděl jako kombinaci sarkasmu a povzdechu nad tím, že lidé nebyli schopni kontejnery docenit v jejich klasickém použití.
Můj příspěvek nebyl o tom, jak libvrt funguje, ale o tom, že jeho UX je blbé.
Libvirt je knihovna, abstraktní vrstva nad různými virtualizačními technologiemi. Pokud mluvíš o UX, tak pravděpodobně o nějaké aplikaci, která libvirt využívá. Prozradíš, která to byla?
K tomu, aby „šlo ssh“, je potřeba mít most (síťové zařízení, bridge) aspoň já to tak dělám – to si nastavíš jednou a pak je to ve virt-manageru při vytváření virtuálů na jedno kliknutí, resp. je to výchozí volba a virtuály dostanou IP adresu ze stejného DHCP serveru jako fyzický počítač (nebo ji nastavíš ručně) a jsou ve stejné síti.
Příště bych to spíš řešil konkrétním dotazem do poradny a věřím, že už by tě někdo navedl, jak ten most udělat. Protože to vypadá, že chybělo fakt málo, abys byl s libvirem spokojený (resp. s nějakou nadstavbou nad ním: naklikat se to dá přes virt-manager
, skriptovat se to dá přes virsh
… a pořád pracuješ s těmi stejnými virtuály/konfiguracemi, můžeš používat víc nástrojů souběžně)
Uvědomuji si, že Docker asi slouží trochu k něčemu jinému. Třeba Windows tam asi jen tak nerozchodím.O tom nebyla řeč, Docker není primárně určený ani k běhu Linuxu, takže se obávám, že v tomto kontextu měl předřečník s tím cool marketingovým názvem pravdu.
A k čemu je tedy dle tebe určený?Uvědomuji si, že Docker asi slouží trochu k něčemu jinému. Třeba Windows tam asi jen tak nerozchodím.O tom nebyla řeč, Docker není primárně určený ani k běhu Linuxu, takže se obávám, že v tomto kontextu měl předřečník s tím cool marketingovým názvem pravdu.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.