Úvodná » ako » Ako obnoviť virtuálne počítače Citrix-Xen zdarma s Xen-Phoenix (Bash)

    Ako obnoviť virtuálne počítače Citrix-Xen zdarma s Xen-Phoenix (Bash)

    Mali ste niekedy potrebu hromadne obnoviť svoje Citrix-Xen VM pre riešenie obnovy po havárii (DR), alebo len na otestovanie, či vaše zálohy fungujú? HTG vysvetľuje, ako používať Xen-Phoenix, free bash script, pre obnovenie VM.

    Foto kredit: Ryan McCurdy cez Compfight cc

    Ako sme spomenuli v "Ako zálohovať Citrix Xen VM zdarma s Xen-pocalypse", jednou z pekných vecí v Citrix Xen je, že mnohé z jeho vlastností sú zadarmo poplatok. S tým povedal, ak chcete funkciu "Automatická ochrana a obnovenie VM", musíte začať platiť za licenciu "Advance". Opäť platí, že my v spoločnosti HTG odmietame hodnotu skutočného záložného riešenia, ale ak ste na malom rozpočte, už ste získali obrazy VM z hypervízora a potrebujete spôsob, ako automatizovať " test obnoviť "/" DR obnoviť "postupy, môžete Xen-Phoenix považovať za dokonale rozumné riešenie skôr, ako urobíte rozpočtový záväzok.

    Prehľad

    "Použitie": Máte niekoľko VM, ktoré vyžadujú obnovenie. Import do centra Xen pomocou pravého kliknutia funguje v poriadku, ale chcete, aby sa tento proces uskutočnil automaticky a podľa plánu. Tento Bash skript používa príkaz "XE" na vykonávanie svojich povinností. XE je rozhranie príkazového riadku Xen (CLI), ktoré je automatickým ekvivalentom pre vydávanie pravých kliknutí v centre Xen. Zavoláme skript z Cronu, ktorý dodá časť "plánovanie". V najjednoduchšej forme je obnovovací tok:

    • vymazať všetky * existujúce VM na serveri
    • Importujte VM zo súborov v mieste zálohovania.
    • Overte, či sú všetky virtuálne počítače funkčné tak, že ich aktivujete jeden po druhom a hľadáte srdcový nástroj hosťovských nástrojov.
    • V prípade, že bol objavený tlkot srdca, alebo keď bol dosiahnutý časový limit, vypnite VM.

    * Chovanie všetkých VM môžete úplne vypnúť a podporuje výnimky (pozri nižšie).

    Nechajte sa prasknúť :)

    Získajte skript

    Xen-phoenix možno voľne získať z githubu pomocou bežných git metód. S tým povedal, ak nie ste verte v git ešte, môžete chytiť zip súbor s týmto odkazom. Keďže skript potrebuje bežať na jednom z vašich Xen serverov, mali by ste ho extrahovať tam, aby sa zachovali povolenia na vykonanie.

    wget https://github.com/aviadra/Xen-phoenix/archive/master.zip
    unzip master

    Zatiaľ čo by to fungovalo, doporučujeme použiť metódu GIT, aby ste mohli využívať budúce aktualizácie.

    Miesto vývozu

    Musíme nakonfigurovať, odkiaľ exportovať VM.

    Pri náhodnom pokuse v Citrix Xen som zistil, že Storage Repositories (SR) sú k dispozícii pre použitie pod "/ var / run / sr-mount /% UUID%", kde UUID je jedinečný identifikátor SR. získané z grafického používateľského rozhrania.

    To znamená, že môžeme použiť bežný sprievodca "Next -> Next -> Finish" na vytvorenie "mount" na požadované miesto zálohovania a potom použite skript túto cestu (tak, ako je to vhodné pre zálohovanie s pripojením z príkazového riadku, ktorý je mimo rozsah tejto príručky).

    Ak chcete vytvoriť novú "pripojenie", kliknite pravým tlačidlom myši na názov servera a vyberte položku Nový SR.

    V tomto príklade ukážeme Xen na zdieľanie systému Windows, preto vyberte "Zdieľanie súborov Windows (CIFS)":

    Vyplňte položku Nasledujúci -> Nasledujúci -> Dokončiť.

    Získajte UUID SR

    Ak chcete získať identifikátor UUID SR, jednoducho kliknite na jeho názov v Centre Xen a prejdite na kartu "Všeobecné".

    Ak chcete skopírovať identifikátor UUID, jednoducho kliknite naň pravým tlačidlom a zvoľte "kopírovať".

    S týmito informáciami ste pripravení upraviť súbor s nastaveniami.

    Nakonfigurujte súbor Nastavenia

    Projekt Xen-Phoenix je dodávaný s šablónou súboru "nastavenia". Táto šablóna by mala byť upravená tak, aby odrážala vaše nastavenie a odovzdala ako prvý argument skript.

    Súbor s nastaveniami označuje nasledujúce:

    • Umiestnenie exportu zdroja - Ak ste sa k tomuto bodu riadili sprievodcom, stačí nahradiť% UUID% len s SR ako to bolo získané zhora.
    • Umiestnenie služby SendEmail - ak ste sa rozhodli povoliť e-mail, musíte zadať miesto, kde ste tu extrahovali perlový spustiteľný súbor.
    • Verifikátor - Kontroluje postup overovania po obnovení. Toto je štandardne povolené, pretože úspešné "obnovenie na úrovni súborov" nemusí nevyhnutne znamenať funkčné VM.
    • Server_prep - Toto riadi predbežnú obnovu vymazanie všetkých VM na serveri DR. Toto je štandardne povolené, pretože sa predpokladá, že server DR je pre tento účel dedikovaným serverom. Ak potrebujete server VM, ktorý beží na tomto serveri, aby sa neodstránil, nakonfigurujte ho na vylúčenie. Ak toto správanie nie je vhodné pre vašu situáciu, jednoducho ho úplne deaktivujte.
    • E-mailové detaily - Ak ste povolili e-mail, musíte definovať podrobnosti ako: To, From, Servername / IP & etc '.
    • ladenie  - Predvoleným nastavením je vypnutie ladenia s hodnotou "0" (nula). Nemali by ste to zapínať, ale ak to urobíte, v sekcii na riešenie problémov sa zaznamená viac informácií.

    poprava

    Tento skript preberá súbor s nastaveniami ako prvý argument a všetky ďalšie argumenty ako "Chevrons", ktoré hľadajú (oddelené medzerami). Chevrons sú "reťazce", ktoré podporujú regulárne výrazy, ktoré predstavujú aspoň časť požadovaného názvu súboru exportu VM.

    To znamená, že vo svojej najjednoduchšej podobe by vyvolanie Xen-phoenixu vyzeralo takto:

    ./Xen-phoenix.sh settings.cfg DevTools

    Kde v prípade vyššie, sme v adresári, ktorý drží skript & nastavenia súboru a "Chevron" skript bude hľadať je "DevTools". To spôsobí importovanie všetkých súborov v exportnom adresári s reťazcom "DevTools" v ich názve.

    Zložitejší príklad môže vyzerať takto:

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

    Ak vo vyššie uvedenom príklade budú importované súbory, ktoré obsahujú slovo "devtools" s kapitálom "D" a "T", alebo iné ako kapitálové, ako aj "AD" a "BI".

    plánovanie

    Ako bolo uvedené vyššie, použijeme program Cron na naplánovanie vykonania. Predtým, než prejdeme do konfigurácie, je to vysoko odporúčané že konfigurujete už nainštalovaný balík SSMTP na serveri Xen. Aj keď je to voliteľný krok, tak vám prinesie kolektor "backwash". Takýto "zberač spätného prúdu" vás môže upozorniť na veci, ktoré skript nedokáže.

    Vstupte do režimu úpravy cron tým, že vydáte:

    crontab -e

    Ak ste postupovali podľa vyššie uvedených pokynov a chcete pridať naplánovanú zálohu na nedeľu o 01:31 (1:31), zadajte nižšie:

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

    Vyššie uvedené je správne za predpokladu, že váš skript a súbor s nastaveniami sú pod "/ root / Xen-phoenix-master /".

    Získať SendEmail (voliteľné)

    Napísali sme o programe Perl SendEmail v minulosti, takže tu nie je potrebné opakovať. Stačí povedať, funguje to rovnako ako v systéme Linux ako v systéme Windows.

    Zatiaľ čo e-mail je voliteľný, odporúča sa, pretože skript bude môcť:

    • Informujte vás, keď začal a prebiehal.
    • Upozorňujeme vás na akékoľvek chyby, ktoré dokázal zistiť a zvládnuť.

    Stiahnite ho 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

    Všimnite si miesto, do ktorého ste ju extrahovali. Budete to potrebovať pre súbor s nastaveniami.

    Definovanie značky "Vymazať výnimku" (voliteľné)

    Xen-Phoenix prevezme stránku od svojho predkovia (Xen-Pocalypse) a poskytuje vám možnosť granulárne vylúčiť VM zo systémového odstránenia pomocou kontrolného TAG. Aby ste to urobili, musíte definovať nové "Vlastné pole".

    Ak to chcete urobiť, otvorte vlastnosti servera alebo dokonca VM. Na navigačnej table vyberte "Vlastné polia".

    Ak ste prvýkrát definovali "vlastné pole" (ako v príklade vyššie), nebudete mať pole "Phoenix_keeper" na zadávanie údajov, takže ho musíte vytvoriť. Ak to chcete urobiť, kliknite na "Upraviť vlastné polia" v dialógovom okne, ktoré sa objaví, potom kliknite na "Pridať ..."

    Vytvorte pole typu "Text" s názvom "Phoenix_keeper".

    Poznámka: Názov vlastného poľa bol "skriptovaný" do skriptu, takže sa nesmiete odchýliť od vyššie uvedeného pravopisu, pokiaľ nezmeníte príslušný kód.

    Po vytvorení poľa by ste mali vidieť:

    Zavrieť okno. Teraz by ste mali vyplniť pole "Phoenix_keeper", ako na obrázku nižšie.

    Všetko, čo musíte urobiť, je vyplniť toto pole poznámkou (akákoľvek poznámka bude robiť), čo spôsobí, že Xen-phoenix ho pri vymazaní vynechá.

    Riešenie problémov

    Zatiaľ čo som vynaložil veľa úsilia na to, aby sa scenár stal ľahko použiteľným a čo najviac odolný, "svet je väčší laboratórium". Nasledujúce informácie vám môžu pomôcť zistiť, aký je zdroj vašich problémov.

    protokolovanie

    Všetky "protokolovanie" zhromažďuje hostiteľ Xen, ktorý spúšťa skript v mechanizme syslog. Toto, samozrejme, možno vidieť s:

    menej + F / var / log / správy

    Hľadáte kľúčové slovo "Xen-Phoenix".

    Poznámka: Citrix nastavila dva (2) dni uchovávanie pravidiel pre syslog svojich serverov. Možno budete chcieť mať to na pamäti pre postmortems.

    ladenie

    Ako je uvedené v segmente súborov nastavení, existuje smernica, ktorá umožňuje ladenie. Povolenie ladenia spôsobí, že skript vygeneruje detailné zaznamenávanie do konzoly a vykrúca ju zo zasielania e-mailov a skutočného vykonávania importu, pokiaľ nie sú tiež nastavené príslušné príznaky. Možné príznaky sú uvedené v šablóne súborov s nastaveniami a umožňujú Vám detailne definovať, čo chcete debugovať.

    Dúfam, že ste nepotrebovali žiadne ladenie a že ste plodili plody svojej práce :)


    Len sa zamyslite nad všetkou chudobou, nenávisťou a lžami a predstavte si zničenie všetkého, čo pohrdáte. Pomaly z popola vyrastie fénix ...