- scarpe jordan in vendita
- 16373
|
Utilizzando Elasticsearch per archiviare i log del sistema aziendale, ogni giorno viene generato un nuovo indice in base alla data, ogni giorno ci sono milioni di documenti e, con il tempo, se non si pulisce l'indice Elasticsearch in modo tempestivo, si otterrà un grande ingombro su disco, causando una forte pressione sul disco, e anche la velocità di ricerca diventerà più lenta. In precedenza, abbiamo ripulito manualmente gli indici di es e abbiamo usato script di shell per ripulirli regolarmente. In realtà, es può creare politiche di ciclo di vita degli indici per aiutarci a eliminare i vecchi indici storici.
La versione di elasticsearch utilizzata in questo articolo è la 7.10.2.
Prima di tutto, diamo un'occhiata agli indici esistenti, il nome dell'indice viene creato in base alla data, oggi è 2022-03-11, si può vedere che gli indici e i documenti del gennaio 2022 esistono ancora, nella figura seguente:
Creare un modello di indice
Aprire il pannello di gestione di Kibana, fare clic su Gestione indici -> Modelli di indice -> Creare un modello di indice, compilare il nome: logger-template, modulo di indice compilare la necessità di abbinare l'indice, e poi è stato il passo successivo può essere, la figura seguente:
Nota: quando viene creato un nuovo indice Elasticsearch, il modello viene abbinato automaticamente per completare la parte di base della creazione dell'indice. In altre parole, quando viene creato l'indicevse-2022-03-13, esso corrisponderà alla versione del logger-template, quindi eseguirà le regole impostate dal template e l'indice storico (anche se corrisponde al template) non sarà associato al template dell'indice!!!! Ai fini del presente documento, gli indici non creati secondo un modello non possono essere eliminati automaticamente.
Creazione di un criterio del ciclo di vita dell'indice
Aprire il pannello di amministrazione di Kibana, fare clic su Criteri del ciclo di vita dell'indice -> Crea criterio, come mostrato di seguito:
Inserire il nome "auto-clean-30-days-logger " e deselezionare "Enable rolling updates", come mostrato di seguito:
Attivare l'opzione Elimina fase per ripulire automaticamente gli indici di 30 giorni fa, come mostrato di seguito:
Infine, aggiungere la strategia al modello di indice come mostrato di seguito:
Finora, l'indice appena creato viene salvato automaticamente per 30 giorni, gli indici oltre i 30 giorni vengono eliminati e gli indici storici devono essere ripuliti manualmente!!! Per la cancellazione manuale degli indici, fare riferimento a:
Elasticsearch elimina tutti i dati dei documenti dall'indice. h ttps:// www.itsvse.com/thread-6321-1-1.html Visualizzare il modello di indice appena creato, il modello finale che verrà applicato all'indice corrispondente. I dettagli sono i seguenti:
{ "template": { "settings": { "indice": { "lifecycle": { "name": "auto-clean-30-days-logger" } } }, "alias": {}, "mappings": {} } }
Visualizzazione dell'interfaccia di configurazione dei criteri, ad esempio http://192.168.1.182:9200/_ilm/policy/auto-clean-30-days-logger?pretty
{ "auto-clean-30-days-logger" : { "version" : 1, "modified_date" : "2022-03-11T06:26:01.972Z", "policy" : { "phases" : { "hot" : { "min_age" : "0ms", "actions" : { "set_priority" : { { "priority" : 100 } } }, "delete" : { "min_age" : "30d", "actions" : {"priority" : 100 } } "azioni" : { "delete" : { "delete_searchable_snapshot" : true } } } } } } }
ILM (Gestione del ciclo di vita degli indici)
La politica del ciclo di vita degli indici appena creata viene applicata tramite polling temporizzato.
Il servizio ILM esegue il polling dell'esecuzione della politica in background:
ILM definisce quattro fasi del ciclo di vita: Hot: l'indice viene aggiornato e interrogato attivamente. Warm: gli indici non vengono più aggiornati, ma vengono ancora interrogati. COLD: gli indici non vengono più aggiornati e vengono interrogati raramente. Le informazioni sono ancora necessarie per la ricerca, ma è normale che le interrogazioni siano lente. Delete: l'indice non è più necessario e può essere tranquillamente rimosso.
ILM viene eseguito periodicamente (indices.lifecycle.poll_interval), per impostazione predefinita 10 minuti, per verificare che l'indice soddisfi i criteri della policy ed eseguire le operazioni necessarie. Per evitare situazioni di contesa, è possibile che ILM debba essere eseguito più volte per eseguire tutti i passaggi necessari a completare un'azione. Pertanto, anche se indices.lifecycle.poll_interval è impostato su 10 minuti e gli indici sono conformi al rollover, potrebbero essere necessari fino a 20 minuti per completare il rollover. Esempio: supponiamo di aver impostato il rollover per più di 10 documenti, ma poiché il processo non è immediato, l'undicesimo o il dodicesimo documento potrebbe essere ancora presente nell'indice precedente e il nuovo documento non sarà presente nel nuovo indice finché il rollover non sarà riuscito.
Impostazioni della gestione del ciclo di vita dell'indice in Elasticsearch: https: //www.elastic.co/guide/en/elasticsearch/reference/current/ilm-settings.html
Visualizza lo stato di ILM
Ora è il 2022-03-13, 2 indici saranno creati automaticamente ogni giorno, è possibile vedere gli indici creati, sono stati automaticamente associati alla politica, come mostrato di seguito:
(Fine)
|
Precedente: Progetto Maven per separare il progetto e il packaging delle dipendenzeArticolo successivo: [Pratica]Usare Docker per costruire un server VPN IPsec
|