Toto je velmi krátké rychlé nastavení, jak zprovoznit a spustit server KVM (Hypervizor virtuálního počítače Linuxového jádra).
Proč KVM?
KVM je hypervizor, stejně jako VmWare ESX, Microsoft Hyper-V a XEN. Skvělá věc (jako obvykle) na KVM je, že je součástí Linuxu, což znamená, že je zdarma a jeho výkon je vynikající. Jeho použití v produkčním prostředí jako samostatného hypervizoru je vynikající volbou, má malé nároky na hostitelský server (z hlediska výkonu a disku) a lze jej snadno spravovat pomocí jiných nástrojů, jako je virt-manager.
Předpoklady
Tento rychlý tutoriál předpokládá, že:- Chcete provozovat KVM server s alespoň jedním hostem virtuálního stroje,
- Váš server KVM získá IP adresu ve vaší síti,
- Vaše virtuální počítače získávají IP adresu z vaší sítě – takže můžete místo přemostění použít přemostění (použití přemostění místo přemostění je snadný úkol, ale není součástí tohoto návodu),
- Můžete použít lvm pro alokaci místa na disku na vašem KVM masteru (použití jiných metod alokace místa na disku, jako jsou soubory obrázků, je také snadné, ale není součástí tohoto návodu) – všimněte si, že toto budete muset nainstalovat, než projdete níže, pokud již není nainstalován na vašem serveru.
- Používáte Ubuntu 10.04 nebo novější. Měl by to být aktuální server Ubuntu se síťovou konektivitou a přístupem přes ssh.
Poděkování
Toto je krátký průvodce, který potřebuje předělat a bude brzy hotový, nicméně v současném stavu byl převzat převážně velkoobchodně z www.screenage.de, takže velké rekvizity původnímu autorovi, ccm. Pro srozumitelnost byly provedeny drobné úpravy.
Uveďte síť do provozu
Pro přemostěnou síť musíte nainstalovat nástroje přemostění a změnit konfiguraci sítě. Nejprve nainstalujte balíček:$ sudo apt-get install bridge-utils |
$ sudo brctl addbr br0 |
# Síťové rozhraní zpětné smyčkyauto loiface lo inet loopback auto eth0iface eth0 inet příručka auto br0iface br0 inet staticaddress 192.168.1.100netmask 255.255.255.0network 192.168.1.0broadcast 192.168.1.255offgateway 192.168.1.1bridge>preferebridge2ports_max |
Ujistěte se prosím, že jste nezapomněli nastavit „eth0“ na „iface eth0 inet manual“, jak je uvedeno výše. To je potřeba, protože chcete zabránit eth0 načíst adresu přes dhcp, ale přesto chcete, aby tam byl pro váš most, protože je to fyzická vrstva. Po nastavení mostu buď restartujte síť (sudo /etc/init.d/networking restart ) nebo restartujte server. Pokud již přistupujete k serveru pomocí ssh, buďte varováni, že nesprávná konfigurace vás může zablokovat.
Nainstalovat KVM
Nyní je čas nainstalovat kvm a některé užitečné pomocné aplikace:$ sudo apt-get install qemu-kvm ubuntu-vm-builder uml-utilities \ virtinst |
To je vše:Nyní již máte server kvm. Čas na…
Nainstalujte svůj první virtuální počítač
Chystáme se nastavit 100Gb logický svazek pro hosta, stáhnout Ubuntu a vytvořit počítač s 2Gb RAM a 4 jádry:
# vytvořit prázdný 100Gb logický svazeksudo lvcreate --velikost 100G vg0 --name guest1# stáhnout Ubuntu iso (nebo použít ten, který již máte)$ wget http://..../# create machine$ sudo virt-install --connect qemu:///system -n guest1 -r 2048 \ --vcpus=4 -f /dev/mapper/guest1 --network =bridge:br0 \ --vnc --accelerate -v -c ./SOMEUBUNTUISO.iso \ --os-type=linux --os-variant=ubuntuKarmic --noautoconsole# prosím všimněte si:"ubuntuKarmic" je aktuálně nejnovější # schéma výchozích nastavení virt-install – v případě pochyb použijte toto. |
Získejte připojení VNC
KVM používá VNC, aby vám poskytlo grafické rozhraní pro váš počítač. Dobrá věc na tom je, že vám umožňuje bezproblémově používat grafické instalátory (a ano, dokonce i Windows). Protože i server Ubuntu se na začátku spouští do grafického režimu – je skvělé zde používat VNC.
Předpokládám, že pracujete na vzdáleném serveru. KVM dává každému hostu, kterého spustí, novou instanci vnc s novým, zvýšeným portem. Začíná to 5900. Pojďme tedy tunelovat přes ssh:
ssh user@remotekvmhost -L 5900:localhost:5900 |
Připojíte se ke svému vzdálenému hostiteli kvm přes ssh a otevřete ssh tunel fort port 5900. Nyní spusťte svého preferovaného klienta VNC lokálně a nechte jej připojit se buď k zobrazení „0“ nebo k portu 5900, což znamená totéž ve VNC (duh…).
Od této chvíle byste měli vidět svůj server na displeji VNC. Nainstalujte jej, jako byste instalovali každý jiný server. Síť je přemostěna, takže můžete dokonce použít dhcp, pokud je to ve vaší síti nabízeno.
Ujistěte se prosím, že nainstalujete balíček „acpi“ do svého hosta kvm, jinak nebudete moci zastavit hosta z hlavního serveru (jak se to dělá přes acpi):
# ujistěte se, že "acpi" je nainstalováno v *hostujícím* machineudo apt-get install acpi |
Po instalaci můžete své kvm gue spravovat pomocí následujících příkazů:
# seznam spuštěné instance$ virsh list# spustit instanci$ virsh spustit INSTANCENAME# zastavit instanci zdvořile$ virsh zastavit INSTANCE# okamžitě zničit spuštěnou instanci $ virsh zničit INSTANCE# upravit konfigurační soubor pro instanci$ virsh upravit INSTANCE |
Připojení svazků LVM
Jak jste si možná všimli, svazky lvm vašeho virtuálního hosta nelze připojit přímo do hlavního serveru, protože obsahují vlastní tabulku oddílů. Pokud však potřebujete přístup k souborovému systému hosta z hlavního serveru, musíte vytvořit některé uzly zařízení. Existuje skvělý nástroj zvaný „kpartx“, který za vás může vytvářet a mazat uzly zařízení. Je to tak snadné:
# install kpartx$ sudo install kpartx# ujistěte se, že virtuální gues je vypnutý!# vytvořit uzly zařízení$ sudo kpartx -a /dev/mapper /guest1# zkontrolujte /dev/mapper pro nové uzly zařízení a připojte/odpojte je# až budete hotovi, smažte uzly$ sudo kpartx -d /dev/mapper/guest1 |
Upozorňujeme, že tato metoda funguje také s jinými blokovými zařízeními, jako jsou soubory obrázků obsahující tabulky oddílů. Do potíží se můžete dostat pouze tehdy, když váš svazek lvm obsahuje svůj vlastní lvm. V takovém případě si po použití kpartx pohrajte s pvscan, vgscan a lvscan. Buďte odvážní, ale buďte varováni, že zálohování dat je vždy skvělý nápad.
Alternativní rozhraní pro správu
V případě, že skutečně potřebujete gui pro své potřeby správy, zaškrtněte „virt-manager“. Můžete si to nainstalovat na plochu a vzdáleně spravovat spuštěné instance:
$ sudo install virt-manager
Měli byste se však podívat na stránku „Virtual Machine Manager“ společnosti RedHat. Možná by bylo dobré ručně zkompilovat a nainstalovat novější verzi a spolehnout se na návody k nastavení. Osobně zde preferuji použití konzole s prostým textem, protože pomáhá, když se vyskytnou problémy, můžete jednat poměrně rychle a odkudkoli a samozřejmě nemáte režii na spouštění X11 na serveru.
Závěr
V dnešní době je poměrně snadné nastavit KVM server. Vzhledem k tomu, že hosté s povoleným KVM/libvirt jsou poměrně rychlí, je to pěkný a snadný způsob, jak hostovat i virtuální stroje. Už dva roky provozuji asi tucet virtuálních strojů a tři hardwarové servery bez vážnějších problémů.