Robusna implementacija u oblaku znači posjedovanje dobro osmišljene strategije upravljanja podacima. U CloudSigma nudimo besplatne funkcionalnosti kao što su izrada snimaka (snapshotting) i višeslojna pohrana. Stoga je moguće implementirati izvrstan okvir za upravljanje podacima kako bi se osigurala snažna zaštita dostupnosti i integriteta podataka koje pohranjujete u oblaku.
U ovom postu s vama dijelimo skriptu koja vam omogućuje automatizaciju pretvaranja snimke diska u puni disk. Ovo je izvrsno za izradu sigurnosnih kopija različitih točaka vraćanja koje ste stvorili pomoću funkcionalnosti sigurnosnog kopiranja diska. Ova se funkcionalnost postiže pomoću Python skripte, koja pak koristi besplatnu CloudSigma Python biblioteku (koju možete preuzeti s ovdje).
Pa krenimo!
Prvo morate instalirati Python na svoje lokalno računalo ili poslužitelj ako ga već nemate. Instalacija Pythona općenito je jednostavna, a danas mnoge Linux i UNIX distribucije prema zadanim postavkama uključuju noviju verziju Pythona. Čak i neka Windows računala sada dolaze s već instaliranim Pythonom. Ovdje je kratak pregled instalacije Pythona za različite operacijske sustave.
Instalacija po operacijskom sustavu
Mac OS X
|
1 |
sudo pip install cloudsigma |
Ubuntu
|
1 2 |
sudo apt-get -y install python-pip pip install cloudsigma |
CentOS / RHEL
Kako biste instalirali CloudSigma modul, najprije morate instalirati EPEL repozitorij kako biste mogli instalirati PIP. Upute u nastavku odnose se na RHEL 6.x / CentOS 6.x. Za više pojedinosti o instaliranju repozitorija posjetite EPEL stranicu na ovdje.
|
1 2 3 4 5 |
yum install -y wget wget https://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm rpm -Uvh epel-release-6-8.noarch.rpm yum install -y python-pip pip install cloudsigma |
Konfiguracija Pythona i skripte
Sada provjerimo je li Python ispravno instaliran pomoću ove jednostavne naredbe:
|
1 |
python --version |
Izlazna verzija gornje naredbe trebala bi biti slična: Python 2.7.10
Nakon što instalirate Python na svoje računalo, možemo nastaviti s py-cloudsigma konfiguracijom.
Kako bi CloudSigma biblioteka mogla komunicirati s API-jem, morate unijeti svoje vjerodajnice.
One se postavljaju u datoteci ~/.cloudsigma.conf.
Ovdje je primjer verzije datoteke koja „komunicira” s podatkovnim centrom u San Joseu. Ako umjesto toga želite koristiti podatkovni centar u Zürichu, jednostavno zamijenite sjc s zrh u api_endpoint i ws_endpoint.
|
1 2 3 4 |
api_endpoint = https://sjc.cloudsigma.com/api/2.0/ ws_endpoint = wss://direct.sjc.cloudsigma.com/websocket username = password = |
Budući da ova datoteka sadrži vjerodajnice, preporučuje se da postavite dopuštenja datoteke na chmod 600 kako bi ovu datoteku mogao čitati samo vlasnik:
|
1 |
chmod 600 ~/.cloudsigma.conf |
Sada smo spremni stvoriti i izvršiti Python skriptu. U nastavku donosimo cijeli izvorni kod, pa samo otvorite svoj omiljeni uređivač teksta i zalijepite ga tamo ili upotrijebite poveznicu za preuzimanje ovdje
Imajte na umu da ekstenzija datoteke mora biti .py kada spremate datoteku.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
#!/usr/bin/python import cloudsigma from pprint import pprint import time uid = raw_input("UUID snimke: ") snapshots = cloudsigma.resource.Snapshot() ssd_drive = snapshots.clone(uid) pprint(ssd_drive) time.sleep(10) drive = cloudsigma.resource.Drive() zadara_drive = drive.clone((ssd_drive['uuid']), {'storage_type': 'zadara'}) pprint(zadara_drive) zadara_ready = False while not zadara_ready: if drive.get(zadara_drive['uuid'])['status'] == 'unmounted': zadara_ready = True print "Gotovo" drive.delete(ssd_drive['uuid']) else: time.sleep(1) |
Pokrenite skriptu pomoću sljedeće naredbe:
|
1 |
.py |
Glavni cilj ove skripte je učiniti stvari što praktičnijim i jednostavnijim na strani upravljanja pohranom, posebno za nove korisnike i za one koji više vole konzolu od GUI-ja 🙂
Komentari
Još nema komentara. Budite prvi.