VMware Player v prostředí bezdiskového linuxu

Z DCEwiki
Skočit na navigaci Skočit na vyhledávání
Poznámka Tato kapitola navazuje na kapitolu Jak vytvořit bezdiskový stroj s operačním systémem GNU/Linux která popisuje vytvoření základní infrastruktury pro bezdiskové linuxové stanice.

Instalace aplikace VMware Player v bezdiskovém linuxovém systému umožňuje spouštět a do určité míry i vytvářet virtuální stroje, které lze spouštět i na strojích, které nepodporují HW virtualizaci.

Jelikož VMware Player umí pracovat pouze se soubory, jsou virtuální disky uloženy ve vypublikovaném adresáři na NFS serveru.

Pokud chceme ve virtuálu provádět změny, které se mají promítnout u všech uživatelů, pak musíme mít možnost jej dočasně přesunout do adresáře, u kterého je povoleno přes NFS zapisovat a můžeme jej jako zapisovatelný připojit.

Upozornění Úpravy a především instalace dalšího software by se měly přednostně provádět pouze tehdy, je-li virtuální stroj spuštěn přes VMware Workstation. U stroje spuštěného přes VMware Player totiž nelze provést operace, které jsou potřené pro minimalizaci síťové režie při spuštění přes NFS.


Základním předpokladem je funkční overlay. Veškerá data, která se nalézají v tomto adresáři jsou umístěná pouze v paměti počítače a při restartu se zahodí.

Při spuštění virtualizovaného stroje z překrytého NFS adresáře se změny neukládají na server, ale do adresáře /overlay/unirw.

Kapacita tohoto adresáře je daná množstvím dostupné paměti. Proto by měl být k dispozici na fyzickém stroji i swapovací oddíl, do kterého může linuxové jádro v případě potřeby část zabrané paměti odložit.

Struktura virtuálního stroje u VMware

http://searchvmware.techtarget.com/tip/Understanding-the-files-that-make-up-a-VMware-virtual-machine

Adresář virtuálního stroje u VMware obsahuje množství souborů několika typů, jejichž počet a velikost postupem času roste. Je proto dobré vědět, k čemu vlastně jsou a které z nich lze bez obav odstranit.

Poznámka Vzhledem k tomu, že se tyto soubory přes jistý úzus mohou jmenovat různě, uvádím místo jejich jména hvězdičku. Důležitá je pro jejich identifikaci přípona.

Konfigurační soubor *.vmx

Je to výchozí textový soubor, který bývá vždy pouze jeden a obsahuje veškerá potřebná konfigurační nastavení nezbytná pro běh virtuálního stroje:

  • kolik má mít k dispozici paměti
  • který soubor má v sobě uložen obsah paměti, je-li stroj pouze ve stavu suspend
  • který vmdk soubor tvoří poslední článek řetězu pro sestavení virtuálního disku
  • a jiné...

Úpravy v konfiguraci virtuálního stroje lze provádět pouze tehdy, je-li vypnutý. Pokud běží, tak GUI stejně úpravy nedovolí, případné manuální úpravy při uspání či vypnutí virtuálního stroje stejně přepíšou.

Na manuální úpravy je třeba dát pozor. Pokud je stroj pouze uspaný, tak by se mohlo stát, že díky nevhodné úpravě v konfiguraci nepůjde spustit a díky změně může dojít k takovému poškození virtuálu, že se nebude ani možné vrátit do původního stavu.

Proto by se měl virtuální stroj přesouvat pokud možno vždy ve vypnutém stavu.

Informace o virtualizačním prostředí *.vmxf

XML soubor, který se používá pouze u VMware Workstation. Obsahuje informace a parametry, které udávají v jakém stavu se virtuální stroj naposledy nacházel. Využívá se při práci se skupinami virtuálních strojů. Pro VMware Player je v podstatě zbytečný.

Virtuální disky *.vmdk

Formát virtuálních disků .vmdk, který používá VMware, má několik vlastností, které určují i to, jak pak vypadají soubory v adresáři virtuálního stroje.

  • Virtuální disk může mít přírůstkový formát. Tj. že na disk se ukládají pouze data, nikoliv prázdný prostor. Pokud po sobě virtuální disk umí smazaná data uklízet, pak je obvykle mnohonásobně menší než deklarovaná velikost virtuálního disku. V opačném případě jeho objem roste tak dlouho, dokud nedosáhne deklarované velikosti. Pro opětovné zmenšení je pak třeba provést úklid na straně virtualizovaného stroje, a následně defragmentaci na straně hostitele.
  • Virtuální disk může být rozdělen na více souborů, limitovaných maximálním objemem. Pokud je uložených dat víc než dovoluje limit, tak se původní soubor s virtuálním diskem nezvětší, ale založí se nový. Toto bylo zapotřebí především kvůli systémům FAT32 a starší verzi NTFS, které měly omezení na maximální velikost souboru. Zcela konkrétně - pokud se zcela zaplní virtuální disk s deklarovanou velikostí 10GB a limitem 2GB na soubor, tak se v adresáři objeví pět očíslovaných souborů o velikosti 2GB.
  • V případě, že je u virtuálního stroje proveden snapshot, dojde k zakonzervování aktuálního stavu virtuálních disků (jsou uzamčeny) a pro každý z nich se vytvoří nový očíslovaný soubor, do kterého se ukládají veškeré změny, jimiž se liší aktuální instance od té, na níž byl aplikován snapshot. Snapshoty ale nelze udělat v každé aplikaci od VMware. Původně bylo možné provést pouze jeden snapshot a to buď v prostředí VMware Server, nebo VMware Workstation. V prostředí VMware Workstation lze nyní provádět i vícenásobné snapshoty. Aplikace VMware Player sice s nimi umí pracovat, ale neumožňuje je dělat.

Swap virtuálního stroje *.vswp

S těmito soubory pracuje především ESX server. Fungují jako běžný swap, tzn. že na jejich použití dojde až v případě, že virtuálnímu stroji začne docházet paměť.

U virtuálního stroje, který je má k dispozici, v okamžiku kdy dojde přidělená fyzická paměť, nezačne virtuál swapovat do zbylé fyzické paměti hostitele, což by mohlo vést k jeho kolapsu, ale do těchto souborů na disku. Použití těchto swapovacích souborů tedy chrání paměť hostitele.

Při vypnutí či pozastavení virtuálu VMware tyto soubory odstraní.

Poznámka Je-li virtuální stroj spouštěn v prostředí, kde je aplikován overlay, ztrácí použití swapovacích souborů smysl, protože by se zaplácla paměť hostitele úplně stejně jako kdyby jel virtuální stroj bez swapu.

Podadresáře *.lock

Pokud existují v adresáři virtuálního stroje podadresáře, jejichž název končí příponou *.lock pak to znamená že virtuální stroj je spuštěný či ve stavu uspání. V případě, že prokazatelně neběží, jde o pozůstatky po pádu systému, kdy se virtuál nestačil korektně vypnout. Při korektním vypnutí, nebo smazání snapshotu se obvykle odstraní.

Jejich existence může být někdy na obtíž - kupř. když potřebujeme namountovat nabouraný disk virtuálního stroje. V takovém případě je stačí smazat. Ovšem před tímto krokem by měla být provedena kompletní záloha celého struktury virtuálního stroje,

Obsah paměti pozastaveného virtuálu *.vmss

Je-li virtualizace virtuálního stroje pouze pozastavena, pak se obsah jeho paměti uloží do tohoto souboru. Jeho velikost tedy může být přibližně stejná jako velikost virtuální RAM, jakou má stroj nastavenou. Má-li stroj pokračovat ve virtualizaci, tak se načte zpátky do paměti hostitele. To však může někdy být zdrojem problémů, obzvláště když se liší hardwarové vybavení hostitele, nebo dojde ke změně v konfiguraci. Proto je lepší ho v případě diskless použití smazat. Pokud tento soubor neexistuje, pak se virtuální stroj spustí stejně, jako by byl předtím vypnutý. VMware jej sám od sebe nemaže nikdy, pouze jej při každém dalším pozastavení přepisuje.

Upozornění Je-li virtuální stroj určen pro spouštění v rámci diskless Debianu pak by měl být vždy snapshotován ve vypnutém stavu a případný existující soubor *.vmss soubor ještě před přesunem do cílového adresáře odstraněn.

Informace o snapshotu *.vmsn

Do tohoto souboru se ukládá informace o stavu virtuálního počítače v okamžiku vytvoření snapshotu. Je-li snaphot odstraněn, pak se odstraní i příslušná informace. Tyto soubory se vytvářejí vždy paralelně se snapshotem a jejich velikost se odvíjí od toho, jestli snapshot zahrnuje také aktuální stav virtuální paměti (u spuštěného stroje) nebo ne (u zastaveného). Je-li snapshot proveden u zastaveného virtuálního stroje, pak je tento soubor poměrně malý (pod 32 kb). Co do obsahu je podobný souborům typu *.vmss, které se vytváří je-li virtuální stroj pozastavený.

Seznam snapshotů *.vmsd

Tento textový soubor obsahuje informace o snapshotech, ze kterých si pak VMware Player sestaví aktuální obraz virtuálního disku.

Virtuální BIOS *.nvram

Tento malý soubor obsahuje BIOS virtuálního stroje, který se používá při jeho spouštění. Podobné jako BIOS reálného stroje umožňuje upravit výchozí konfiguraci hardware. Dostat se k jeho konfiguraci umožňuje stisk klávesy F2 při spouštění. Provedené změny se pak zpátky uloží do binárního souboru s příponou .nvram.

Logy *.log

Soubory s touto příponou lze s klidnou duší smazat. VMware aplikace do nich ukládají informace, které mohou pomoci řešit případné problémy při spouštění virtuálního stroje.

Optimalizace virtuálního VMware stroje pro overlay NFS

V prostředí virtuálního stroje MS Windows..

  1. Provést veškeré potřebné instalace, aktualizace a konfigurace v prostředí virtuálu
  2. Zakázat použití virtuální paměti
  3. Zrušit v síťovém nastavení všechno kromě nastavení TCP/IP. Nastavení sítě se musí brát z DHCP, jinak by mohlo docházet k síťovým konfliktům.
  4. Odstranit pokud možno veškerá nepotřebná data
  5. Po restartu defragmentovat disk v prostředí virtuálu
  6. Vypnout virtuál

Po vypnutí stroje ve virtualizačním prostředí VMware Workstation..

  1. Odstranit nepotřebné snapshoty a logy
  2. Defragmentovat virtuální disky
  3. Upravit konfiguraci virtuálu tak, aby nikde nefigurovaly fixní cesty
  4. Provést snapshot
Upozornění Poslední bod je důležitý především proto, že se pak na straně virtualizačního stroje bude do pměti načítat z virtuálního disku jen nezbytně nutné minimum dat, které se pak do /overlay/unirw zapíše ve formě změnového souboru, který se po restartu hostitele zahodí.

Kdyby tento snapshot neexistoval, tak se VMware Player pokusil načíst celý virtuální disk, což by mohlo vést k zaplnění veškeré dostupné paměti a pádu aplikace