Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 9001|Svar: 0

Elasticsearch rensar automatiskt index för att frigöra diskutrymme

[Kopiera länk]
Publicerad på 2022-03-13 13:22:29 | | | |
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:

Elasticsearch raderar och indexerar all dokumentdata
https://www.itsvse.com/thread-6321-1-1.html
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)





Föregående:Maven-projekt paketerar projekt och beroenden separat
Nästa:【Practical Action】Använd Docker för att bygga en IPsec VPN-server
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com