Ved å bruke Elasticsearch til å lagre loggene til forretningssystemet, vil en ny indeks bli generert hver dag i henhold til datoen, det er millioner av dokumenter hver dag, hvis Elasticsearch-indeksen ikke blir rengjort i tide, vil det føre til stor diskplass, legge mye press på disken, og søkehastigheten vil også bli lavere. Tidligere hadde vi manuelt renset ES sine indekser og brukt shell-skript for å rydde dem regelmessig, men ES kan lage en indekslivssykluspolicy for å hjelpe oss å slette gamle historiske indekser.
Versjonen av Elasticsearch som brukes i denne artikkelen er: 7.10.2
I dag er det 11.03.2022, og du kan se at indeksen og dokumentene for januar 2022 fortsatt eksisterer, som vist i figuren nedenfor:
Lag en indeksmal
Åpne Kibana-administrasjonspanelet, klikk på Indekshåndtering -> indeksmal -> for å lage en indeksmal med følgende navn:Logger-mal, fyller indeksmodulen inn indeksene som må matches, og går deretter helt til neste steg, som vist i figuren nedenfor:
Merk: Når man oppretter en ny Elasticsearch-indeks, vil malen automatisk matches for å fullføre den grunnleggende delen av indeksen. Det vil si, når itsvse-2022-03-13-indeksen opprettes, vil den matche logger-malversjonen, og deretter utføre reglene satt av malen.Historiske indekser (selv om de matcher maler) er ikke knyttet til indeksmaler!!! I denne artikkelen,Indekser som ikke opprettes basert på en mal kan ikke slettes automatisk。
Lag en indekslivssykluspolicy
Åpne Kibana-administrasjonspanelet og klikk på Index Lifecycle Policy -> for å opprette en policy, som vist i følgende bilde:
Navnefylling"Auto-clean-30-days-logger, fjern haken for Aktiver rullende oppdateringer, som vist i følgende figur:
Åpne slettefasen for automatisk å rydde opp indekser for opptil 30 dager siden, som vist i følgende bilde:
Til slutt, legg til policyen i indeksmalen, som vist i bildet nedenfor:
På dette tidspunktet vil den nyopprettede indeksen automatisk bli lagret i 30 dager, og indeksen utover 30 dager vil bli slettet, og den historiske indeksen må ryddes manuelt!! For å manuelt slette en indeks, se til:
Gå gjennom indeksmalen du nettopp har laget, som vil bli brukt på den endelige malen som matcher indeksen. Detaljene er som følger:
{ "template": { "innstillinger": { "indeks": { "livssyklus": { "Navn": "Auto-Clean-30-Days-logger" } } }, "aliaser": {}, "mappings": {} }
}
Se gjennom policy-konfigurasjonsgrensesnittet, for eksempel:http://192.168.1.182:9200/_ilm/policy/auto-clean-30-days-logger?pretty
{ "auto-clean-30-days-logger" : { "versjon" : 1, "modified_date" : "2022-03-11T06:26:01.972Z", "policy" : { "faser" : { "Hot" : { "min_age" : "0ms", "handlinger" : { "set_priority" : { "Prioritet" : 100 } } }, "delete" : { "min_age" : "30d", "handlinger" : { "delete" : { "delete_searchable_snapshot" : Sant } } } } } }
}
ILM (Indekslivssyklusstyring)
Vår nye indekslivssykluspolicy utføres gjennom tidsstyrt polling.
ILM Service sjekker utførelsespolitikken i bakgrunnen:
ILM definerer fire livssyklusfaser: Hot: Oppdaterer aktivt og spør indeksen. Varmt: Ingen flere oppdateringer av indekser, men fortsatt forespørsler. Cold: Ingen flere indekser oppdatert, få spørsmål. Informasjonen må fortsatt være søkbar, men det er greit om spørringene er tregere. Slett: Indeksen er ikke lenger nødvendig og kan trygt slettes.
ILM periodisk drift (indices.lifecycle.poll_interval),Standard er 10 minutterfor å sjekke at indeksen oppfyller policykriteriene og iverksette nødvendige tiltak. For å unngå løpssituasjoner kan ILM måtte kjøres flere ganger for å utføre alle trinnene som kreves for å fullføre en handling. Så selv om indices.lifecycle.poll_interval er satt til 10 minutter og indeksen er rollover-kompatibel, kan det ta 20 minutter å fullføre rolloveren. For eksempel, hvis vi setter mer enn 10 dokumenter til å rulle over, men fordi denne prosessen ikke implementeres umiddelbart, kan artikkel 11 og 12 fortsatt havne på den forrige indeksen, og de nyopprettede dokumentene vil ikke havne på den nye indeksen før overføringen er vellykket.
Innstillinger for indekslivssyklusadministrasjon i Elasticsearch:Innloggingen med hyperkoblingen er synlig.
Se ILM-status
Det er 2022-03-13, 2 indekser opprettes automatisk hver dag, du kan allerede se de opprettede indeksenePolicyer er automatisk tilknyttet, som vist i figuren nedenfor:
(Slutt)
|