Portál AbcLinuxu, 2. května 2025 07:19

Pacemaker a přístup k virtuálu přes Spice

13.6.2016 20:37 | Přečteno: 1085× | Za vším hledej Linux | poslední úprava: 13.6.2016 10:39

Jedna z věcí, která mě irituje u libvirtu je VNC konzole. Nepracuje dobře s mapováním kláves - alespoň tedy na mém notebooku. Proto u svého řešení používám pro přístup na grafickou konzoli virtuálu prakticky výhradně přístup přes Spice, kde tento problém není.

U spice klienta je třeba pro přístup k virtuálu znát hostitele, číslo portu na kterém číhá spice a v mém případě heslo. To není nijak složité - přístup na grafickou konzoli ještě neznamená automaticky přihlášení do stroje. Ale je specifické pro každý virtuál a v hlavě ho nenosím.

Nelezu na grafickou konzoli často, takže jsem si dlouhou dobu vystačil s tím, že jsem nejprve přes crm status zjistil, kde mi virtuál aktuálně běží a z konfigurace si vytáhnul číslo portu a heslo. Ovšem s tím jak jsem přešel na živou migraci mne to přestalo uspokojovat. Udělal jsem si tedy jednoduchý wrapper:

nod1:~# cat /usr/bin/spice
#!/bin/bash
HOST=($(crm_resource -r $1 --locate))
[ -z "${HOST[5]}" ] && exit 1
HOSTIP=$(ping -c1 -4 ${HOST[5]}.${DOMAIN} | grep ^PING | awk '{print $3}' | sed 's/[()]//g')
SPICE=($(crm_resource -r $1 -g spice | sed 's/,password=/\ /'))
echo "-h ${HOSTIP} -p ${SPICE[0]#*=} -w ${SPICE[1]}"

Jeho použití je triviální. Skript nedělá nic jiného, než že zjistí kde stroj aktuálně běží a z informací, které má k dispozici v konfiguraci virtuálu v Pacemakeru (viz ukázkový příklad v minulém blogpostu) sestaví parametry pro příkazovou řádku spice klienta.

Skript je přes Ansible distribuován přes všechny nody, takže je úplně jedno přes který z nich ho zavolám:

user@stroj:~$ spicec $(ssh root@<libovolný nod> spice <zdroj virtuálu>)

Výsledkem je otevřená grafická konzole virtuálního stroje, a mne tak nemusí trápit kde zrovna běží. Formát, v jakém se parametry vrací může použít jak konzolový klient spicec, tak spicy, který jinak používá gui.

Otevřená spice konzole funguje také jako indikátor úspěšně dokončené migrace. Ve chvíli, kdy dojde k dokončení migrace "umře" takže vím, že od onoho momentu stroj žije v rámci jiného nodu.

       

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

15.6.2016 02:34 snajpa | skóre: 20 | blog: snajpuv_blocek | Brno
Rozbalit Rozbalit vše Re: Pacemaker a přístup k virtuálu přes Spice
Odpovědět | Sbalit | Link | Blokovat | Admin
Ja jsem tedy se Spice mel zatim 100% negativni zkusenost - kdykoliv vyrobim ve virt-manageru virtual, kteremu defaulty nechaji Spice display, virt-manager se mi pri pokusu otevrit to sekne a vytuhne na dobro. Tohle se mi deje od doby co je Spice Spicem, nevidel jsem to fungovat jeste ani v jednom pripade. Netusite nekdo, wtf? ;-)
--- vpsFree.cz --- Virtuální servery svobodně
15.6.2016 06:30 Aleš Kapica | skóre: 52 | blog: kenyho_stesky | Ostrava
Rozbalit Rozbalit vše Re: Pacemaker a přístup k virtuálu přes Spice
Podle mě ti dělá bordel libvirt. Jeho použití se vyhýbám jak čert kříži. Nic pozitivního pro mne navíc nepřináší. Jen komplikace. Vadí mi kupř. že blokuje přístup k monitorovací konzoli. Chápu ale, že klikačům vyhovuje. Akorát při tom krapet ztrácejí přehled o tom, jak to vlastně úplně dole funguje.
15.6.2016 06:35 Aleš Kapica | skóre: 52 | blog: kenyho_stesky | Ostrava
Rozbalit Rozbalit vše Re: Pacemaker a přístup k virtuálu přes Spice
Jo, ale zapomněl jsem dodat že si Qemu sestavuji do binárního balíku rovnou z gitu.
15.6.2016 06:43 Vantomas | skóre: 32 | Praha
Rozbalit Rozbalit vše Re: Pacemaker a přístup k virtuálu přes Spice
Už asi tři roky používám libvirt na Debianu, virt-manager ve Fedoře a nikdy jsem neměl problém s tím, že by Spice nefungoval. Jediné kdy se mi zasekává virt-manager je, když jsem na špatné konektivitě a vytuhne ta.

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.