Aceasta este comanda swift-ring-builder care poate fi rulată în furnizorul de găzduire gratuit OnWorks folosind una dintre multiplele noastre stații de lucru online gratuite, cum ar fi Ubuntu Online, Fedora Online, emulator online Windows sau emulator online MAC OS
PROGRAM:
NUME
constructor de inele rapid - Constructor de inele Openstack-Swift
REZUMAT
constructor de inele rapid <<...>
DESCRIERE
Utilitarul swift-ring-builder este folosit pentru a crea, căuta și manipula stocarea rapidă
inel. Generatorul de inele atribuie partiții dispozitivelor și scrie un Python optimizat
structură într-un fișier gzipped, decapat pe disc pentru expediere către servere. Server-ul
procesele verifică ocazional timpul de modificare a fișierului și reîncarcă
copii de memorie ale structurii inelului după cum este necesar. Din cauza modului în care se descurcă constructorul de inele
modificări ale inelului, folosirea unui inel puțin mai vechi înseamnă de obicei doar unul dintre cele trei
replicile pentru un subset de partiții vor fi incorecte, ceea ce poate fi ușor de lucrat
în jurul.
Constructorul de inele își păstrează, de asemenea, propriul fișier de constructor cu informații despre inel și suplimentare
datele necesare pentru a construi viitoarele inele. Este foarte important să păstrați mai multe copii de rezervă
dintre aceste fișiere de constructor. O opțiune este să copiați fișierele builder pe fiecare server în timp ce
copierea fișierelor de inel în sine. O alta este să încărcați fișierele builder în fișierul
cluster în sine. Pierderea completă a unui fișier builder va însemna crearea unui nou inel din
scratch, aproape toate partițiile vor ajunge să fie atribuite diferitelor dispozitive și, prin urmare
aproape toate datele stocate vor trebui replicate în noi locații. Deci, recuperarea de la a
Pierderea fișierului builder este posibilă, dar datele vor fi cu siguranță inaccesibile pentru o perioadă extinsă
timp.
Dacă este invocat ca „swift-ring-builder-safe”, directorul care conține fișierul builder furnizat
va fi blocat (prin intermediul unui fișier .lock în directorul părinte de fișiere). Aceasta oferă o bază
protecție împotriva mai multor instanțe ale constructorului de inele rapid (sau altor utilități care
observați această blocare) de a încerca să scrieți sau să citiți fișierele builder/ring în timp ce
operațiunile sunt în derulare. Acest lucru poate fi util în mediile în care managementul inelului are
a fost automatizat, dar operatorul mai trebuie să interacționeze manual cu inelele.
Căutare
Poate fi de forma:
d z - : / _
Orice parte este opțională, dar trebuie să includeți cel puțin unul, exemple:
d74 Se potrivește cu id-ul dispozitivului 74
z1 Se potrivește cu dispozitivele din zona 1
z1-1.2.3.4 Potrivește dispozitivele din zona 1 cu ip-ul 1.2.3.4
1.2.3.4 Potrivește dispozitivele din orice zonă cu ip 1.2.3.4
z1:5678 Potrivește dispozitivele din zona 1 folosind portul 5678
:5678 Se potrivește cu dispozitivele care folosesc portul 5678
/sdb1 Potrivește dispozitivele cu numele de dispozitiv sdb1
_shiny Potrivește dispozitivele cu shiny în metadate
_'snet: 5.6.7.8' Potrivește dispozitivele cu snet: 5.6.7.8 în metadatele
[::1] Potrivește dispozitivele din orice zonă cu ip ::1
z1-[::1]:5678 Potrivește dispozitivele din zona 1 cu ip ::1 și portul 5678
Cel mai specific exemplu:
d74z1-1.2.3.4:5678/sdb1_"snet: 5.6.7.8"
Explicație tocilar:
Toate articolele necesită prefixul lor cu un singur caracter, cu excepția ipului, caz în care -
este opțional, cu excepția cazului în care ID-ul dispozitivului sau zona sunt incluse și.
COMANDE
Afișează informații despre inel și dispozitivele din interior.
căutare
Afișează informații despre dispozitivele care se potrivesc.
adăuga z - : / _
adăuga r z - : / _
adăuga -r -z -i -p -d -m -w
Adaugă un dispozitiv la inel cu informațiile date. Nu vor fi alocate partiții
la noul dispozitiv până după rularea „rebalance”. Asta pentru a putea face mai multe
dispozitivul se schimbă și reechilibrați-le pe toate o singură dată.
crea
Creează cu 2^ despărțitori și .
este numărul de ore pentru a restricționa mutarea unei partiții de mai multe ori.
list_parts [ ] ..
Returnează o listă cu 2 coloane cu toate partițiile care sunt alocate oricăruia dintre dispozitive
potrivirea valorilor de căutare date. Prima coloană este numărul partiției atribuit
iar a doua coloană este numărul de potriviri de dispozitiv pentru acea partiție. Lista este
ordonat de la cel mai mare număr de meciuri la cel mai mic. Dacă există o mulțime de dispozitive care să se potrivească
împotriva, această comandă ar putea dura ceva timp.
reechilibreze
Încercări de reechilibrare a inelului prin reatribuirea partițiilor care nu au fost recent
reatribuit.
scoate
Îndepărtează dispozitivul (dispozitivele) din inel. În mod normal, acesta ar trebui să fie folosit doar pentru un dispozitiv
care a eșuat. Pentru un dispozitiv pe care doriți să-l scoateți din funcțiune, cel mai bine este să-i setați greutatea
la 0, așteptați ca acesta să-și scurgă toate datele, apoi utilizați această comandă de eliminare. Acest lucru nu va fi
va intra în vigoare până după rularea „reechilibrare”. Acest lucru este astfel încât să puteți face mai multe dispozitive
modificări și reechilibrați-le pe toate o singură dată.
set_info : / _
Resetează informațiile dispozitivului. Aceste informații nu sunt folosite pentru a aloca partiții, deci
puteți folosi apoi „write_ring” pentru a rescrie inelul curent cu dispozitivul mai nou
informație. Oricare dintre părți este opțională în finală
: / _ parametru; doar da ce vrei sa schimbi. Pentru
instanță set_info d74 _"snet: 5.6.7.8" ar actualiza doar metadatele pentru id-ul dispozitivului
74.
set_min_part_hours
Schimbă la dat . Acest lucru ar trebui setat la oricât de lung
durează un ciclu complet de replicare/actualizare. Lucrăm la o modalitate de a determina acest lucru mai mult
mai ușor decât scanarea jurnalelor.
set_greutate
Resetează greutatea dispozitivului. Nicio partiție nu va fi reatribuită către sau de la dispozitiv
până după rularea „reechilibrare”. Acest lucru este astfel încât să puteți face mai multe modificări ale dispozitivului și
reechilibrează-le pe toate o singură dată.
valida
Doar rulează rutinele de validare pe inel.
scrie_ring
Doar rescrie fișierul inel distribuibil. Acest lucru se face automat după a
reechilibrare reușită, așa că într-adevăr acest lucru este util doar după unul sau mai multe „set_info”
apeluri atunci când nu este nevoie de reechilibrare, dar doriți să trimiteți noul dispozitiv
informaţii.
Rapid listă: adăugare create list_parts reechilibrare elimina căutare set_info
set_min_part_hours set_weight validate write_ring
Ieşire coduri: 0 = inelul schimbat, 1 = inelul nu sa schimbat, 2 = eroare
DOCUMENTAȚIE
O documentație mai aprofundată despre inelul rapid și, de asemenea, despre Openstack-Swift în ansamblu
fi găsit la http://swift.openstack.org/overview_ring.html,
http://swift.openstack.org/admin_guide.html#managing-the-rings și
http://swift.openstack.org
Utilizați Swift-ring-Builder online folosind serviciile onworks.net
