Vladimir EreminToto je příspěvek našeho hosta Vladimira Eremina, produktového manažera společnosti Veeam. Vladimir je velmi aktivní na Fórech Veeam, na Twitteru a na Spiceworks. Jednou z Vladimirových dovedností je ovládání PowerShellu a v tomto blogovém příspěvku nás náš host seznámí s jeho použitím. Pokud budete mít nějaké otázky k funkcím PowerShellu použitým v tomto příspěvku, můžete je probrat na Fórech Veeam. Také si můžete stáhnout vzorový skript, zde pro VMware nebo zde pro Hyper-V, a diskutovat o tomto tématu na Fórech Veeam.

Produkt Veeam Backup Free Edition je neoblíbenějším bezplatným nástrojem společnosti Veeam, hlavně kvůli jeho funkci VeeamZIP, která dokáže provádět interaktivní plné zálohy neomezeného počtu virtuálních počítačů. VeeamZIP měl ale vždy jedno malé, ovšem nepříjemné omezení – nedokázal naplánovat provádění pravidelných záloh. Samozřejmě, vzhledem k tomu, že VeeamZIP šel spouštět pouze interaktivně, nebylo možné v uživatelském rozhraní provádět plánování úloh, například pravidelného zálohování. Pokud jste toto omezení také pocítili, určitě budete rádi, že od verze Update 2 už tomu tak není! Díky našim Fórům Veeam, našemu zapojení na Twitteru i dalších místech jsme se o zájmu o tuto funkci dozvěděli a rozhodli jsme se do bezplatné edice doplnit cmdlet PowerShellu Start-VBRZip.

Jak to funguje

Jak již bylo zmíněno, hlavní funkcí nástroje Veeam Backup Free Edition je schopnost provádět VeeamZIP zálohy virtuálních počítačů (a samozřejmě také obnovovat virtuální počítače, soubory hosta a položky aplikací z těchto záloh). VeeamZIP vždy vytvoří soubor s plnou zálohou (.vbk), který funguje jako nezávislý bod obnovení. Bezplatná edice umožňuje uložit soubor se zálohou do úložiště záloh, do místní složky nebo do sdílené síťové složky.

Při provádění záloh s nástrojem VeeamZIP můžete okamžitě zahájit proces zálohování pro vybrané virtuální počítače. Tento typ zálohování nevyžadujte téměř žádná nastavení, takže je pro ruční spouštění velmi pohodlný.

image

S verzí Update 2 nyní můžete napsat jednoduchý skript PowerShellu (pro VMware je zde a pro Hyper-V zde), který spustí činnost nástroje VeeamZIP pro vybrané virtuální počítače, a tento skript pak naplánovat pomocí Plánovače úloh ve Windows. Vytvořili jsme pro vás následující vzorový skript, který nejen že spustí VeeamZIP zálohu požadovaných virtuálních počítačů, ale dokonce vám i pošle přehledně formátovanou e-mailovou zprávu s výsledkem zálohování!

Parametry skriptu

Skript dokáže provádět ad-hoc zálohy vybraných virtuálních počítačů, které se nachází na samostatném hostiteli, clusteru nebo vCenter serveru. Před spuštěním skriptu musíte zadat tři povinné parametry: názvy virtuálních počítačů, které se mají zálohovat, hostitele, na kterém se tyto virtuální počítače nachází, a složku, do které se budou soubory se zálohou ukládat. Poznámka: Tento skript byl na základě připomínek dne 18. 5. aktualizován.

 

##################################################################

# Proměnné definované uživatelem

##################################################################

# Názvy zálohovaných VM, oddělené čárkou (povinné). Např. $VMNames = “VM1”,”VM2”

$VMNames = ""

# Název vCenter serveru nebo samostatného hostitele, na kterém se zálohované VM nachází (povinné)

$HostName = ""

# Složka, do které se má záloha VM uložit (povinné; např. C:\Backup)

$Directory = ""

 

Volitelně můžete také změnit úroveň komprimace a požadované uchování zálohy, zakázat znehybnění VMware, povolit šifrování nebo i nastavit parametry pro zaslání zprávy.

# Požadovaná úroveň komprimace (volitelné; možné hodnoty: 0 - žádná, 4 - optimalizovaná pro deduplikaci, 5 - optimální, 6 - vysoká, 9 - extrémní)

$CompressionLevel = "5"

# Znehybnění virtuálního počítače při pořizování snapshotu (volitelné; pro použití se musí v OS hosta nacházet VMware Tools nebo Hyper-V Integration Components; možné hodnoty: $True/$False)

$EnableQuiescence = $True

# Ochrana vytvořené zálohy šifrovacím klíčem (volitelné; $True/$False)

$EnableEncryption = $False

# Šifrovací klíč (volitelné; cesta k zabezpečenému řetězci)

$EncryptionKey = ""

# Nastavení uchování (volitelné; ve výchozím nastavení nejsou VeeamZIP soubory odstraňovány a jsou v daném místě uchovávány trvale.

# Možné hodnoty: Never, Tonight, TomorrowNight, In3days, In1Week, In2Weeks, In1Month)

$Retention = "Never"

 

Pokud chcete po dokončení zálohy dostat e-mailem zprávu, musíte navíc nastavit také následující parametry pro zasílání zpráv.

##################################################################

# Nastavení parametrů pro zasílání zpráv

##################################################################

# Povolit zasílání zpráv (volitelné)

$EnableNotification = $True

# SMTP server pro e-mail

$SMTPServer = ""

# Odesílatel e-mailu

$EmailFrom = ""

# Adresát e-mailu

$EmailTo = ""

# Předmět e-mailu

$EmailSubject = ""

 

Výsledná e-mailová zpráva bude vypadat takto:

Name Start Time End Time Result Details
CentOS-tiny_2015-03-26T180459 3/26/2015 6:04:59 PM 3/26/2015 6:07:17 PM Warning Processing finished with warnings at 3/26/2015 6:07:13 PM Cannot use VMware Tools quiescence because VMware Tools are not found.
CentOS-tiny_replica_2015-03-26T180720 3/26/2015 6:07:20 PM 3/26/2015 6:11:20 PM Success Processing finished at 3/26/2015 6:11:18 PM

Všechny výše uvedené parametry lze konfigurovat nastavením příslušných proměnných na odpovídající hodnoty. Pokud například chcete povolit šifrování, nastavte proměnnou $EnableEncryption na hodnotu $True (typu boolean) a zadejte šifrovací klíč (podrobnosti najdete v další kapitole). Pokud dále například chcete, aby byly soubory se zálohou po dvou týdnech vymazány, nastavte proměnnou $Retention na hodnotu “In2Weeks” (typu string) atd. Nemusíte si přitom vůbec pamatovat, co jednotlivé proměnné dělají a jaké jsou jejich přípustné hodnoty – pro vaše pohodlí jsme do vzorového skriptu pro každou proměnnou přidali její krátký popis.

Šifrování

Vraťme se nyní k šifrování. Bezpečnost dat je klíčovou součástí zálohovací strategie. Data záloh musí být chráněna před neoprávněným přístupem, zvláště pokud jsou citlivá data virtuálních počítačů zálohována do externích umístění nebo archivována na pásky. Aby byla vaše data v bezpečí, můžete své VeeamZIP zálohy zašifrovat. Jak již bylo zmíněno výše, je v takovém případě potřeba určit soubor, který obsahuje šifrovací heslo.

Mohli byste samozřejmě zadat heslo pro skript jako prostý textový řetězec. Obyčejný řetězec ale není zabezpečený (mírně řečeno), protože je v paměti uložen jako prostý text. Proto většina cmdletů PowerShellu hesla v této podobě nepřijímá.

Lepší variantou je použít zabezpečený řetězec. Tento typ je podobný obyčejnému řetězci, ale jeho obsah je v paměti šifrován. Používá reverzibilní šifrování, takže když je třeba, může být heslo dešifrováno, ale pouze objektem zabezpečení, který ho zašifroval. Chcete-li vytvořit zabezpečený řetězec, musíte otevřít PS konzoli a napsat následující dva řádky. Kód se vás při spuštění zeptá na heslo a pak ho uloží jako zabezpečený řetězec do souboru:

$SecurePassword = Read-Host -Prompt "Enter password" -AsSecureString

$SecurePassword | ConvertFrom-SecureString > “Složka, ve které je uložen zabezpečený řetězec; na příklad C:\SecureString.txt”

Pak zadejte v hlavním skriptu cestu k tomuto nově vytvořenému souboru:
# Ochrana vytvořené zálohy šifrovacím klíčem (volitelné; $True/$False)

$EnableEncryption = $True

# Šifrovací klíč (volitelné; cesta k zabezpečenému řetězci)

$EncryptionKey = "C:\SecureString.txt"

Naplánování skriptu

Před naplánováním skriptu si ho nejprve zkuste spustit ručně, abyste se přesvědčili, že dělá to, co chcete.

Nejsnadnějším způsobem naplánování skriptu pro automatické pravidelné vytváření záloh je použít Plánovač úloh systému Windows. Stačí spustit nástroj Plánovač úloh a vytvořit novou základní úlohu:

image

Vytvořte pro ni vhodný název a popis, který vám později připomene, co úloha dělá.

Na další stránce se nastavuje aktivační událost úlohy. Nastavení je velmi jednoduché a nepotřebuje vysvětlení. Nabízené možnosti jsou poměrně flexibilní (lze vybrat spouštění zálohy od několikrát denně až po jen jednou měsíčně), takže zde nastavte hodnoty, které odpovídají vašim požadavkům na cíl doby obnovení. Většina lidí používá denní zálohy:

image

Nastavte čas spuštění úlohy mimo pracovní dobu. V tomto příkladu bude úloha od 22. dubna 2015 spouštěna každý večer ve 22:00.

image

Na následující stránce s akcí vyberte, že chcete, aby úloha provedla spuštění programu a klikněte na tlačítko „Next“.

clip_image002

V podokně „Start a Program“ zapište do pole „Program/Script“ následující příkaz:

Powershell –file "cesta k souboru Veeamzip.ps1"

clip_image004

A je to! Po vytvoření úlohy ji ale ještě můžeme chtít znovu otevřít a provést pár dodatečných změn. Proto zaškrtněte políčko „Open the Properties dialog for this task when I click Finish“:

clip_image006

Protože bude úloha spouštěna na serveru a uživatel nemusí být v čase jejího spuštění přihlášen, je vhodné povolit spuštění úlohy nezávisle na přihlášení uživatele a přiřadit k úloze jeho přihlašovací údaje.

clip_image008

Jakmile jste hotovi, klikněte pravým tlačítkem na úlohu a vyberte „Run“, abyste se přesvědčili, že úloha proběhne správně:

clip_image009

PowerShell uživatelům umožňuje to, co si vždy ve Veeam Backup Free Edition přáli mít!

Teď, když jste vyzbrojeni touto skvělou novou funkcí, byste měli být schopni dosáhnout dlouho očekávaného cíle – provádět plánované zálohy pomocí nástroje Veeam Backup Free Edition, který nabízí mnohem víc funkcí pro zálohování a obnovu než různá alternativní bezplatná zálohovací řešení založená na skriptech.

GD Star Rating
loading...
Veeam Backup Free Edition: Nyní s PowerShellem!, 5.0 out of 5 based on 2 ratings
Veeam Availability Suite — Stáhnout na zkoušku zdarma

  • Jan

    Hi, I use Veeam Free 9 and I set backup schedulling with powershell. Backup to local drive c:BackUp is OK, but when I change Backup to share directory ( NAS Synology ) backup is fail with error “user name or password is incorect”. I would like to ask, it is possible backup Veeam free 9 with powershell to NAS with credential?
    Thank you, Jan

    GD Star Rating
    loading...
    • Rick Vanover

      Hey Jan, I’m not sure of explicit credential passing as you can do with Backup & Replication (paid edition). One optin is to make the credentials you use in Windows the same on the nas.

      GD Star Rating
      loading...
  • Rick Vanover

    Hey Jan, I’m not sure of explicit credential passing as you can do with Backup & Replication (paid edition).

    GD Star Rating
    loading...
  • Jan

    Hi Rick,
    I try set the same credential as windows account. In paid version it is OK. Only in Free edition with powershell schedule do not work.

    GD Star Rating
    loading...
    • Rick Vanover

      That’s weird, I’ll let the product team know.

      GD Star Rating
      loading...
Rick Vanover
Author: Rick Vanover

Rick Vanover (vExpert, MCITP, VCP) je specialistou na produktovou strategii ve společnosti Veeam Software a pracuje ve městě Columbus, Ohio. Je to populární blogger, tvůrce podcastů a aktivní člen virtualizační komunity. Mezi Rickovy zkušenosti z oblasti IT patří správa systémů a řízení IT, přičemž ústředním... 

Publikováno: Leden 25, 2016