Virtualization Tools, lépe známý jako Virt Tools, je kolekce šesti open source virtualizačních nástrojů vytvořených různými přispěvateli, aby učinili virtualizační svět lepším místem.
Některé z nástrojů, jako je KVM a QEMU, mohou být linuxovým nadšencům známé, ale nástroje jako libvirt a libguestfs jsou pravděpodobně méně známé.
V případě, že se raději učíte sledováním videí než čtením, vytvořil jsem video verzi tohoto článku, ke které máte přístup na YouTube.
Před procházením nástrojů je dobré znát některé základní virtualizační terminologie. Mnoho z těchto definic jsem odvodil z Wikipedie se stránkami propojenými v tabulce.
Termín | Definice |
---|---|
Virtualizace | V oblasti výpočetní techniky se virtualizace týká aktu vytvoření virtuální (spíše než fyzické) verze něčeho, včetně hardwarových platforem virtuálních počítačů, úložných zařízení a zdrojů počítačové sítě. |
Emulátor | Emulátor je hardware nebo software, který umožňuje jednomu počítačovému systému (nazývanému hostitel) chovat se jako jiný počítačový systém (nazývaný host). |
Virtuální počítač (VM) | Také známý jako "stroj pro hosty", jedná se o emulace skutečných fyzických hardwarových počítačů. |
Hostitelé | V hardwarové virtualizaci počítač, na kterém hypervizor provozuje jeden nebo více virtuálních počítačů. |
Hypervizor | Toto je počítačový software, firmware nebo hardware, který vytváří a spouští virtuální počítače. |
Jádro | Toto je počítačový program v jádru operačního systému počítače s úplnou kontrolou nad vším v systému. |
Démon | Toto je počítačový program, který běží jako proces na pozadí, nikoli pod přímou kontrolou interaktivního uživatele. |
Tato tabulka shrnuje každý nástroj Virt, včetně informací o licenci a odkazů na webové stránky a zdrojový kód každého nástroje. Většina těchto informací pochází z webu Virt Tools a webu jednotlivých nástrojů.
Jméno | Co to je | Licence | Zdrojový kód |
---|---|---|---|
Virtuální stroj založený na jádře (KVM) | Virtualizační modul v jádře Linuxu, který umožňuje jádru fungovat jako hypervizor | GNU GPL nebo LGPL | Zdrojový kód |
Rychlý emulátor (QEMU) | Obecný emulátor a virtualizátor počítače s otevřeným zdrojovým kódem | GPLv2 | Zdrojový kód |
Libvirt | Knihovna a démon poskytující stabilní, open source API pro správu virtualizačních hostitelů | GNU | Zdrojový kód |
Libguestfs | Sada nástrojů pro přístup a úpravu obrazů disků virtuálních počítačů | LGPL, GPL | Zdrojový kód |
Správce Virt | Uživatelské rozhraní pro stolní počítače pro správu virtuálních počítačů prostřednictvím libvirt | GPLv2+ | Zdrojový kód |
Libosinfo | Poskytuje databázi informací o verzích operačního systému, která pomáhá při optimální konfiguraci hardwaru při nasazování virtuálních počítačů | LGPLv2+ | Zdrojový kód |
Virtuální správce založený na jádře (KVM)
KVM je kompletní virtualizační řešení pro Linux na hardwaru obsahujícím virtualizační rozšíření. KVM poskytuje hardwarovou virtualizaci pro širokou škálu hostujících operačních systémů, včetně Linuxu, Windows, macOS, ReactOS a Haiku. Pomocí KVM můžete provozovat více virtuálních počítačů na neupravených obrazech Linuxu nebo Windows. Každý virtuální počítač má soukromý virtualizovaný hardware:síťovou kartu, disk, grafický adaptér atd.
Většinu času nebudete přímo komunikovat s KVM. Místo toho musíte k využití KVM použít QEMU, virt-manager nebo jiný nástroj pro správu virtualizace.
Úplnou dokumentaci naleznete na webu KVM, stejně jako přístup k jeho zdrojovému kódu.
Rychlý emulátor (QEMU)
QEMU je generický emulátor a virtualizátor strojů s otevřeným zdrojovým kódem. Při použití jako emulátor může QEMU spouštět operační systémy a programy vytvořené pro jeden stroj (např. desku ARM) na jiném stroji (např. váš vlastní x86_64 PC). Při použití jako virtualizér QEMU dosahuje téměř nativního výkonu spuštěním kódu hosta přímo na hostitelském CPU pomocí KVM.
QEMU je podporováno na více operačních systémech a jeho instalační proces je stejně snadný jako spuštění několika jednoduchých příkazů; zde se můžete podívat, jak nainstalovat QEMU na macOS s Homebrew.
Po instalaci se naučte, jak jej používat, prostudujte si jeho dokumentaci a můžete také získat přístup k jeho zdrojovému kódu.
Libvirt
Libvirt je knihovna a démon, který poskytuje stabilní open source API pro správu virtualizačních hostitelů. Zaměřuje se na více hypervizorů, včetně QEMU, KVM, LXC, Xen, OpenVZ, VMWare ESX, VirtualBox a dalších.
Další zajímavou věcí na libvirtu je, že KubeVirt, open source projekt pro vytváření a správu virtuálních počítačů na platformě Kubernetes, do značné míry využívá Libvirt. (KueVirtu se budu věnovat v některém z budoucích článků.) Libvirt je zajímavý projekt k prozkoumání a na jeho oficiálních stránkách můžete najít nepřeberné množství informací a také si stáhnout jeho zdrojový kód.
Libguestfs
Libguestfs je sada nástrojů pro přístup a úpravu obrazů disků VM. Můžete jej použít pro prohlížení a úpravu souborů uvnitř hostů; skriptování změn na virtuálních počítačích; sledování statistik o využití/volném disku; vytváření hostů, fyzických na virtuální (P2V) nebo virtuálních na virtuální (V2V) stroje; provádění záloh; klonování VM; budování virtuálních počítačů; formátování disků; změna velikosti disků; a mnohem víc. Nedávno jsem jej používal při práci na projektu založeném na KubeVirt s názvem OpenShift Virtualization, o kterém se můžete dozvědět více v mém video tutoriálu.
Oficiální web Libguestfs obsahuje rozsáhlou dokumentaci o tom, jak jednotlivé příkazy používat, a jejich zdrojový kód si také můžete stáhnout na GitHubu.
Virt-manager
Virt-manager je desktopové uživatelské rozhraní pro správu virtuálních počítačů prostřednictvím libvirt. Primárně se zaměřuje na virtuální počítače KVM, ale také spravuje Xen a LXC. Zahrnuje také nástroj pro poskytování příkazového řádku virt-install. Představte si virt-manager jako snadno použitelný nástroj pro správu vašich virtuálních počítačů. Můžete například použít virt-manager ke spuštění prostředí Microsoft Windows na pracovní stanici Linux nebo naopak.
Zdrojový kód Virt-manager je dostupný na GitHubu a dokumentace je na jeho webu. V současné době je virt-manager k dispozici pouze pro platformy Linux.
Libosinfo
Další zdroje pro Linux
- Cheat pro příkazy Linuxu
- Cheat sheet pro pokročilé příkazy systému Linux
- Bezplatný online kurz:Technický přehled RHEL
- Síťový cheat pro Linux
- Cheat sheet SELinux
- Cheat pro běžné příkazy pro Linux
- Co jsou kontejnery systému Linux?
- Naše nejnovější články o Linuxu
Libosinfo poskytuje databázi informací o verzích operačního systému, která pomáhá při konfiguraci hardwaru při nasazování virtuálních počítačů. Obsahuje knihovnu C pro dotazování na informace v databázi, která je také přístupná z libovolného jazyka podporovaného GObject introspection. Jak asi tušíte, libosinfo je spíše stavebním kamenem umožňujícím funkčnost operačního systému – ale docela důležitým.
Zdrojový kód Libosinfo je dostupný na GitLabu a jeho dokumentaci lze nalézt na jeho webových stránkách.
Závěr
Virt-tools je sada šesti výkonných nástrojů, které usnadňují virtualizaci a umožňují důležité virtualizační funkce. Všechny z nich jsou open source projekty, takže vás vyzývám, abyste je prozkoumali dále a možná k nim i přispěli.
Co myslíš? Neváhejte a zanechte komentář a podělte se o své myšlenky nebo položte otázky.