Ved at bruge Elasticsearch til at gemme logfiler fra forretningssystemet, vil der blive genereret et nyt indeks hver dag i henhold til datoen, der er millioner af dokumenter hver dag, hvis Elasticsearch-indekset ikke bliver renset i tide, vil det forårsage stor diskplads, lægge meget pres på disken, og søgehastigheden vil også blive langsommere. Tidligere havde vi manuelt renset ES's indekser og brugt shell-scripts til at rense dem regelmæssigt, men ES kan oprette en indekslivscykluspolitik, der hjælper os med at slette gamle historiske indekser.
Den version af Elasticsearch, der bruges i denne artikel, er: 7.10.2
I dag er det 11-03-2022, og du kan se, at indekset og dokumenterne for januar 2022 stadig eksisterer, som vist i figuren nedenfor:
Opret en indeksskabelon
Åbn Kibana adminpanelet, klik på Indekshåndtering -> Indeksskabelon -> for at oprette en indeksskabelon med følgende navn:Logger-skabelon, indeksmodulet udfylder de indekser, der skal matches, og går derefter hele vejen til næste trin, som vist i figuren nedenfor:
Bemærk: Når man opretter et nyt Elasticsearch-indeks, matches skabelonen automatisk for at fuldføre den grundlæggende del af indekset. Det vil sige, når itsvse-2022-03-13-indekset oprettes, vil det matche logger-skabelon-versionen og derefter udføre de regler, skabelonen har sat.Historiske indekser (selv hvis de matcher skabeloner) er ikke forbundet med indeksskabeloner!!! I denne artikel,Indekser, der ikke oprettes baseret på en skabelon, kan ikke slettes automatisk。
Opret en indekslivscykluspolitik
Åbn Kibana-administrationspanelet og klik på Index Lifecycle Policy -> for at oprette en politik, som vist på følgende billede:
Navneudfyldning"auto-clean-30-days-logger, fjern markeringen Aktiver løbende opdateringer, som vist i følgende figur:
Åbn sletningsfasen for automatisk at rydde op i indekser op til 30 dage siden, som vist på følgende billede:
Tilføj endelig politikken til indeksskabelonen, som vist på følgende billede:
På dette tidspunkt vil det nyoprettede indeks automatisk blive gemt i 30 dage, og indekset ud over 30 dage vil blive slettet, og det historiske indeks skal manuelt renses!! For manuelt at slette et indeks, henvis:
Gennemgå den indeksskabelon, du lige har oprettet, som vil blive anvendt på den endelige skabelon, der matcher indekset. Detaljerne er som følger:
{ "skabelon": { "indstillinger": { "indeks": { "livscyklus": { "Navn": "Auto-clean-30-days-logger" } } }, "aliaser": {}, "mappings": {} }
}
Gennemgå policy-konfigurationsgrænsefladen, for eksempel: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", "politik" : { "faser" : { "hot" : { "min_age" : "0ms", "handlinger" : { "set_priority" : { "Prioritet" : 100 } } }, "slet" : { "min_age" : "30d", "handlinger" : { "slet" : { "delete_searchable_snapshot" : sandt } } } } } }
}
ILM (Indekslivscyklusstyring)
Vores nye indekslivscykluspolitik udføres gennem tidsbestemt afstemning.
ILM Service spørger udførelsespolitikken i baggrunden:
ILM definerer fire livscyklusfaser: Hot: Opdaterer aktivt og forespørger indekset. Varm: Ingen flere opdateringer af indekser, men stadig forespørgsler. kold: Ingen flere indekser opdateret, få forespørgsler. Informationen skal stadig være søgbar, men det er okay, hvis forespørgslerne er langsommere. Slet: Indekset er ikke længere nødvendigt og kan sikkert slettes.
ILM Periodisk Drift (indices.lifecycle.poll_interval),Standarden er 10 minutterat kontrollere, at indekset opfylder politikkriterierne, og tage nødvendige skridt. For at undgå løbssituationer kan ILM være nødt til at køres flere gange for at udføre alle de nødvendige trin for at fuldføre en handling. Så selv hvis indices.lifecycle.poll_interval er sat til 10 minutter, og indekset er rollover-kompatibelt, kan det tage 20 minutter at gennemføre rolloveren. For eksempel, hvis vi sætter mere end 10 dokumenter til at rulle over, men fordi denne proces ikke implementeres med det samme, kan artiklen nummer 11 og 12 stadig ligge på det tidligere indeks, og de nyoprettede dokumenter vil ikke falde på det nye indeks, før rolloveren er succesfuld.
Indeks livscyklusstyringsindstillinger i Elasticsearch:Hyperlink-login er synlig.
Se ILM-status
Det er 2022-03-13, 2 indekser oprettes automatisk hver dag, du kan allerede se de oprettede indekserPolicer er automatisk tilknyttet, som vist i figuren nedenfor:
(Slut)
|