Správa MetaCloudu přes webové rozhraní

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

(English version) Template je soubor informací o spouštěném virtuálním stroji (síť, velikost RAM, soubor zdrojového obrazu a podobně).

Image je soubor obsahující operační systém.

Webové rozhraní.


Správa templatů virtuálních strojů

Seznam dostupných templatů naleznete pod položkou Virtual Resources -> Templates. Kliknutí na název template se zobrazí podorbnější informace o templatu. Po kliknutí na záložku Template se zobrazí konfigurační soubor template.

Úprava existujícího template

Pro úpravu předpřipraveného template je nutné ho zkopírovat a následně si ho upravit podle sebe.

  • Virtual Resources -> Templates a zaškrtněte vybraný template.
  • V pravém horním menu klikněte na položku Clone.
  • V dialogu, který se objeví, zadejte jméno svého template a klikněte na tlačítko Clone.
  • Nově vytvořený template můžete upravit podle svých potřeb kliknutím na položku Update.
  • Změny uložíte kliknutím na tlačítko Update.

Po zkopírování image s operačním systémem (systémového disku), je nutné číslo nového image vložit i do kopie template v Update properties.

Stejný návod.

Virtuální stroj se z template vytvoří:

  • Zaškrtněte Vám vyhovující template a klikněte na Instantiate. Při vytvoření zadáte jméno nové instance a počet instancí nového virtuálního stroje

Vytvoření nového template

Ve webovém rozhraní si také můžete vytvořit vlastní template. Vždy ale preferujte použití námi nadefinovaného template před vytvořením vlastního! V levém menu vyberte Virtual Resources -> Templates a klikněte na tlačítko New. Otevře se vám okno Create VM Template, v kterém se přepnete do záložky Wizard. Postupně nastavíte všechny potřebné parametry a uložte ho kliknutím na Create.

  • General
    • Name - jméno, pod kterým bude template uložen a zobrazován v seznamu, povinné
    • Memory - velikost paměti virtuálního stroje v MB, např. 512, povinné
    • CPU - počet plánovaných CPU virtuálního stroje (může se zadat i půl procesoru jako 0.5, jestli plánujete výpočty náročné na CPU, prosíme, zadejte stejný počet jako VCPU), povinné
    • VCPU - počet virtuálních CPU pro VM
  • Storage
    • Add another disk - přidá další disk v template
    • Image - první záložka DISK bývá image disk, z nabídky vyberte požadovaný image nebo vyplňte ID image v IMAGE_ID, povinné
    • Volatile disk - přidá další datový disk
      • Type - swap nebo fs (file system), povinné
      • Size - velikost disku v MB, povinné
    • Advanced options
      • DEV_PREFIX - vd, povinné
      • Target - název, pod kterým bude virtuální systém vidět disk, volitelné
      • Image Mapping Driver - ovladač pro připojení disku v XEN, volitelné, ovšem důrazně doporučujeme použít volnu qcow2
  • Network
    • Network - z nabídky si vybereme síť s názvem "public" (ID je 1), povinné
  • OS Booting
    • Arch - architektura CPU
    • Boot - bootovací metoda, vyberte bootloader
    • Bootloader - zadejte "pygrub"
  • Input/Output
  • Context
    • Network and SSH
      • Add SSH contextualization - kontextualizace SSH, je nutné zašktnout a vložit Public key, jinak nebude možné se na VM přihlásit přes SSH, povinné
      • USER_DATA do tohoto pole vložte kontextualizační proměnné pro soubor cloud-init, volitelné.
    • Více v části Kontextualizace
  • Hybrid
  • Other
    • Ostatní položky rovněž nejsou povinné a můžete ponechat původní hodnoty.

Oficiální návod v Open Nebula dokumentaci

Stisknutím tlačítka Create pak vytvoříme template, který se vám následně zobrazí v seznamu.

Kontextualizace

  • V seznamu template vyberte požadovaný template a vyberte Update.
  • V editoru vyberte v levém menu položku 'Context' a 'User inputs' a můžete vkládat kontextualizační proměnné.
  • Při úpravě kontextualizace doporučujme:
    • Provádějte malé změny a iterativně, zjednodušíte si tak ladění a lépe se vyvarujete syntaktických chyb.
    • Nutné je odřádkování po každé proměnné.
    • Je použit jazyk YAML. Například: packages[] do hranatých závorek se vpíšou názvy balíků, které chcete mít v VM nainstalované.
    • Zapsané a uložené kontextualizační proměnné se zobrazují v záložce "Advanced mode" v průvodci nastavení template.
    • Odkaz na dokumentaci cloud.init

Správa obrazů virtuálních strojů - images

Image může být buď:

  • persistentní Na perzistentním obrazu zůstávají data uložena i po vypnutí virtuálního stroje a lze vytvořit pouze jedna instance virtuálního stroje s konkrétním persistetním obrazem.
  • nepersistetní Na neperzistentním obrazu data uložená nezůstávají, zato může být vytvořeno více virtuálních strojů s tímto konkrétním obrazem.

a taky mluvíme buď o:

  • image s operačním systémem = systémový disk = image (Pokud se mluví obecně o image, myslí se image s operačním systémem.)
  • datovém disku (tzv. Datablock) = image se souborovým systémem

Image je možné zkopírovat nebo nahrát vlastní.

Správa disků

Přečtěte si nejdřív příklady použití různých typů datových disků, zjistíte, jaký je nejvhodnější pro Vaše potřeby. Datové disky (datové image) ve virtuálním stroji mohou být následujících typů:

  • Image typu Datablock
    • Persistentní image změny v image disku budou uchovány i po zrušení stroje. Změna se na disk promítne po úspěšném převedení stroje do stavu SHUTDOWN.
    • Nepersistentní image změny v image disku budou po zrušení stroje ztraceny. Disk přežije vypnutí a zapnutí (tj. reboot, suspend, poweroff, undeploy, stop), ale nepřežije zrušení stroje pomocí terminate. Změny vytvořené v nepersistentním disku jdou ale zkopírovat pomocí funkce Snapshot do nového image.
  • Volatile disky jsou vytvářeny k VM, po vypnutí VM jsou ale odstraněny. Data z nich nejdou nikdy, ale vážně nikdy uložit. Vhodné pro adresáře /swap, /tmp nebo /scratch. Není možné z nich udělat Snapshot.

Disky se připojují buď úpravou template virtuálního stroje nebo pomocí Hotpluggingu.

Připojení disků pomocí úpravy template.

Dají se tak připojovat všechny typy disků, i ty systémové (image).

Vytvoření volatile disku a jeho připojení k template.

  • Virtual resources -> Templates (vyberte požadovaný template).
  • Kliknout na Update.
  • V průvodci vyberte v menu Storage
  • Zakliknout Volatile disk a zadat jeho parametry.
  • Uložit pomocí Update.

Z takto upraveného template je možné udělat virtuální stroj.


Druhou možností je vytvořit volatile disk on the fly a připojit ho přímo k již vytvořenému virtuálnímu stroji. Druhý postup je:

  • K vytvořenému virtuálnímu stroji přidat volatile disk.
  • Vybrat virtuální stroj z jejich seznamu (Virtual resources -> Virtual Machines)
  • V dolním menu vybrat záložku Storage
  • Kliknout na Attach new disk.
  • Vybrat volatile, zadat parametry a uložit pomocí "Attach".

Vytvoření disků s file systémem (datablock) a jeho připojení k template.

  • Virtual resources -> Images
  • Create
  • Type: DATABLOCK
  • Image location: Empty datablock
  • Datastore: cerit-sc-cloud nebo metacloud-dukan (podle klastru u ostatních elementů VM)
  • Zbytek podle Vašich požadavků.
  • Potvrdit tlačítkem "Create".

Připojení k template:

  • Virtual resources -> Templates (vyberte požadovaný template).
  • More -> Update
  • V průvodci vyberte v menu Storage
  • Zakliknout Image a vybrat právě vytvořený datový image.
  • Uložit pomocí Update.

Z takto upraveného template je možné udělat virtuální stroj.

Vytvoření persistentního image z již existujícího

Ukládání disků.

Persistentní a nepersistentní disky lze také uložit: Snapshot image je uložení změn na disku jako nového image. Open Nebula podporuje následující druhy image:

  • Deferred snapshots (disk-snapshot) změny na disku budou uloženy jako nový image, když je VM ve stavu shutdown.
  • Hot snapshots (hot disk-snapshot) disk začne s kopírováním v momentě, kdy se tato operace spustí. Proto je potřeba zajistit po celou dobu operace disk v stejném stavu (např. neodpojovat disk během běhu VM).

Hotplugging

Nově můžou být disky k virtuálnímu stroji připojeny/odpojeny i za běhu (hotplugging). Nedají se připojit systémové disky s operačním systémem (image), pouze datové. Pro výměnu systémového disku je třeba upravit template virtuálního stroje.

Odpojení disků přes hotpluging

  • V záložce 'Virtual Machines' označte virtuální stroj, ve kterém chcete přidat nebo odebrat disk.
  • Přepněte se do záložky 'Storage'.
  • Pro odpojení klikněte na tlačítko 'Detach X' při vybraném disku.

Připojení disků přes hotpluging

Jestli chcete naopak disk přidat existují dvě možnosti:

  • Pokud máte obraz předpřipravený v systému (tj: zobrazí se Vám v seznamu Virtual Resources -> Images).
    • Ve Virtual machines vyberte stroj, kam chcete přidat disk.
    • V dolním menu vyberte záložku Storage a klikněte na Attach new disk.
    • V novém okně vyberte z menu Vámi požadovaný Image a v Advanced options do kolonky DEV_PREFIX zadejte vd a klikněte na 'Attach'.
  • Vytvoření on-the-fly (volatile) disku
    • Ve Virtual machines vyberte stroj, kam chcete přidat disk.
    • V menu vyberte záložku Storage a klikněte na Attach new disk.
    • Vyberte 'Type: Volatile disk', zadejte požadovanou velikost, 'Type:' fs (file system) nebo swap a formát qcow2.
    • Do Advanced options do kolonky 'DEV_PREFIX:' zadejte vd a klikněte na 'Attach'.

Ve virtuálním stroji se pak v /dev objeví disk jako DEV_PREFIX + {c, d, e, ...}. Suffix je generován automaticky abecedně pro první volné písmeno kromě písmena 'b', to je vyhrazeno pro kontextualizační disk.

Rozdíl v DEV_PREFIX pro jednotlivé skupiny strojů je způsoben rozdílným typem virtualizace. Stroje CERIT-SC používají KVM, kdežto ostatní technologii XEN.

Stroj patří Ceritu pokud v názvu template nebo image je cerit. Například: IMAGE CERIT-SC Windows Server 2012 R2 Standard EN x86-64 0001@cerit-sc-cloud. Pokud jste image nebo template přejmenovali a nejste si jistí zda jsou Cerit nebo jiný, kontaktujte nás.

Po použití hotpluggingu je doporučeno neměnit /etc/fstab! Ke stabilnímu připojení disků je třeba modifikovat template.

Jako přípojný bod nevyužívejte /dev/vdb ani v template, ani v /etc/fstab! Jedná se o kontextualizační disk a VM bude bez něj nenastartovatelná!

Správa virtuálních strojů

Přehled o možnostech virtuálních strojů Vám dají příklady práce s cloudem. Pro spravování virtuálních strojů (VM) pomocí webového rozhraní se nejdřív musíte přepnout do záložky 'Virtual Machines. Zde uvidíte seznam aktuálně běžících virtuálních strojů, které jsou pro vás viditelné. Pro více informací o vybrané VM stačí na ni kliknout v seznamu a ve spodní části se zobrazí informace rozdělené do několika záložek:

  • Information - základní informace o virtuálním stroji, IP adresa, datum spuštění
  • Capacity - počet CPU, VCPU a paměti virtuálního stroje.
  • Storage - správa disků. Snapshot (save as) u každého z disků znamená možnost uložit si aktuální stav disku jako nový image.
  • Network - přehled zapojení do sítě
  • Snapshots - vytvoření snapshotu (stavu) VM
  • Placement - fyzický stroj, kde virtuální stroj běží
  • Actions - log a naplánování akcí, které se provádí ve virtuálním stroji


Více akcí je pak možné provádět po označení konkrétního virtuálního stroje. Tlačítka vpravo nahoře umožňují změnu stavů virtuálního stroje.

  • Hold - Přepne označené virtuální stroje ze stavu PENDING do stavu HOLD
  • Release - Pustí označené virtuální stroje ze stavu HOLD
  • Suspend - Přepne označené virtuální stroje do stavu SUSPENDED
  • Resume - Obnoví označené virtuální stroje ze stavu STOPPED nebo SUSPENDED
  • Stop - Zastaví označené virtuální stroje
  • Restart - Označené virtuální stroje ve stavu UNKNOWN nebo BOOT znovu spustí
  • Resubmit - Označené virtuální stroje ve stavu PENDING resubmituje
  • Save as - V OpenNebule se po zastavení stroje aktuální stav neukládá a proto jestli chceme změny ve VM uložit, musíme tak učinit před jeho vypnutím ('Terminate'(5.)) pomocí této akce. Nový image se uloží a je potřebné vytvořit nový template, zejména protože se změní ID image souboru.
    Pozn.: po provedení 'Save as' je potřebné VM vypnout pomocí 'Terminate'. Zastavení pomocí 'Cancel' nebo 'Delete' způsobí také zrušení akce 'Save as'.
  • Cancel - Zruší označené virtuální stroje

Pro úplnost je třeba uvést přesný výčet možných stavů virtuálního stroje, detailně popsán v dokumentaci

*Pending (pend): Čeká na prostředky a na vlastní spuštění
*Hold (hold): Pozastaveno vlastníkem, do uvolnění nelze spouštět
*Prolog (prol): Systém kopíruje obraz do výpočetního stroje
*Running (runn): Virtuální stroj nastartoval, od nyní je i monitorován
*Migrate (migr): Stroj je právě migrován
*Epilog (epil): Ukončení činnosti virt. stroje, čištění výpočetního stroje, přenos dat do úložiště
*Stopped (stop): Pozastaveno, data jsou přenášena zpátky do úložiště
*Suspended (susp): Pozastaveno, data jsou ponechána na výpočetním stroji
*Failed (fail): Vyskytla se chyba v běhu virt. stroje.
*Unknown (unknown): Stav není znám
*Done (done): Virt. stroj není vidět ve výpisu a je uchováván z databázových důvodů

Pokud stroj z nějakého důvodu nefunguje, předtím než nám napíšete, přečtěte si kde mohla vzniknout chyba.

Firewall

Upozornění: Uživatelé jsou zodpovědní za bezpečnost svých strojů. Dbejte proto prosím o správné nastavení firewallu! Firewall je nutné nastavit ještě před spuštěním virtuálního stroje.

Funkce firewallu pro jednotlivé virtuální stroje se ovládají s pomocí konceptu Security Groups. Jednotlivé skupiny mají přiřazeny seznamy povolených portů. To zjednodušeně znamená, že čím více skupin (security groups), tím více je stroj otevření pro komunikaci. Základní bezpečnostní skupina, do níž se zařazují všechny stroje v MetaCloudu, má otevřené pouze porty TCP 22 (SSH), TCP 3389 (RDP) a škálu portu UDP pro fungování DHCP apod.

Použití a nastavení skupin je blíže popsáno v samostatném dokumentu.

Do bezpečnostních skupin se virtuální stroje přiřazují úpravou šablony. Postup je popsán v dokumentaci OpenNebuly.