KVM (řízení přes konzole QEMU)

Z DCEwiki
Skočit na navigaci Skočit na vyhledávání

Virtuální konzole v grafickém prostředí X serveru

Virtuální stroj lze ovládat přes virtuální konzoli, která se při spuštění QEMU v grafickém prostředí otevře jako další okno, ve kterém běží virtualizovaný stroj. To co vidíte je však pouze grafická konzole QEMU. Kromě ní obsahuje virtuální konzole ještě další tři. Pokud pracujete přímo s virtuální konzolí v grafickém prostředí X serveru, pak se můžete mezi nimi přepínat následující kombinací kláves

CTRL+ALT 1 - grafická konzole (virtuální displej monitoru)
CTRL+ALT 2 - monitorovací konzole
CTRL+ALT 3 - serial0 konzole
CTRL+ALT 4 - parallel0 konzole
CTRL+ALT - opuštění virtuální konzole QEMU

Přepínání linuxových konzolí

Pokud budete virtualizovat v rámci QEMU linuxový stroj, můžete poměrně brzy narazit na otázku, jakým způsobem se lze přepnout v rámci grafické konzole QEMU na jinou konzoli virtuálního stroje.

Přepínání linuxových konzolí v rámci virtuální konzole QEMU

Z monitorovací konzole
odesláním příkazu sendkey ctrl-alt-f[číslo konzole]
Z grafického prostředí
příkazem chvt číslo konzole
Z textové konzole
buď rovněž příkazem chvt číslo grafické konzole, nebo (pokud nejste na konzoli přihlášeni) současným podržením kláves ALT + SHIFT a stiskem příslušné klánesy F1~7

Přepínání linuxových konzolí v rámci virtualizovaného linuxu přes SPICE

Poznámka Není-li nastaveno jinak, pak jsou při spuštění virtualizace přes qemu-spice nastaveny ostatní konzole na null, zatímco grafický výstup je exportován přes SPICE.
Z monitorovací konzole (pokud je dostupná)
odesláním příkazu sendkey ctrl-alt-f[číslo konzole]
Z grafického prostředí
příkazem chvt číslo konzole
Z textové konzole
buď rovněž příkazem chvt číslo grafické konzole, nebo (pokud nejste na konzoli přihlášeni) podržením klávesy ALT (dokud se neobjeví symbol ALT na obraze) a stiskem příslušné klánesy F1~7

Vzdálená správa

Z hlediska vzdálené správy je nejdůležitější - monitorovací konzole. Prostřednictvím monitorovací konzole můžete provádět s virtuálním strojem nejrůznější operace, počínaje získáváním informací o běžícím virtuálním stroji, až po posílání klávesových kódů do prostředí virtuálního stroje.


Upozornění Pokud chcete přistupovat ke grafické konzoli virtuálního stroje přes SPICE nebo VNC protokol a spustíte virtualizovaný stroj jako démona, ztratíte přístup k monitorovací konzoli a tím i možnost ovládat virtuální stroj ze strany hostitele! Abyste se této situaci vyhnuli, musíte na to při konfiguraci virtuálního stroje pamatovat a monitorovací konzoli přesměrovat.
  • Přesměrování na standardní výstup zajistí: stdio (jinak výchozí volba, není-li virtuální stroj spouštěn jako démon v grafickém módu)
  • Přesměrování na jinou systémovou konzoli lze provést přes: tty
  • Přesměrování na předem zvolený síťový port lze provést přes: telnet - na monitor se lze pak připojit pomocí utility telnet
  • Do unixového soketu: unix - na monitor se lze připojit např. pomocí aplikace unixterm

Migrace

KVM umožňuje migrování virtuálních strojů za běhu. Aby to však bylo možné, musí být splněny patřičné podmínky. Především ta, že na výchozím i cílovém stroji musí být schopen virtuální stroj běžet v identické konfiguraci. To znamená že:

  • Virtuální CPU musí být při spuštění nakonfigurován tak, aby oba stroje byly schopny vyhovět požadavků virtuálu. Jaké procesor podporuje "flags", lze zjistit výpisem souboru /proc/cpuinfo na obou virtualizačních strojích. "Flags", které instrukční sada jednoho z procesorů nepodporuje, je třeba zakázat.
  • Oba stroje musí mít zajištěnou konektivitu do stejného síťového segmentu ve kterém má být virtuál dostupný. V ideálním případě to znamená mít na obou strojích shodně nastavené síťování, což s VDE není žádný problém - viz kapitola KVM (konfigurace sítě).
  • Image virtuálního stroje by měl být zároveň dostupný na obou strojích, tzn. že by měl být umístěn v rámci clusterového řešení souborového systému (GFS2, OCFS2, CEPH, Lustre,..) či zařízení (RADOS), které umožňuje současný přístup k témuž souboru z více přípojných bodů.
  • Spuštěný virtuální stroj musí mít dostupnou monitorovací konzoli, přes kterou jej lze řídit. V níže uvedeném příkladu čeká na TCP portu číslo 2345, v praxi je však bezpečnější komunikaci zabalit do ssh připojení. Viz výše.

Vlastní průběh migrace je pak již docela triviální.

Na cílovém stroji, kam má být virtuál přesunut, se spustí ve stejné kombinaci jako na zdroji, pouze s tím rozdílem, že se přidá volba -incoming s patřičnými parametry. QEMU na cílovém stroji tak bude vyčkávat, dokud nedostane od zdroje pokyn, že má místo něj pokračovat ve virtualizaci.

Vlastní migrace pak odstartuje přes monitorovací konzoli příkazem migrate.

Snapshoty

Snapshoty se provádí v podstatě úplně stejně jako migrace. Rozdíl je pouze v tom, že cílem migrace nemusí být jiný stroj, ale soubor.