Graylog: Beheer retentie
Hoe logretentie configureren
👋 Welkom bij de Stackhero documentatie!
Stackhero biedt een kant-en-klare Graylog cloud oplossing die tal van voordelen biedt, waaronder:
- Onbeperkte en toegewijde SMTP e-mailserver inbegrepen.
- Moeiteloze updates met slechts één klik.
- Aanpasbare domeinnaam beveiligd met HTTPS (bijvoorbeeld, https://logs.uw-bedrijf.com).
- Optimale prestaties en robuuste beveiliging aangedreven door een privé en toegewijde VM.
Bespaar tijd en vereenvoudig uw leven: het kost slechts 5 minuten om de Graylog cloud hosting oplossing van Stackhero te proberen!
Retentie bepaalt het aantal berichten dat in de OpenSearch-database wordt opgeslagen. U kunt retentie configureren op basis van een aantal berichten, een maximale leeftijd of een totale groottebeperking.
U kunt bijvoorbeeld kiezen om berichten van de afgelopen 365 dagen te bewaren, tot 200 miljoen berichten te behouden, of een totaal van 400 GB opslagruimte te reserveren.
Begrip van indices
Voordat u uw retentiebeleid definieert, is het belangrijk om te begrijpen hoe indices die door Graylog en OpenSearch worden gebruikt, werken. Denk aan indices als fysieke containers. Graylog "opent" een container (een index) en plaatst binnenkomende berichten erin. Wanneer het aan die container toegewezen quotum wordt overschreden, wordt de container gesloten, op een plank opgeslagen en wordt een nieuwe container gestart voor volgende berichten.
U kunt dit quotum instellen met verschillende criteria:
- Een aantal berichten: "Bewaar 20 miljoen berichten per container, start dan een nieuwe."
- Een tijdslimiet: "Gebruik een container gedurende 10 dagen, schakel dan over naar een nieuwe."
- Een groottebeperking: "Sla 20 GB per container op, ga dan verder naar een nieuwe."
Er wordt ook een maximaal aantal containers gedefinieerd dat op de plank kan worden opgeslagen. Als het aantal wordt overschreden, worden de oudste containers automatisch verwijderd. Bijvoorbeeld, als u een maximum van 20 containers instelt en er 22 op de plank staan, worden de 2 oudste containers verwijderd.
In deze analogie vertegenwoordigen de containers de indices, de plank is OpenSearch, en het maximum aantal vertegenwoordigt het toegestane aantal indices.
Een rotatiestrategie kiezen
Graylog biedt drie retentiestrategieën:
- "Index time" definieert de maximale duur waarvoor berichten in elke index worden bewaard, bijvoorbeeld 14 dagen per index.
- "Index message count" stelt het maximale aantal berichten per index in, bijvoorbeeld 20 miljoen berichten per index.
- "Index size" beperkt de maximale grootte van een index, bijvoorbeeld 40 GB per index.
U kunt een van deze strategieën selecteren op basis van uw specifieke vereisten. Bijvoorbeeld, het selecteren van "Index time" helpt ervoor te zorgen dat u altijd logs van de afgelopen X dagen hebt.
Zorg ervoor dat u uw schijfopslagbehoeften nauwkeurig inschat.
Bijvoorbeeld, als u 1 GB aan logs per dag opslaat en besluit om logs van de afgelopen 365 dagen te bewaren, heeft u 365 GB aan schijfruimte nodig. Vergeet niet dat er ook extra werkruimte moet worden gereserveerd (zie hieronder).
Definieer de retentieparameters
Standaard beperkt Graylog het aantal indices tot 20. U kunt deze waarde aanpassen aan uw behoeften. Bijvoorbeeld, als u logs van de afgelopen 365 dagen wilt opslaan, kunt u de retentie over indices verdelen door 365 dagen te delen door 20 indices, wat resulteert in ongeveer 19 dagen per index.
U kunt vergelijkbare berekeningen uitvoeren voor de andere strategieën:
- Voor de "Index message count" strategie: als u 200 miljoen berichten wilt behouden met een maximum van 20 indices, dan geeft 200 miljoen berichten gedeeld door 20 indices 10 miljoen berichten per index.
- Voor de "Index size" strategie: als u 400 GB aan logs wilt behouden met een maximum van 10 indices, dan geeft 400 GB gedeeld door 10 indices 40 GB per index.
We raden aan om altijd minstens 15 GB vrije schijfruimte te behouden voor logs, het Graylog-journaal en MongoDB-gegevens.
Als de vrije schijfruimte opraakt, zal OpenSearch zijn operaties blokkeren en moet u mogelijk upgraden naar een grotere instantie.
Configureer het retentiebeleid
Om het retentiebeleid te configureren, navigeert u naar de Graylog-interface. Onder "System" selecteert u "Indices" en klikt u op de knop "Edit" in de "Default index set".
In het onderstaande voorbeeld stelt de configuratie een maximum van 27 indices in, waarbij elke index 14 dagen aan logs behoudt. Deze setup behoudt logs voor ongeveer een jaar (378 dagen).
We raden niet aan om meer dan 14 dagen aan berichten per index te bewaren.
Retentieconfiguratie om logs een jaar te bewaren
Bij het kiezen van "Index time" als rotatiebeleid, moet u de duur definiëren met behulp van de ISO8601 Duration-standaard.
Bijvoorbeeld, "P7D" betekent 7 dagen, "P14D" betekent 14 dagen, enzovoort.
Verder gaan
Als u meer wilt weten over indices, raden we u sterk aan om de officiële documentatie te lezen.
Fouten over OpenSearch's alleen-lezen indices afhandelen
Soms kan OpenSearch overschakelen naar alleen-lezen modus en kunt u fouten tegenkomen zoals:
- "Flood stage disk watermark exceeded, all indices on this node will be marked read-only"
- "FORBIDDEN/12/index read-only / allow delete (api)"
Deze fouten treden op als onderdeel van het beschermingsmechanisme van OpenSearch wanneer de schijfruimte kritiek laag is. Wanneer de beschikbare schijfruimte onder de 7 GB daalt, stelt OpenSearch indices in op alleen-lezen als voorzorgsmaatregel om gegevenscorruptie te voorkomen.
Als u deze fouten tegenkomt, heeft u twee opties:
- Herconfigureer uw retentiebeleid om minder logs te bewaren. Na het aanpassen van het beleid, verwijdert u de oudste index om schijfruimte vrij te maken en OpenSearch in staat te stellen terug te schakelen naar lees-schrijfmodus. Houd er rekening mee dat het verwijderen van een index betekent dat alle gegevens in die index verloren gaan.
- Upgrade uw instantie naar een met een grotere schijf. Met een enkele klik in uw Stackhero-dashboard zal de instantie opnieuw starten met extra schijfruimte en OpenSearch zal automatisch terugkeren naar lees-schrijfmodus.