Paveikslėlis - h.koppdelaney, Įstrigo "Custom" ir "Hotfortech".
"Citrix Xen" yra vienas iš geriausių dalykų, nes daugelis jo funkcijų yra Laisvas mokestis. Tai sakydamas, jei norite "Automatinės VM apsaugos ir atkūrimo" funkcijos, turėtumėte pradėti mokėti už "Advance" licenciją. Net ir tuomet mokate tik už disko lygio atsargines kopijas, kurios nepakanka daugeliui darbo krūvio rūšių, pvz., "Active directory", "Duomenų bazės" ir kt. Norėdami įveikti tai, galbūt norėsite "Live memory snapshot and revert", kuris gali išsaugoti visą mašinos būsena, įskaitant RAM turinį. Tačiau ši funkcija yra "Enterprise" ir "Platinum" leidimų, kurie yra dar brangesni, dalis. Tai nėra tas, kad mes, HTG, atmetame tikros atsarginės programinės įrangos vertę, tačiau jei esate griežta biudžeto ir nesuprantate kai kurių atsarginių kopijų veikimo prastovų, Xen-pocalypse gali būti visiškai pagrįstas sprendimas prieš priimdami biudžetą.
Apžvalga
"Naudojimo atvejis": turite keletą VM, kuriems reikia atsarginės kopijos. "VM išjungimas ir eksportas kaip failas" iš "Xen Centro", naudojant dešininius spustelėjimus, gerai veikia, bet jūs norite, kad šis procesas vyktų automatiškai ir pagal tvarkaraštį. Šis Bash scenarijus naudoja komandą "XE", kad atliktų savo pareigas. XE yra "Xen" komandinės eilutės sąsaja (CLI), automatinis ekvivalentas "dešinių paspaudimų" išdavimui "Xen Centre". Mes paskambinsime Cron scenarijų, kuris pateiks "planavimo" dalį. Paprastesnėje formoje atsarginis srautas yra:
- Išjunkite tikslinį VM.
- Eksportuokite VM kaip failą atsarginei vietai.
- Jei VM buvo įjungtas, prieš pradedant atsarginę kopiją jis bus grąžintas.
Lets get cracking:)
Gauk scenarijų
"Xen-pocalypse" galima laisvai gauti iš "github", naudojant įprastus git metodus. Tai sakydamas, jei dar nesate susipažinę su git, galite susikurti zip failą su šia nuoroda. Kadangi scenarijus turi būti paleistas viename iš jūsų "Xen" serverių, jį reikia išgauti taip, kad būtų išlaikyti vykdymo leidimai.
wget https://github.com/aviadra/Xen-pocalypse/archive/master.zip unzip master
Nors pirmiau minėti veiksmai veiks, rekomenduojama naudoti GIT metodą, kad galėtumėte pasinaudoti būsimais atnaujinimais.
Gauti "SendEmail" (neprivaloma)
Praeityje mes parašėme apie "SendEmail perl" programą, todėl čia nereikia pakartoti. Pakanka pasakyti, kad tai veikia taip pat ir "Linux", kaip ir "Windows".
Nors įgalinant el. Laišką neprivaloma, tai labai rekomenduojama, nes tada scenarijus galės:
- Informuokite jus, kai jis bus pradėtas ir baigtas.
- Praneša apie bet kokias klaidas, kurias ji galėjo aptikti ir tvarkyti.
- Informuokite apie atsarginių teisių atėmimą dėl kosmoso problemų. (Šis elgesys gali būti išjungtas, jei neprireiks)
Atsisiųskite ją į "Xen" serverį ir išskleiskite.
wget https://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz tar xvzhf sendEmail-v1.56.tar.gz
Atkreipkite dėmesį į vietą, kurioje ją išvedėte. Jums tai reikės nustatymų rinkmenai.
Žymių apibrėžimas
"Citrix Xen" suteikia galimybę konfigūruoti "tinkintus laukus" filtruoti galimybes. Mes sukursime laukus ir užpildysime informaciją, kurią naudos Xen-pocalypse. "Xen-pocalypse" atpažįsta 3 valdymo gaires, kurios žymi atsarginės kopijos žymą ir tėvų pavadinimą - vaiko santykius. Jei nenorite naudoti failo įvesties metodo, PRIVALOTE sukurti bent atsarginės žymos pavadinimo lauką.
Norėdami tai padaryti, atidarykite serverio ar net VM savybes. Navigacijos srityje pasirinkite "Tinkinti laukai".
Pastaba: Pasirinktinių laukų pavadinimai buvo "kietu būdu užkoduoti" į scenarijų, taigi jūs neturite nukrypti nuo aukščiau esančio rašybos, nebent jūs pakeisite atitinkamą kodą.
Kai visi laukai sukurti, turėtumėte pamatyti:
Dabar viskas, ko jums reikia padaryti, yra nurodyti, kurie VM priklauso "BackupTAG". Pavyzdžiui, kompanijoje, kurioje scenarijus buvo auginamas, turėjome VM, kurie ketvirtadienį ir penktadienį turėjo būti saugomi kiekvieną savaitę, mūsų "Atlassian" produkto VM tvarkaraštis ir kai kurie, kurie turėjo būti atsarginę kopiją tik kas mėnesį. Taigi mūsų apžvalga atrodė taip:
Pavyzdžiui, "weekly-fri" buvo tekstas, kurį įvedėme į "BackupTAG" "Custom Field". Nejaugi tu?:)
Tėvai ir vaikai (neprivaloma)
Tikrasis šio scenarijaus grožis yra tas, kad palaiko "tėvų" "vaiko" santykius. Tai reiškia, kad yra galimybė nustatyti "vaiko" VM sąrašą, kuris būtų išjungtas ir paremtas prieš pat tėvą, ir kad šie vaikai bus grąžinami tik tada, kai tėvas baigs atsarginę kopiją ir bus grąžintas atgal onTai naudinga tais atvejais, kai išjungus tėvų VM paslaugas vaikas taptų nepasiekiamas. Toks dalykas reikštų, kad paslauga vaiko VM nebus pasiekiama du kartus, vieną kartą vaiko atsarginės kopijos procesui ir vieną kartą tėvams. Šių santykių kūrimas įveikia šią problemą.
Pavyzdžiui, visi mūsų "Atlassian" VM naudojo vieną duomenų bazės (DB) VM, kuri taip pat buvo sukurta atsargine kopija. Taigi, pažymėdama, kad DB VM yra "Patronuojantis" su kitais VM, galima užtikrinti tinkamą išjungimo -> atsarginės kopijos -> paleidimo tvarką.
Šio rašymo metu ši funkcija turi kelis įspėjimus:
- VM pavadinimuose, kuriuose turi būti tokie santykiai, negali būti tarpų. Turėsite pašalinti tarpus iš savo VM vardų, nes jie bus išdėstyti erdvėje, kaip nurodyta toliau pateiktame pavyzdyje.
- Gali būti tik vienas iš tėvų. Nurodant daugiau nei vieną net nėra planuojamas, jau nekalbant apie išbandytą.
Norėdami sukurti šį ryšį, eikite į VM savybes. Jei tai yra "tėvas", rašykite, kas yra jo vaikai ir ar tai yra "vaikas", rašykite, kas jo tėvas yra. Pavyzdžiui:
FILE metodas (neprivaloma)
Dėl istorinių priežasčių "Xen-pocalypse" taip pat palaiko, kad būtų galima susieti VM sąrašą kaip teksto failą. Nors "kodas" vis dar ten, funkcijos yra gerokai mažesnės nei TAG metodas, todėl nerekomenduojama. Tai sakydamas, jei dėl kokių nors priežasčių norite naudoti sąrašo metodą, taikomi šie apribojimai:
- VM pavadinimuose negali būti jokių tarpų ar specialių simbolių.
- Kiekvienoje eilutėje gali būti tik vienas VM vardas.
- Tuščios eilutės neleidžiamos.
Norėdami generuoti sąrašą, nukopijuokite VM vardą iš "Xen" centro arba vykdykite "Xen" kompiuteriu:
xe vm-list | grep name-label | awk
'{ print $4 }' | sort
Kopijuokite aukščiau esantį sąrašą į įprastą teksto failą.
Atsarginės vietos
Nors atsitiktinai bandydavau "Citrix Xen", radau, kad "/ var / run / sr-mount /% UUID%" yra saugyklų saugyklos (SR), kuriose UUID yra unikalus SR identifikatorius, kuris gali būti gaunamas iš GUI.
Tai reiškia, kad mes galime naudoti įprastą vediklį "Kitas -> Kitas -> Baigti", kad sukurtumėte norimą atsarginę kopiją, tada scenarijų naudodamiesi šia taktika (kaip numatyta, kad pakliuvom su montavimo iš komandinės eilutės), bet atlikite todėl šis vadovas nėra taikomas.
Norėdami sukurti naują "mount", dešiniuoju pelės mygtuku spustelėkite serverio pavadinimą ir pasirinkite New SR.
Gaukite "SR" UUID
Norint gauti SR UID, tiesiog spustelėkite jo pavadinimą Xen centre ir eikite į skirtuką "Bendra".
Konfigūruoti "Nustatymų" failą.
"Xen-pocalypse" projektas pateikiamas kartu su "parametrų" failo šablonu. Šis šablonas turėtų būti redaguojamas, kad atitiktų jūsų nustatymus ir pateiktas kaip pirmasis scenarijaus argumentas. Nustatymų rinkmenoje nurodoma:
Metodas norint gauti atsargines VM - numatytasis metodas yra TAG. Galite pakeisti į FILE, tačiau tai nerekomenduojama.
Vieta atsarginės paskirties vietos. Jei laikotės šio punkto vadovo, turite tik pakeisti% UUID% SR, nes jis buvo gautas iš viršaus.
"SendEmail" buvimo vieta - Jei nusprendėte įjungti el. Pašto adresą, turite įvesti čia išplėstą perl vykdomąjį failą.
Išsami el. Pašto informacija -Vėlgi, jei įgalinote el. Paštą, turite nurodyti tokias detales kaip: Nuo, Nuo, Serverio vardas / IP ir tt.
Suspaudimas - Numatyta, kad jis yra "Ne", nes, leidžiant tai, bus sukurtas mažesnis atsarginės kopijos failas, dėl to atsarginės kopijos apdorojimas taip pat gali užtrukti žymiai ilgiau.
Patikrinkite laisvą erdvę paskirties vietoje. Tai turės scenarijaus patikrinimą, ar VM atsarginė kopija nepadarys atsarginės vietos laisvos vietos, kad sumažėtų iki 10 GB. Tai padaryta siekiant užtikrinti, kad dauguma VM būtų paremti vietoj tik vieno labai didelio VM. Apskaičiuojama naudojant bendrą visų disko dydžių, susietų su VM, bendras disko dydis.
Derinimas - Numatyta, kad derinimas būtų išjungtas, kai vertė "0" (nulis). Jums nereikės tai įjungti, bet jei tai padarysite, trikčių šalinimo skyriuje bus pateikta daugiau informacijos.
Vykdymas / planavimas
Paprasčiausiai Xen-pocalypse paskambinimas atrodytų taip:
./Xen-backup.sh settings.cfg weekly-fri
Kai aukščiau esančiame pavyzdyje esame kataloge, kuriame yra scenarijaus ir nustatymų failo. "Žyma", kurį ieškos scenarijus, yra "weekly-fri".
Kaip minėta pirmiau, naudosime "Cron", kad planuotume vykdymą. Prieš eidami į konfigūraciją, tai yra labai rekomenduojama kad jau sukonfigūruotumėte jau įdiegtą SSMTP paketą savo "Xen" serveryje. Nors tai yra neprivalomas žingsnis, atliekant tai jums suteiks atbulinės eigos kolektoriaus. Turėdami tokį "atgal skalavimo kolektorių", galite įspėti apie dalykus, kurių scenarijus negali.
Įeikite į "cron" redagavimą, išleidžiant:
crontab -e
Jei atlikote anksčiau pateiktas instrukcijas ir norite pridėti suplanuotą atsarginę kopiją penktadienį 18:01 (18:01), įveskite žemiau pateiktą informaciją:
01 18 * * fri /root/Xen-pocalypse-master/Xen_Backup.sh /root/Xen-pocalypse-master/settings.cfg weekly-fri
Tai yra teisinga, darant prielaidą, kad jūsų scenarijus ir nustatymų failas yra abiejose "/ root / Xen-pocalypse-master /".
Problemų sprendimas
Nors dedu daug pastangų, kad scenarijus taptų lengvas ir kuo lengvesnis, "pasaulis yra didesnė laboratorija". Žemiau pateikta informacija gali padėti jums išsiaiškinti, kas yra jūsų bėdų šaltinis.
Progresas
Galbūt norėsite pasinaudoti šia linijine linija, kad galėtumėte greitai "stebėti" visas užduotis, kurios daromos, ar jos apskritai iš tiesų pasiekia pažangą, ar jos iš tikrųjų yra įstrigę.
while [ -e /dev/null ]; do for VM in '$( xe task-list | grep uuid | awk '{print $5}' )'; do xe task-param-get param-name=progress uuid=$VM;sleep 1; done; done
Norėdami nustoti žiūrėti, naudokite Ctrl + C, kad stabdytumėte "while loop".
Miško kirtimas
Visą "registravimą" surenka "Xen" kompiuteris, kuriame veikia scenarijus syslog mechanizme. Tai, žinoma, gali būti žiūrima:
less +F /var/log/messages
Jūs ieškote raktinio žodžio "Xen-pocalypse".
Pastaba: "Citrix" nustatė dviejų (2) dienų išlaikymo politiką savo serverių syslog. Galbūt norėsite to nepamiršti dėl pasninko.
Derinimas
Kaip nurodyta parametrų rinkmenų segmente, yra nustatyta direktyva, kuri įgalina derinimą. Įjungus derinimą, scenarijus išverstų išsamią prisijungimą prie konsolės ir kastruotų jį nuo el. Laiškų siuntimo ir faktinio eksporto vykdymo, nebent būtų nustatytos atitinkamos vėliavos. Galimos vėliavos yra pažymėtos nustatymų failo šablone ir leidžia išsamiai apibrėžti, ką norite ištaisyti.
Tikiuosi, kad jums nereikėjo jokių derinimo ir jūs naudojate mano darbo vaisius:)
Trauka, mano vyrukas, tu būsi tapti depektinu pirmojo numerio …