Acest articol explorează modul în care putem obține descrierea detaliată a fiecărui fragment care participă la un instantaneu dat.
Pentru a obține starea unui instantaneu dat în Elasticsearch, folosim punctul final API Obținere stare instantanee.
Sintaxa de solicitare
Sintaxa cererii este așa cum se arată în următoarele:
GET _snapshot / _stare
GET _snapshot /< repertoriu >> _stare
GET _snapshot /< repertoriu >>/< instantaneu >> _stare
Solicitarea acceptă următorii parametri de cale:
-
– Numele depozitului de instantanee. Acest lucru este foarte util pentru a limita domeniul de aplicare al cererii la un anumit depozit în loc de interogarea la nivel de sistem. -
– Specifică numele unui instantaneu țintă. De asemenea, puteți specifica mai multe instantanee ca o listă separată prin virgulă.
Putem omite instantaneul din parametrul de solicitare pentru a prelua o informație despre instantaneele care rulează în prezent.
Corpul de răspuns
Solicitarea ar trebui să returneze informații detaliate despre instantaneu. Astfel de informații incluse în răspuns sunt:
- Repertoriu – Numele depozitului în care se află instantaneul.
- Instantaneu – Numele instantaneului.
- uuid – UUID al instantaneului.
- Stat – Starea actuală a instantaneului. Instantaneul poate fi în următoarele stări:
- Include_global_state – Indică dacă starea globală a clusterului este inclusă în instantaneul specificat.
- Shard_stats – Afișează numărul de cioburi.
- Statistici – Detalii despre numărul de fișiere și dimensiunea fișierelor din instantaneu.
A. A EȘUAT – Instantaneul care s-a terminat cu o eroare și nu reușește să restabilească datele de rezervă.
b. ÎNCEPUT – Indică faptul că instantaneul rulează în prezent.
c. PARȚIAL – Arată că starea globală a clusterului este restaurată, dar datele a cel puțin unui fragment nu au reușit să fie stocate cu succes.
d. SUCCES – Indică faptul că instantaneul a fost finalizat cu succes.
Acestea sunt câteva dintre informațiile returnate din starea instantaneului.
Elasticsearch Creați un instantaneu
Pentru a ilustra cel mai bine cum să utilizați API-ul Elasticsearch Get snapshot, permiteți-ne să creăm un exemplu de instantaneu. Rețineți că această secțiune nu acoperă elementele de bază ale creării unui depozit Elasticsearch sau alte cerințe pentru un instantaneu Elasticsearch.
Verificați documentația pentru a afla mai multe.
Să presupunem că avem un depozit numit elk_bakcups, putem crea un instantaneu în acel depozit cu cererea, așa cum se arată în continuare:
răsuci -XPUT „http://localhost:9200/_snapshot/elk_backups/test_snapshot?wait_for_completion=true” -H „kbn-xsrf: raportare”Solicitarea anterioară inițializează crearea instantaneului în depozitul specificat.
NOTĂ : Timpul necesar pentru finalizarea creării instantaneului depinde de o serie de factori.
Elasticsearch Obține starea instantaneului
Odată ce inițializam procesul de creare a instantaneului, putem verifica starea acestuia rulând următoarea interogare:
răsuci -XGET „http://localhost:9200/_snapshot/elk_backups/test_snapshot/_status” -H „kbn-xsrf: raportare”Aceasta ar trebui să returneze informații detaliate despre starea instantaneului. Un exemplu de ieșire este așa cum se arată în următoarele:
{'instantanee' : [
{
'instantaneu' : 'test_snapshot' ,
'repertoriu' : „fiecare_backup” , < puternic >
puternic > 'uuid' : „9oOJtTunR_WC-1a7NA-9WQ” ,
'stat' : 'SUCCES' ,
„include_global_state” : Adevărat ,
'shards_stats' : {
'initializand' : 0 ,
'a inceput' : 0 ,
'finalizarea' : 0 ,
'Terminat' : 94 ,
'a eșuat' : 0 ,
'total' : 94
} ,
'statistici' : {
'incremental' : {
'număr_fișiere' : 282 ,
„dimensiune_în_octeți” : 750304
} ,
'total' : {
'număr_fișiere' : 692 ,
„dimensiune_în_octeți” : 62159894
} ,
„start_time_in_millis” : 1663770043239 ,
'timp_in_mili' : 26212
} ,
'indici' : { < puternic >
puternic > 'fluxul-meu de date' : {
'shards_stats' : {
'initializand' : 0 ,
'a inceput' : 0 ,
'finalizarea' : 0 ,
'Terminat' : 1 ,
'a eșuat' : 0 ,
'total' : 1
} ,
'statistici' : {
'incremental' : {
'număr_fișiere' : 0 ,
„dimensiune_în_octeți” : 0
} ,
'total' : {
'număr_fișiere' : 10 ,
„dimensiune_în_octeți” : 13518
} ,
-----------------IEȘIRE TUNCIAT------------------------
În Kibana, puteți verifica starea instantaneului navigând la secțiunea Stack Management - Snapshot and Restore.
Selectați instantaneul țintă și vizualizați detaliile.
NOTĂ : Rețineți că Kibana nu oferă detalii complete, așa cum sunt furnizate de API-ul Elasticsearch pentru a obține starea instantanee.
Concluzie
În această postare, am explorat elementele fundamentale ale lucrului cu API-ul get snapshot status, care ne permite să obținem informații detaliate despre un anumit instantaneu.
Multumesc pentru lectura!