Repository di snapshot di pulizia di Elasticsearch

Repository Di Snapshot Di Pulizia Di Elasticsearch



“I backup sono una funzionalità molto importante quando si lavora con i database. In Elasticsearch, possiamo creare backup di indici specifici, flussi di dati, stati globali, funzionalità o l'intero cluster utilizzando snapshot.

Tuttavia, come tutti i database, lo stato del cluster può cambiare nel tempo e dipendere dalla frequenza dello snapshot, il che può portare a uno snapshot con dati non aggiornati a cui non fa più riferimento lo snapshot corrente.







In questo post, discuteremo come utilizzare l'API del repository di snapshot di Elasticsearch che consente di scansionare il contenuto del repository di snapshot e tenere conto dei dati correnti. L'API rimuoverà quindi tutti i dati non referenziati'.



Immergiamoci.



NOTA : È meglio comprendere che i dati non referenziati non influiscono sulle prestazioni del repository, dello snapshot o del cluster. Tuttavia, occupa spazio su disco che può essere cruciale in ambienti su larga scala.





Richiedi sintassi

Il codice seguente mostra la sintassi della richiesta per interrogare l'API di pulizia dello snapshot.

INVIARE / _istantanea /< deposito >/ _pulire



L'endpoint API potrebbe richiedere i privilegi di 'gestione' sul cluster a seconda della sicurezza e delle configurazioni delle autorizzazioni.

Parametri del percorso

La richiesta supporta i seguenti parametri di percorso:

  1. – specifica il nome del repository su cui viene eseguita l'operazione di cleanup. Questo è un parametro obbligatorio.

Parametri di ricerca

Per modificare la query, puoi includere i seguenti parametri di query:

  1. master_timeout – definisce la durata di attesa di una risposta dal nodo master. La richiesta ha esito negativo con un errore se non viene ricevuta alcuna risposta una volta trascorsa la durata. Il valore predefinito per la durata del timeout principale è 30 secondi.
  2. tempo scaduto – specifica la durata dell'attesa per la risposta. Il valore predefinito è 30 secondi.

Corpo di risposta

Le seguenti proprietà sono incluse nel corpo della risposta:

  1. risultati – questo è un oggetto che contiene le statistiche eseguite dall'operazione di pulizia. Queste statistiche includono:
    un. byte_eliminati – numero di byte rimossi dall'API di pulizia.
    b. blob_eliminati – numero di oggetti binari di grandi dimensioni eliminati dal repository.

Esempio

L'esempio seguente mostra come eseguire un'operazione di pulizia nel repository di snapshot con il nome 'sample_repo'.

arricciare -XPOST 'http://localhost:9200/_snapshot/sample_repo/_cleanup' -H 'kbn-xsrf: rapporti'

Produzione

{
'risultati' : {
'byte_eliminati' : 100 ,
'blob_eliminati' : 25
}
}

Puoi anche eseguire la pulizia del repository di snapshot utilizzando il dashboard di Kibana.

Passare a Gestione -> Gestione dello stack -> Snapshot e ripristino -> Repository.

Apri il repository di destinazione e seleziona il repository pulito.

Al termine della pulizia, la richiesta dovrebbe mostrare le statistiche pulite:

Conclusione

In questo tutorial, abbiamo discusso il processo di esecuzione di una pulizia del repository di snapshot utilizzando l'API Elasticsearch e il dashboard Kibana. Raccogli i documenti per ulteriori informazioni.

Grazie per aver letto!!