Jeste li ikada imali potrebu za skupno vratiti svoje Citrix-Xen VMs za rješenje za oporavak od katastrofe (DR) ili samo da biste provjerili funkcioniraju li vaše sigurnosne kopije? HTG objašnjava kako koristiti Xen-Phoenix, besplatnu bash skriptu, za vraćanje VM-a.
Fotografski kredit: Ryan McCurdy preko Compfight CC
Kao što smo spomenuli u "Kako Backup Citrix Xen VMs za besplatno s Xen-pocalypse", jedna od zgodnih stvari u Citrix Xen je da su mnoge njegove značajke subesplatno naplate. Uz to, ako želite značajku "Automatizirano VM zaštitu i oporavak", trebali biste početi plaćati za licencu "Advance". Opet, nije da mi u HTG-u odbacujemo vrijednost stvarnog rješenja za sigurnosno kopiranje, ali ako ste na uskom proračunu, već ste preuzeli VM slike iz hipervisora i trebate način automatizacije vašeg " test restitucija "/" DR refresh ", možda ćete naći Xen-Phoenix savršeno razumno rješenje prije nego što izvršite proračunsku obvezu.
"Slučaj upotrebe": imate nekoliko VM-ova koji zahtijevaju vraćanje. Uvoz u "Xen Center" koristeći desne klikove radi u redu, ali želite da se taj proces automatski i dogodi. Ovaj skript Bash koristi naredbu "XE" za obavljanje svojih dužnosti. XE je Xen sučelje komandne linije (CLI), automatski ekvivalent za izdavanje "desnih klikova" u "Xen centar". Pozvat ćemo skriptu tvrtke Cron koja će dostaviti dio "raspoređivanja". U svom najjednostavnijem obliku, povratni tok je:
* Brisanje svih ponašanja VM-ova može se potpuno isključiti i podržava iznimke (vidi dolje).
Omogućuje pucanje :)
Xen-feniks se može slobodno dobiti od gitara, koristeći se redovitim metodama git-a. S tim rečeno, ako još niste upoznati s gitom, možete preuzeti zip datoteku s ovom vezom. Kako se skripta treba izvoditi na jednom od vaših Xen poslužitelja, trebali biste ga izdvojiti tako da su ovlasti izvršenja sačuvane.
wget https://github.com/aviadra/Xen-phoenix/archive/master.zip
raspakirajte majstor
Iako će gore navedeno funkcionirati, savjetujemo vam da upotrijebite metodu GIT kako biste mogli imati koristi od budućih ažuriranja.
Moramo konfigurirati gdje izvesti VM izvoz.
Dok sam slučajno ubacujući u Citrix Xenu, ustanovio sam da su Depoziti za pohranu (SR) dostupni za upotrebu pod "/ var / run / sr-mount /% UUID%" gdje je UUID jedinstveni identifikator SR, koji se može dobiveno iz GUI-ja.
To znači da možemo koristiti redoviti čarobnjak "Next -> Next -> Finish" za stvaranje "montaže" na željenu lokaciju sigurnosnog kopiranja, a zatim skriptu upotrijebiti tu stazu (kao prilagođenu za ugradnju iz naredbenog retka koji je izvan opsega ovog vodiča).
Da biste izradili novu "montažu", desnom tipkom miša kliknite naziv poslužitelja i odaberite Novi SR.
U ovom ćemo primjeru uputiti Xen na dijeljenje sustava Windows pa odaberite "Dijagram dijeljenja datoteka sustava Windows (CIFS)":
Dovršite sljedeće -> Dalje -> Završi.
Dobiti SR UUID
Da biste dobili SR UUID, jednostavno kliknite njegovo ime u Centru Xen i idite na karticu "Općenito".
Da biste kopirali UUID, jednostavno kliknite desnom tipkom i odaberite "copy".
Uz ove informacije pri ruci spremni ste za uređivanje datoteke postavki.
Projekt Xen-phoenix dolazi u paketu s predloškom datoteke "postavke". Ovaj bi predložak trebao biti uređen kako bi odražavao vašu postavku i prošao kao prvi argument za skriptu.
Datoteka s postavkama označava sljedeće:
Ova skripta preuzima datoteku postavki kao svoj prvi argument i sve ostale argumente kao "Chevrons" za pretraživanje (razdvojene razmakom). Chevrons, su "stringovi", koji podržavaju regularne izraze koji predstavljaju barem dio željenog imena datoteke VM izvoza.
To je, u najjednostavnijem obliku, zazivanje Xen-feniksa izgledalo bi:
./Xen-phoenix.sh settings.cfg DevTools
Gdje se u gornjem slučaju nalazimo u direktoriju koji sadrži skriptu i datoteku s postavkama, a "Chevron" koju skriptu traži je "DevTools". To će uzrokovati uvoz svih datoteka u direktoriju izvoza s nizom "DevTools" u njihovom imenu.
Složeniji primjer može izgledati:
./Xen-phoenix.sh settings.cfg [Aa] [Dd] [Bb] [i] [Dd] ev [Tt] ools
Gdje je u gornjem primjeru uvezen datoteke koje sadrže riječ "devtools" s glavnim "D" i "T" ili ne kapitalnim, kao i "AD" i "BI" s ili bez kapitalizacije.
Kao što je gore navedeno, koristit ćemo Cron za zakazivanje izvršenja. Prije nego što uđemo u konfiguraciju, to jePreporučuje se da konfigurirate već instalirani SSMTP paket na Xen poslužitelju. Iako je to neobavezan korak, to će vam dati kolektora "prašine". Imajući takav "sakupljač prljave prašine" može vas upozoriti na stvari koje skripta ne može.
Uđite u cronov način uređivanja izdavanjem:
crontab-e
Ako ste slijedili gore navedene upute i želite dodati zakazanu rezervnu za nedjelju u 01:31 (1:31), unesite dolje:
31 01 * * sun /root/Xen-phoenix-master/Xen-phoenix.sh/root/Xen-phoenix-master/settings.cfg [Aa] [Dd] DB [Bb] [i] [Dd] ev [Tt ] ools
Gore navedeno je ispravno ako pretpostavljate da su vaša skripta i datoteke postavki pod "/ root / Xen-phoenix-master /".
U prošlosti smo pisali o programu SendEmail perl, pa ovdje nema potrebe ponoviti. Dovoljno je reći, to radi isto na Linuxu kao i na sustavu Windows.
Dok je omogućavanje e-pošte opcionalno, vrlo je preporučljivo jer će skripta moći:
Preuzmite ga na Xen poslužitelj i izvadite.
wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz
tar xvzhf sendEmail-v1.56.tar.gz
Napominjemo mjesto na kojem ste ga izdvojili. Trebat će vam je za datoteku postavki.
Xen-Phoenix preuzima stranicu od svog pretka (Xen-Pocalypse) i daje vam mogućnost da granulirano isključi VM iz brisanja sustava na cijelom sustavu pomoću kontrolnog TAG-a. Da biste to učinili, morate definirati novi "Prilagođeno polje".
Da biste to učinili, otvorite svojstva poslužitelja ili čak VM-a. U navigacijskom oknu odaberite "Prilagođena polja".
Ako prvi put definiramo "prilagođeno polje" (kao u gornjem primjeru), nećete imati polje "Phoenix_keeper" za unos podataka, pa je morate stvoriti. Da biste to učinili, kliknite "Uredi prilagođena polja" u dijaloškom okviru koji se pojavljuje, a zatim kliknite "Dodaj ..."
Napravite polje "Tekst" s nazivom "Phoenix_keeper".
Bilješka: Naziv prilagođenog polja je "hard coded" u skriptu, tako da ne smijete odstupati od gore navedenog pravopisa, osim ako promijenite i relevantni kôd.
Nakon što je polje stvoreno, trebali biste vidjeti:
Zatvori prozor. Sada biste trebali ispuniti polje "Phoenix_keeper", kao na donjoj slici.
Sada, sve što morate učiniti jest popuniti ovo polje s primjedbom (bilo koja opaska će to učiniti), što će uzrokovati da ga Xen Phoenix preskoči kada ga izbrišete.
Dok sam uložio puno truda u izradu skripte kao jednostavan za korištenje i kao što je moguće besprijekorno, "svijet je veći laboratorij". Dolje navedene informacije mogu vam pomoći da utvrdite koji je izvor vaših problema.
sječa drveta
Sve "zapisivanje" prikuplja Xen host koji pokreće skriptu u syslog mehanizmu. To se, naravno, može vidjeti:
manje + F / var / log / poruke
Tražite ključnu riječ "Xen-Phoenix".
Napomena: Citrix je postavio dva (2) dnevna pravila za zadržavanje syslog svojih poslužitelja. Vi svibanj želite zadržati to na umu za postmortems.
otklanjanje grešaka
Kao što je navedeno u segmentu datoteka postavki, postoji smjernica za omogućavanje uklanjanja pogrešaka. Omogućavanje uklanjanja pogrešaka uzrokovat će da skripta isporučuje verzijsko prijavljivanje na konzolu i kastrirati od slanja e-pošte i izvršavanja uvoza, osim ako nisu postavljene i relevantne zastave. Moguće zastavice navedene su u predlošku datoteke postavki i omogućuju vam granularno definiranje onoga što želite ispraviti.
Nadam se da niste trebali nikakvo otklanjanje pogrešaka i žetiš plodove mog rada :)
Sjetite se svega siromaštva, mržnje i laži, i zamislite uništenje svega što prezireš. Polako iz pepela, pojavit će se feniks ...