Jeste li ikada trebali napraviti sigurnosnu kopiju svojih Citrix Xen virtualnih strojeva (VM), ali niste htjeli to učiniti? HTG ima baš bash skriptu za vas s Xen-pocalypse.



Autor slike h.koppdelaney , Zaglavio u Custom i Hotfortech .

Jedna od lijepih stvari u Citrix Xen-u je to što mnoge njegove značajke jesu besplatno naplate. Uz to, ako želite značajku automatizirane zaštite i oporavka VM-a, morali biste početi plaćati unaprijednu licencu. Čak i tada plaćate samo sigurnosne kopije na razini diska, koje nisu dovoljne za mnoge vrste radnih opterećenja kao što su aktivni direktorij, baze podataka i sl. Da biste to prevladali, možda ćete htjeti snimku uživo memorije i vraćanje, što može spremiti cijelo stanje stroja , uključujući sadržaj RAM-a. Međutim, ta je značajka dio izdanja Enterprise i Platinum, koji su još skuplji. Nije da mi u HTG-u odbacujemo vrijednost pravog softvera za sigurnosno kopiranje, ali ako ste na malom proračunu i nemate ništa protiv zastoja u operaciji sigurnosnog kopiranja, možda ćete smatrati da je Xen-pocalypse savršeno razumno rješenje prije nego što preuzmete proračunsku obvezu.

Pregled

Slučaj korištenja: imate nekoliko VM-ova koji zahtijevaju sigurnosnu kopiju. Isključivanje VM-a i izvoz kao datoteke iz Xen centra pomoću desnih klikova funkcionira u redu, ali želite da se ovaj proces odvija automatski i prema rasporedu. Ova Bash skripta koristi naredbu XE za obavljanje svojih dužnosti. XE je Xen sučelje naredbenog retka (CLI), automatski ekvivalent za izdavanje desnih klikova u Xen centru. Pozvat ćemo skriptu iz Cron koji će opskrbiti dio rasporeda. U svom najjednostavnijem obliku, tijek sigurnosne kopije je:

  • Isključite ciljni VM.
  • Izvezite VM kao datoteku na mjesto sigurnosne kopije.
  • Ako je VM bio uključen, prije početka sigurnosnog kopiranja, bit će ponovno uključen.

Hajde da krenemo :)

Nabavite skriptu

Xen-pokalipsa može se slobodno dobiti s githuba , koristeći uobičajene git metode. Uz to rečeno, ako niste upućen u git ipak, možete preuzeti zip datoteku s ovaj link . Budući da se skripta mora izvoditi na jednom od vaših Xen poslužitelja, trebali biste je tamo izdvojiti kako bi se sačuvala dopuštenja za izvršavanje.

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

Iako bi gore navedeno funkcioniralo, savjetujemo vam da koristite GIT metodu, kako biste imali koristi od budućih ažuriranja.

Dobiti SendEmail (izborno)

Pisali smo o SendEmail perl programu u prošlosti , tako da ovdje nema potrebe ponavljati. Dovoljno je reći da radi na isti način na Linuxu kao i na Windowsima.

Oglas

Iako je omogućavanje e-pošte neobavezno, toplo se preporučuje jer će tada skripta moći:

  • Obavijestiti vas kada je počeo i završio s radom.
  • Upozorava vas na sve pogreške koje je uspio otkriti i riješiti.
  • Obavijestite o rezervnim diskvalifikacijama zbog problema s prostorom. (Ovo ponašanje se može onemogućiti ako se ne želi)

Preuzmite ga na Xen poslužitelj i raspakirajte.

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

Zabilježite mjesto na koje ste ga izdvojili. Trebat će vam za datoteku postavki.

kako stisnuti ethernet kabel

Definiranje oznaka

Citrix Xen vam daje mogućnost konfiguriranja prilagođenih polja za mogućnosti filtriranja. Napravit ćemo Polja i zatim ih popuniti informacijama koje koristi Xen-pocalypse. Xen-pocalypse prepoznaje 3 kontrolna TAG-a koji određuju naziv oznake za sigurnosnu kopiju i odnos roditelj-dijete. Ako ne namjeravate koristiti metodu unosa datoteke, MORATE stvoriti barem polje za naziv oznake sigurnosne kopije.

Da biste to učinili, otvorite svojstva poslužitelja ili čak VM-a. U navigacijskom oknu odaberite Prilagođena polja.

Ako je ovo prvi put da definirate odnos (kao u gornjem primjeru), nećete imati polja za unos podataka pa ih morate kreirati. Da biste to učinili, kliknite na Uredi prilagođena polja u dijaloškom okviru koji se pojavi, kliknite na Dodaj...

Oglas

Napravite tri (3) polja za vrstu teksta. Jedan će se zvati BackupTAG, a drugi roditelj i djeca.

Bilješka: Nazivi prilagođenih polja su tvrdo kodirani u skriptu, tako da ne Smijete odstupiti od gore navedenog pravopisa, osim ako ne promijenite i relevantni kod.

Nakon što su stvorena sva polja, trebali biste vidjeti:

Zatvorite prozor. Sada biste trebali imati polja BackupTAG, Roditelj i Djeca koja treba popuniti, kao na slici ispod.

Sada sve što trebate učiniti je odrediti koji VM-ovi pripadaju kojem BackupTAG-u.
Na primjer, u tvrtki u kojoj je skripta rasla, imali smo VM-ove koji su trebali biti sigurnosno kopirani tjedno u četvrtak i petak, što je raspored za naše Atlassian VM-ove proizvoda i neke koje je trebalo sigurnosno kopirati samo jednom mjesečno. Tako je naš pregled izgledao ovako:

Gdje je na primjer tjedno-pet bio tekst koji smo unijeli u prilagođeno polje BackupTAG. Uredan ha? :)

Roditelji i djeca (opcionalno)

Prava ljepota ovog scenarija je u tome što podržava odnose roditelja i djece. Odnosno, moguće je postaviti popis podređenih VM-ova koji će biti isključeni i sigurnosno kopirani prije roditeljskog, te da će se ta djeca ponovno uključiti tek nakon što roditelj završi sa sigurnosnom kopijom i ponovno je uključen. Ovo je korisno u slučajevima kada će isključivanje roditeljskog VM-a uzrokovati da usluga u djetetu postane nedostupna. Takva stvar bi značila da bi usluga na dječjem VM-u bila nedostupna dvaput, jednom za proces sigurnosne kopije djeteta i jednom za roditeljski. Stvaranje ovog odnosa prevladava taj problem.

Oglas

Na primjer, svi naši Atlassian VM-ovi koristili su jedan VM baze podataka (DB) koji je također bio postavljen za sigurnosno kopiranje. Dakle, primjećujući da je DB VM roditelj drugim VM-ovima, može se osigurati ispravan redoslijed gašenja -> sigurnosno kopiranje -> pokretanje.

U vrijeme pisanja ovog teksta, ova funkcija ima nekoliko upozorenja:

  1. Imena VM-a koji će imati takav odnos ne mogu sadržavati razmake. Morat ćete ukloniti razmake iz imena vaših VM-a, jer će oni biti razgraničeni razmakom, kao u primjeru ispod.
  2. Može biti samo jedan roditelj. Određivanje više od jednog nije ni planirano, a da ne spominjemo testirano.

Da biste stvorili ovaj odnos, idite u svojstva VM-a. Ako je ovo roditelj, napiši tko su mu djeca, a ako je dijete, napiši tko mu je roditelj. Na primjer:

pratiti temperaturu računala windows 10

Napomena: Neodređivanje Roditelja za dijete može uzrokovati pokretanje djeteta prije nego što njegov roditelj bude spreman i može uzrokovati dvostruku sigurnosnu kopiju.

Metoda FILE (izborno)

Iz povijesnih razloga, Xen-pocalypse također podržava dobivanje sigurnosne kopije popisa VM-ova kao tekstualne datoteke. Dok je kod još uvijek tamo, funkcionalnost je vrlo visoka niži na TAGs metodu i stoga se ne preporučuje. Uz to rečeno, ako iz nekog razloga više volite koristiti metodu popisa, vrijede sljedeća ograničenja:

  1. Nazivi VM-a ne mogu sadržavati nikakve razmake ili posebne znakove.
  2. Može postojati samo jedno ime VM-a po retku.
  3. Prazni redovi nisu dopušteni.

Da biste generirali popis, kopirajte naziv VM-a iz Xen centra ili izvršite na Xen hostu:

xe vm-list | grep name-label | awk '{ print }' | sort

Kopirajte gornji popis u običnu tekstualnu datoteku.

Mjesto sigurnosne kopije

Dok sam nasumično brčkao po Citrix Xen-u, otkrio sam da je Spremišta za pohranu (SR-ovi) su dostupni za korištenje pod /var/run/sr-mount/%UUID% gdje je UUID jedinstveni identifikator SR-a, koji se može dobiti iz GUI-ja.

Oglas

To znači da možemo koristiti uobičajeni Sljedeće -> Sljedeće -> Završi čarobnjaka za stvaranje montaže na željeno mjesto sigurnosne kopije, a zatim da skripta koristi taj put (za razliku od petljanja s montiranjem iz naredbenog retka ), ali to je izvan dosega ovog vodiča.

Za stvaranje novog montiranja, desnom tipkom miša kliknite naziv poslužitelja i odaberite New SR.

U ovom ćemo primjeru ukazati Xena na a windows dijeli , pa odaberite Windows File Sharing (CIFS):

Dovršite Sljedeće -> Sljedeće -> Završi.

Dobijte UUID SR-a

Da biste dobili UUID SR-a, jednostavno kliknite na njegovo ime u Xen centru i idite na karticu Općenito.

Da biste kopirali UUID, jednostavno ga kliknite desnom tipkom miša i odaberite kopiju.

Oglas

S ovim informacijama pri ruci, spremni ste za uređivanje datoteke postavki.

Konfigurirajte datoteku postavki.

Projekt Xen-pocalypse dolazi u paketu s predloškom datoteke postavki. Ovaj predložak treba urediti tako da odražava vaše postavke i proslijediti ga kao prvi argument skripti. Datoteka postavki označava sljedeće:

Način za dobivanje VM-ova za sigurnosno kopiranje – Zadana metoda je TAG. Možete promijeniti ovo u FILE, ali to se ne preporučuje.

Lokacija rezervnog odredišta – Ako ste slijedili vodič do ove točke, morate samo zamijeniti %UUID% sa SR-om kako je dobiven odozgo.

Lokacija SendEmail – Ako ste se odlučili za omogućavanje e-pošte, ovdje morate unijeti gdje ste izdvojili izvršnu datoteku perl.

Detalji e-pošte – Opet, ako ste omogućili e-poštu, morate definirati pojedinosti kao što su: Prima, Od, Ime poslužitelja/IP i itd.

Oglas

Kompresija – Ovo je prema zadanim postavkama postavljeno na Ne, jer će, iako se omogući, proizvesti manja sigurnosna kopija, također će uzrokovati da se postupak sigurnosne kopije izvodi znatno dulje.

Provjerite ima li slobodnog prostora na odredištu – Ovo će provjeravati skriptu da pravljenje sigurnosne kopije VM-a neće uzrokovati pad slobodnog prostora na lokaciji sigurnosne kopije ispod 10 GB. To je učinjeno kako bi se osigurala sigurnosna kopija najvećeg broja VM-ova umjesto samo jednog vrlo velikog VM-a. Izračun se vrši korištenjem ukupne veličine diska svih HD-ova povezanih s VM-om.

Otklanjanje pogrešaka – Zadana postavka je da se otklanjanje pogrešaka isključi s vrijednošću 0 (nula). Ne biste trebali to uključiti, ali ako to učinite, više informacija bit će navedeno u segmentu za rješavanje problema.

pristup icloud pošti iz preglednika

Izvršenje/Raspored

U svom najjednostavnijem obliku, invokacija Xen-pokalipse bi izgledala ovako:

./Xen-backup.sh settings.cfg weekly-fri

Gdje se u gornjem slučaju nalazimo unutar direktorija koji sadrži skriptu i datoteku postavki. Oznaka koju će skripta tražiti je tjedno-pet.

Kao što je gore navedeno, koristit ćemo Cron da zakaže izvršenje. Prije nego što krenemo u konfiguraciju, jest Preporučuje se da ti konfigurirajte već instalirani SSMTP paket na vašem Xen poslužitelju. Iako je ovo izborni korak, time ćete dobiti kolektor za povratno ispiranje. Posjedovanje takvog sakupljača povratnog ispiranja može vas upozoriti na stvari koje skripta nije u stanju.

Uđite u cron-ovo uređivanje više izdavanjem:

crontab -e

Ako ste slijedili gornje upute i želite dodati planiranu sigurnosnu kopiju za petak u 18:01 (18:01), unesite sljedeće:

01 18 * * fri /root/Xen-pocalypse-master/Xen_Backup.sh /root/Xen-pocalypse-master/settings.cfg weekly-fri

Oglas

Gore navedeno je točno pod pretpostavkom da su vaša skripta i datoteka s postavkama pod /root/Xen-pocalypse-master/.

Rješavanje problema

Iako sam uložio mnogo truda da skriptu učinim što jednostavnijim za korištenje i sigurnijim, Svijet je veći laboratorij. Informacije u nastavku mogu vam pomoći da utvrdite što je izvor svoje nevolje .

Napredak

Možda ćete htjeti upotrijebiti ovu jednu liniju za brzo praćenje svih zadataka u tijeku, da vidite napreduju li uopće ili su zapravo zapeli.

while [ -e /dev/null ]; do for VM in '$( xe task-list | grep uuid | awk '{print }' )' ; do xe task-param-get param-name=progress uuid=$VM ;sleep 1; done; done

Da biste prestali gledati, upotrijebite Ctrl+C za zaustavljanje while petlje.

Sječa

Svu evidenciju prikuplja Xen host koji izvodi skriptu u syslog mehanizam . Ovo se naravno može vidjeti sa:

less +F /var/log/messages

Tražite ključnu riječ Xen-pokalipsa.

Napomena: Citrix je postavio politiku zadržavanja od dva (2) dana za syslog svojih poslužitelja. Možda biste to htjeli imati na umu za obdukcije.

pogledajte prethodnu verziju web stranice

Otklanjanje pogrešaka

Oglas

Kao što je navedeno u segmentu datoteke postavki, postoji naredba za omogućavanje otklanjanja pogrešaka. Omogućavanje otklanjanja pogrešaka dovest će do toga da skripta šalje opširne zapise na konzolu i kastrira je od slanja e-pošte i stvarnog izvođenja izvoza, osim ako su također postavljene relevantne zastavice. Moguće zastavice su zabilježene u predlošku datoteke postavki i omogućuju vam da precizno definirate što želite otkloniti pogreške.

Nadam se da vam nije bilo potrebno otklanjanje grešaka i da ubirete plodove mog rada :)


Udari, moj čovječe, uskoro ćeš postati deseptikon broj jedan...

PROČITAJTE SLJEDEĆE
  • › Kako besplatno vratiti Citrix-Xen VM pomoću Xen-Phoenixa (Bash)
  • › Što je MIL-SPEC zaštita od pada?
  • › Mapa računala je 40: Kako je Xerox Star stvorio radnu površinu
  • › Funkcije u odnosu na formule u Microsoft Excelu: u čemu je razlika?
  • Cyber ​​ponedjeljak 2021.: Najbolje tehničke ponude
  • › 5 web stranica koje svaki korisnik Linuxa treba označiti
  • › Kako pronaći svoj Spotify omotan 2021