13Jul

Jak obnovit Citrix-Xen VMs zdarma s Xen-Phoenix( Bash)

click fraud protection

Už jste někdy potřebovali hromadně obnovit vaše Citrix-Xen VM pro řešení obnovy po haváriích( DR) nebo jen testovat, že vaše zálohy fungují?HTG vysvětluje, jak používat Xen-Phoenix, free bash script, pro obnovu VM.

Photo Credit: Ryan McCurdy prostřednictvím Compfight cc

Jak jsme se zmínili v "Jak na zálohování Citrix Xen VMs zdarma s Xen-pocalypse", jedním z hezkých věcí v Citrix Xen je, že mnoho z jeho funkcí jsou zdarma nabít. Pokud byste chtěli funkci "Automatizovaná ochrana a obnovení VM", museli byste začít platit za licenci "Advance".Opět platí, že my v HTG odmítáme hodnotu skutečného zálohovacího řešení, ale pokud jste na napjatém rozpočtu, už jste získali obrazy VM z hypervisoru a potřebujete způsob, jak automatizovat vaše "test obnovení "/" DR obnovit ", můžete Xen-Phoenix považovat za dokonale rozumné řešení dříve, než uděláte rozpočtový závazek.

Přehled

"Použití": Máte pár VM, které vyžadují obnovení.Import do centra Xen pomocí pravého kliknutí funguje dobře, ale chcete, aby se tento proces uskutečnil automaticky a podle plánu. Tento Bash skript používá příkaz "XE" k plnění svých povinností.XE je rozhraní příkazového řádku Xen( CLI), což je automatický ekvivalent pro vydávání "pravých kliknutí" v "Xen Center".Budeme volat skript od Cron, který dodá část "plánování".Ve své nejjednodušší podobě je tok obnovení:

instagram viewer

  • Odstranění všech * dosud existujících virtuálních serverů na serveru
  • Import VM ze souborů v umístění zálohy.
  • Ověřte, zda jsou všechny virtuální počítače funkční tím, že je aktivujete jeden po druhém a hledáte nástroje pro hosty.
  • Vypněte VMs, když byl zjištěn tlukot srdce nebo byl dosažen časový limit.

* Chování odstranění všech VM lze úplně zakázat a podporuje výjimky( viz níže).

Umožňuje popraskání:)

Získat skript

Xen-phoenix lze volně získat z github pomocí standardních metod git. S tím se říká, že pokud ještě nejste zvyklý na git, můžete tento soubor zip uchopit tímto odkazem. Protože skript musí běžet na jednom z vašich Xen serverů, měli byste ho extrahovat, aby se zachovala oprávnění k provádění.

wget https: //github.com/aviadra/ Xen-phoenix /archive/ master.zip
rozbalte hlavní

Zatímco výše uvedené by fungovalo, doporučuje se použít metodu GIT, abyste mohli využívat budoucích aktualizací.

Umístění exportu

Musíme nakonfigurovat, odkud exportovat VM.

Zatímco při náhodném pokousání v Citrix Xen jsem zjistil, že úložiště( SR) jsou k dispozici pro použití pod "/var/run/ sr-mount /% UUID%", kde UUID je jedinečný identifikátor SR, který lze získat odGUI.

Znamená to, že můžeme použít standardní "Next - & gt;Další - & gt;Dokončit "a vytvořte" mount "na požadované místo zálohování a poté skript použijte tuto cestu( podle pokynů pro instalaci z příkazového řádku, který je mimo rozsah této příručky).

Chcete-li vytvořit nový "mount", klepněte pravým tlačítkem myši na název serveru a vyberte New SR.

V tomto příkladu označíme Xen do sdílené složky systému Windows, takže zvolte "Sdílení souborů Windows( CIFS)":

Vyplňte následující - & gt;Další - & gt;Dokončit.

Získání jednotky UUID SR

Chcete-li získat identifikátor UUID SR, jednoduše klikněte na jeho název v centru Xen a přejděte na kartu "Obecné".

Pro zkopírování UUID jednoduše klikněte pravým tlačítkem myši a zvolte "kopírovat".

S těmito informacemi jste připraveni upravit soubor nastavení.

Konfigurace souboru nastavení

Projekt Xen-Phoenix je dodáván s šablonou nastavení "nastavení".Tato šablona by měla být upravena tak, aby odrážela vaše nastavení a předala jako první argument skriptu.

Soubor nastavení označuje následující:

  • Umístění výstupu exportu - Pokud jste v tomto bodě řídili průvodce, stačí pouze nahradit% UUID% se SR tak, jak byl získán shora.
  • Umístění SendEmail - Pokud jste se rozhodli povolit e-mail, musíte zadat, kde jste extrahovali zde spustitelný soubor perl. Verifikátor
  • - Ovládá postup ověření po obnovení.To je povoleno ve výchozím nastavení, protože úspěšná "obnovení na úrovni souborů" nemusí nutně znamenat funkční VM.
  • Server_prep - Řídí předdefinovanou smazání všech VM na serveru DR.Toto je ve výchozím nastavení povoleno, protože se předpokládá, že server DR je pro tento účel vyhrazený server. Pokud potřebujete, aby server VM, který běží na tomto serveru, nebyl odstraněn, nakonfigurujte jeho vyloučení.Pokud toto chování není vhodné pro vaši situaci, jednoduše ji deaktivujte.
  • Podrobnosti o e-mailu - Pokud jste povolili e-mail, je třeba definovat podrobnosti jako: To, From, Servername / IP &atd'.Ladění
  • - výchozí je vypnutí ladění s hodnotou "0"( nula).Nemusíte to zapínat, ale pokud ano, více informací naleznete v segmentu odstraňování problémů.

Spuštění

Tento skript zařadí soubor nastavení jako první argument a všechny další argumenty jako "Chevrons" pro hledání( oddělené mezerami).Chevrons jsou "řetězce", které podporují regulární výrazy, které představují alespoň část požadovaného názvu souboru exportu VM.

To znamená, že v nejjednodušší podobě by invokace Xen-phoenix vypadala takto:

. /Xen-phoenix.sh settings.cfg DevTools

Kde ve výše uvedeném případě jsme uvnitř adresáře, který drží skript &soubor nastavení a "Chevron", který skript vyhledá, je "DevTools".To způsobí, že budou importovány všechny soubory v adresáři exportu s řetězcem "DevTools" ve svém názvu.

Složitější příklad může vypadat takto:

. /Xen-phoenix.sh settings.cfg [Aa] [Dd] [Bb] [iI] [Dd] ev [Tt] ools

Kde ve výše uvedeném příkladu jsou soubory obsahujícíslovo "devtools" je napsáno kapitálem "D" a "T" nebo jinými než kapitálovými, stejně jako "AD" a "AD""BI" s nebo bez kapitalizace bude importováno.

Plánování

Jak bylo uvedeno výše, budeme Cron naplánovat spuštění.Předtím, než půjdeme do konfigurace, je vysoce doporučen , který nakonfigurujete již nainstalovaný balíček SSMTP na serveru Xen. Zatímco toto je volitelný krok, uděláte tak "kolektor pro zpětné promývání".Mít takový "sběrač záda" vás může upozornit na věci, které skript není schopen.

Vstupte do editačního režimu cron vydáním:

crontab -e

Pokud jste dodrželi výše uvedené pokyny a chcete přidat nedělní naplánovanou zálohu v 01:31( 1:31), zadejte následující text:

31 01 * *slunce /root/ Xen-phoenix-master / Xen-phoenix.sh /root/ Xen-phoenix master / settings.cfg [Aa] [Dd] DB [Bb] [iI] [Dd] ev [Tt] ools

váš skript a soubor nastavení jsou pod "/root/ Xen-phoenix-master /".

Získejte SendEmail( volitelně)

V minulosti jsme napsali o programu Perl SendEmail, takže zde není třeba opakovat. Stačí říci, že funguje stejným způsobem jako v systému Windows.

Zatímco povolování e-mailu je volitelné, je vysoce doporučeno, protože skript bude schopen:

  • Informovat vás, kdy začal &dokončený běh.
  • Upozorňujeme na jakékoli chyby, které byly schopny rozpoznat a zvládnout.

Stáhněte je na server Xen a extrahujte.

wget http: //caspian.dotconf.net/menu/Software/SendEmail/ sendEmail-v1.56.tar.gz
tar xvzhf sendEmail-v1.56.tar.gz

Poznamenejte si místo, kam jste jej extrahovali. Potřebujete to pro soubor nastavení.

Definování tagu "Odstranit výjimku"( volitelně)

Xen-Phoenix převezme stránku od svého předka( Xen-Pocalypse) a dává vám možnost granulárně vyloučit VM ze systémového odstranění pomocí ovládacího prvku TAG.Chcete-li to provést, musíte definovat nové "Vlastní pole".

Chcete-li to provést, otevřete vlastnosti serveru nebo dokonce VM.Na navigačním podokně vyberte možnost "Vlastní pole".

Pokud se jedná o poprvé, kdy definujete "vlastní pole"( jako v předchozím příkladu), nebudete mít pole "Phoenix_keeper" pro zadávání dat, takže je musíte vytvořit. Chcete-li to provést, klepněte na tlačítko "Upravit vlastní pole" v dialogovém okně, které se objeví, a potom klikněte na tlačítko "Přidat. .."

Vytvořte pole "Text" s názvem "Phoenix_keeper".

Poznámka: Jméno uživatelského pole bylo do skriptu "hard coded", takže se nesmíte odchýlit od výše uvedeného pravopisu, pokud nezměníte příslušný kód.

Po vytvoření pole byste měli vidět:

Zavřete okno. Nyní byste měli vyplnit pole "Phoenix_keeper", jako na obrázku níže.

Nyní stačí vyplnit toto pole poznámkou( jakákoliv poznámka bude), což způsobí, že Xen-phoenix jej při mazání vynechá.

Odstraňování problémů

Zatímco jsem vynaložil mnoho úsilí na to, aby byl skript snadno použitelný a co nejméně odolný, "svět je větší laboratoř".Níže uvedené informace vám mohou pomoci zjistit, jaké jsou vaše potíže.

Protokolování

Všechna "protokolování" shromažďuje hostitel Xen, který spouští skript v mechanismu syslog. To samozřejmě lze vidět pomocí:

less + F /var/log/ zprávy

Hledáte klíčové slovo "Xen-Phoenix".

Poznámka: Společnost Citrix nastavila pro syslog svých serverů politiku uchovávání dvou( 2) dnů.Možná budete chtít to mít na mysli za postmortem. Ladění

Jak je uvedeno v segmentu nastavení souborů, existuje směrnice umožňující ladění.Povolení ladění způsobí, že skript vygeneruje detailní protokolování do konzoly a vyhladí ji ze zasílání e-mailů a skutečného provádění importů, pokud nejsou nastaveny příslušné příznaky. Možné příznaky jsou uvedeny v šabloně nastavení souborů a umožňují vám podrobně definovat, co chcete ladit.

Je mi naděje, že jste nepotřebovali žádné ladění a že získáváte plody své práce:)

Pomyslete na všechny chudoby, nenávist a lži a představte si zničení všeho, co odmítáte. Pomalu z popelu vznikne Phoenix. ..