Genom att använda Elasticsearch för att lagra loggarna i affärssystemet genereras ett nytt index varje dag enligt datumet, det finns miljontals dokument varje dag, om Elasticsearch-indexet inte rensas i tid kommer det att orsaka stort diskutrymme, mycket tryck på disken och sökhastigheten blir också långsammare. Tidigare hade vi manuellt rensat ES:s index och använt shell-skript för att regelbundet rensa dem, men ES kan skapa en indexlivscykelpolicy för att hjälpa oss att radera gamla historiska index.
Versionen av Elasticsearch som används i denna artikel är: 7.10.2
Idag är det 2022-03-11, och du kan se att indexet och dokumenten för januari 2022 fortfarande finns, som visas i figuren nedan:
Skapa en indexmall
Öppna Kibana-adminpanelen, klicka på Indexhantering -> Indexmall -> för att skapa en indexmall med följande namn:Logger-mall, indexmodulen fyller i indexen som behöver matchas, och går sedan hela vägen till nästa steg, som visas i figuren nedan:
Notera: När du skapar ett nytt Elasticsearch-index kommer mallen automatiskt att matchas för att slutföra den grundläggande delen av indexet. Det vill säga, när itsvse-2022-03-13-indexet skapas, kommer det att matcha logger-mall-versionen och sedan köra reglerna som mallen sätter.Historiska index (även om de matchar mallar) är inte kopplade till indexmallar!!! I denna artikel,Index som inte skapas baserat på en mall kan inte automatiskt raderas。
Skapa en indexlivscykelpolicy
Öppna Kibanas adminpanel och klicka på Index Lifecycle Policy -> för att skapa en policy, som visas i följande bild:
Namnfyllning"Auto-clean-30-days-logger, avmarkera Aktivera rullande uppdateringar, som visas i följande figur:
Öppna borttagningsfasen för att automatiskt rensa index upp till 30 dagar tillbaka, som visas i följande bild:
Slutligen, lägg till policyn i indexmallen, som visas i följande bild:
Vid denna tidpunkt kommer det nyskapade indexet automatiskt att sparas i 30 dagar, och indexet efter 30 dagar kommer att raderas, och det historiska indexet måste rensas manuellt!! För att manuellt ta bort ett index, se:
Gå igenom indexmallen du just skapat, vilken kommer att appliceras på den slutgiltiga mallen som matchar indexet. Detaljerna är följande:
{ "mall": { "inställningar": { "index": { "livscykel": { "Namn": "Auto-Clean-30-Days-logger" } } }, "alias": {}, "mappningar": {} }
}
Gå igenom policykonfigurationsgränssnittet, till exempel: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" : { "faser" : { "het" : { "min_age" : "0ms", "handlingar" : { "set_priority" : { "Prioritet": 100 } } }, "delete" : { "min_age" : "30d", "handlingar" : { "delete" : { "delete_searchable_snapshot" : Sant } } } } } }
}
ILM (Index Lifecycle Management)
Vår nya indexlivscykelpolicy genomförs genom tidsstyrd polling.
ILM Service pollar exekveringspolicyn i bakgrunden:
ILM definierar fyra livscykelfaser: Het: Uppdaterar aktivt och söker indexet. Varmt: Inga fler indexuppdateringar, men fortfarande förfrågningar. kallt: Inga fler index uppdaterade, få frågor. Informationen måste fortfarande vara sökbar, men det är okej om frågorna är långsammare. Radera: Indexet behövs inte längre och kan säkert raderas.
ILM Periodisk Operation (indices.lifecycle.poll_interval),Standard är 10 minuterAtt kontrollera att indexet uppfyller policykriterierna och vidta nödvändiga åtgärder. För att undvika tävlingssituationer kan ILM behöva köras flera gånger för att utföra alla steg som krävs för att slutföra en handling. Så även om indices.lifecycle.poll_interval är inställd på 10 minuter och indexet är rollover-kompatibelt kan det ta 20 minuter att slutföra rollovern. Till exempel, om vi sätter fler än 10 dokument att rulla över, men eftersom denna process inte implementeras omedelbart, kan artiklarna nummer 11 och 12 fortfarande hamna på det föregående indexet, och de nyskapade dokumenten kommer inte att hamna på det nya indexet förrän överföringen är lyckad.
Inställningar för hantering av indexlivscykel i Elasticsearch:Inloggningen med hyperlänken är synlig.
Visa ILM-status
Det är 2022-03-13, 2 index skapas automatiskt varje dag, du kan redan se de skapade indexenPolicys är automatiskt kopplade, som visas i figuren nedan:
(Slut)
|