Vítejte u nového seriálu věnovanému Azure Virtual Machines – tedy vytváření virtuálních počítačů, jak se vznešeně říká „v cloudu“, prakticky to ale znamená v jednom ze 6 velkých datových center po celém světě. Vzhledem k latenci sítě je samozřejmě vhodné vybrat si datové centrum co nejblíže, což je v našem případě buď Amsterdam (North Europe) anebo Dublin (West Europe).
K čemu je takový virtuální počítač dobrý? K řadě věcí. Předně nemusíte kupovat žádný hardware ani licenci na software – platíte pouze za hodinu existence virtuálního počítače, a to v závislosti na jeho hardwarových parametrech (tabulka HW parametrů a cen zde). Je tedy ideální pro zkoušení, kdy potřebuji určitý scénář rozběhnout na pár hodin. Hodí se ale i pro produkční použití, neboť infrastruktura je velmi robustní, všechny komponenty jsou duplikovány a vaše data (virtuální disky) jsou dokonce uložena ve třech zcela nezávislých replikách. Takovou úroveň odolnosti proti selhání a automatické obnovy v případě havárie vám žádný hoster nemůže nabídnout.
Na vyzkoušení budete potřebovat účet na Windows Azure. K vyzkoušení je ideální použít bezplatný 90 denní účet, který vám nabízí dostatek zdrojů pro nepřetržitý běh jednoho virtuálního stroje typu Small (1 jádro, 1.75 GB RAM). Uvedených 750 hodin můžete využít dle vlastního uvážení, takže například můžete běžet farmu 5 serverů velikosti Medium po dobu 75 hodin (za vesmírnou hodinu se spotřebuje 2 x 5 jednotek). Při překročení povoleného množství dojde k zastavení virtuálů do konce daného měsíce, garantovaně tedy nic neplatíte. Přesný postup založení účtu je popsaný zde, v případě problémů se nám ozvěte. Poté ještě musíte možnost používání povolit na stránce Preview Features.
A nyní již k vlastnímu založení počítače. Je to mimořádně snadné. Stačí si vybrat jeden z připravených šablon počítačů:
Povšimněte si, že nejsou nabízené jenom operační systémy Microsoft, ale též vybraných Linuxových dodavatelů. Ve třetím díle seriálu si ukážeme, jak vytvořit vlastní šablonu. Poté vyplníme jméno počítače, heslo správce a hardwarovou specifikaci:
Poslední zajímavá stránka od nás vyžaduje zadání budoucího DNS jména pro vzdálené připojení, místa pro uložení virtuálních VHD disků (storage account si představte jako síťový disk) a vybrané datové centrum:
Po dokončení průvodce stačí počkat cca 10 minut, než je počítač připraven a jeho stav se změní na Running:
Nyní se můžete k počítači připojit přes Remote Desktop (tlačítko Connect dole nalevo) v případě Windows anebo přes SSH klienta v případě některého Linuxového klonu. Počítač je od této chvíle pouze váš a můžete si s ním dělat cokoliv uznáte za vhodné. Prostřednictvím portálu můžete též monitorovat zátěž daného virtuálu (viz poslední obrázek), změnit jeho hardwarovou specifikaci anebo nastavit povolené síťové protokoly dostupné z internetu (více ve čtvrtém díle).
V prvním díle jsme si ukázali, jak vytvořit nový virtuální počítač. Ve druhém díle si povíme něco o práci s virtuálními disky. Pokud znáte Hyper-V nebo jinou virtualizační technologii, určitě vám tento postup přijde velmi přirozený. Existují pouze dvě odlišnosti:
Disk není uložen na fyzickém hard disku, ale ve třech nezávislých replikách v úložišti Azure nazývaném Storage Account. Představte si ho jako síťový disk, který vám je automaticky vytvořen a přidělen, jenom místo adresy \\server\share\disk.vhd bude mít adresu např. http://portalvhds5ckgygrz9qb4q.blob.core.windows.net/vhds/MJUREKTESTSERVER-TESTMACHINE-2012-07-03.vhd
Veškerá správa se neprovádí lokální správcovskou konzolí, ale prostřednictvím portálu dostupného na adrese http://manage.windowsazure.com
Dost řečí a pojďme na věc. Nejjednodušší je vytvoření prázdného VHD disku a jeho připojení k běžícímu počítači. Stačí na stránce počítače zvolit Attach/Attach empty disk a vyplnit parametry:
Po zhruba minutě čekání je disk připraven k použití. Nyní stačí přihlásit se k virtuálnímu počítači přes Remote Desktop, spustit Disk Administrator a vytvořit zde nový svazek, naformátovat a přidělit mu písmeno a začít používat – stejně jako jste zvyklí již roky. Pokud byste nechtěli prázdný disk, ale chcete použít existující VHD soubor, je to samozřejmě také možné, ale postup je výrazně delší (v případě datového disku odpadá nutnost provádět sysprep, jinak je postup analogický).
Další možností, kterou si můžeme snadno vyzkoušet bez zdlouhavého uploadu disku do cloudu, je odpojení virtuálního disku a jeho připojení k jinému virtuálnímu počítači. Jak asi tuší každý, kdo něco podobného prováděl třeba s Hyper-V, je to opravdu jednoduché. Stačí disk odpojit od původního počítače:
Poté ho uvidíte na stránce Disks, kde si můžete povšimnout podstatného detailu – příslušný disk má sloupeček Attached To prázdný:
Jedině za těchto podmínek se vám objeví v nabídce Attach Disk u cílového počítače:
Pak již jenom stačí přidělit nově připojenému disku písmeno (naformátovaný již samozřejmě je) a můžete s ním pracovat v novém počítači.
V dnešním třetím díle se podíváme na problematiku klonování počítačů. Navážeme tak na předchozí dva díly věnované založení virtuálního počítače a práci s disky.
Klonování počítačů je notoricky známou věcí. Připravíte vzorový počítač – typicky, ale ne nutně virtuální. Poté spustíte nástroj sysprep, který modifikuje instalaci tak, že počítač „ztratí identitu“ a dojde k jeho vypnutí. Při dalším startu se pak dožaduje zadání několika základních údajů, jako je jméno počítače, produktový klič a heslo administrátora, a to buď interaktivně (nově zakoupený notebook) anebo pomocí připravených odpovědních skriptů (automatické klonování). Ani v cloudu u Azure Virtual Machines tomu není jinak, liší se pouze uživatelského rozhraní správcovského nástroje, kterým je portál Windows Azure na adrese http://manage.windowsazure.com
Ve virtuální počítači spustíme sysprep.exe, vyplníme podle obrázku a potvrdíme:
Počkáme několik minut, až se počítač objeví ve stavu Stopped. Nyní spustíme operaci Capture, kde zadáme pouze jméno budoucí šablony počítače:
Po pár minutách uvidíte vaši novou šablonu na stránce Images:
Co je ovšem důležitější, šablona se vám objeví v nabídce My Images při vytváření nového virtuálního počítače – vlastně jste si pouze rozšířili možnosti při vytváření nového virtuálního počítače, což jsme si již dříve ukázali v prvním díle.
Pokud vás klame nabídka My Disks, tak ta je určena pro vytváření počítačů z disku OS bez klonování (např. pokud zrušíte virtuál, ale zachováte disk, můžete ho pak snadno znovu obnovit). Pokud byste chtěli pro vytváření šablony použít existující VHD soubor s operačním systémem, je to samozřejmě také možné, ale postup je výrazně delší. Vytvářet vzorový OS rovnou v cloudu je pro začátek určitě jednodušší.
V dnešním závěrečném díle se podíváme na problematiku zpřístupňování služeb běžících na počítačích externím klientům. Navážeme tak na předchozí tři díly věnované založení virtuálního počítače, práci s disky a klonování.
Počítače zpravidla nespouštíme samoúčelně, ale proto, aby nabízely nějakou službu, např. webové stránky. Protože ve výchozím stavu je maximum síťové komunikace blokováno, je třeba zamýšlenou službu zpřístupnit. Pro počítače běžící jako Azure Virtual Machines se postup nijak neliší od tradiční situace, kdy je server umístěný za nějakým zařízením s veřejnou IP adresou a provádějícím NAT (network address translation) na privátní IP adresu. Nejprve je třeba běžným způsobem ověřit resp. povolit otevření příslušného portu na firewallu operačního systému:
Ve druhém kroku je třeba vytvořit příslušné pravidlo pro přeposílání došlých paketů NAT zařízením, což se v případě Windows Azure provádí z webové konzole:
Povšimněte si, že zde již jedno pravidlo bylo – pro používání vzdálené plochy (Remote Desktop). Nebylo to tedy nic těžkého a náš web je plně přístupný. Složitějším scénářem je nastavení tzv. load balancingu, kdy jedna adresa/port je obsluhována dvěma nebo více počítači. V tom případě musíme při vytváření dalších počítačů specifikovat, že budou připojeny k existující službě (prvnímu počítači), tedy že budou de facto sdílet stejnou veřejnou IP adresu a NAT zařízení:
Vhodné je též přiřadit je do stejné skupiny dostupnosti (Availability Set), což zajišťuje, že plánovaná údržba jako je např. restart hostitelského počítače, nenastane nikdy ve stejnou dobu a také to, že virtuální počítače budou umístěny v datovém centru tak, aby nesdílely stejný potenciální bod selhání (např. stejné UPS zařízení, tzv. fault domains). Poté co je počítač vytvořen, můžeme ho přidat do load balancingu jednoduše tak, že vytvoříme nové pravidlo pro NAT zařízení:
Jak vidíte, místo otevření nového portu jsme dali přednost „připojení“ k existujícímu pravidlu, čímž jsme zvládli veškeré nezbytné konfigurační úkony.