İçerik Tablosu
- Graylog’da İndekslerin Otomatik Silinmesi ve Yönetimi
- 1. Retention Policy ile Otomatik Silme Ayarı
- Adım 1: İndeks Setlerini Yapılandırma
- Adım 2: Retention Policy Ayarları
- Adım 3: Parametreleri Belirleme
- Adım 4: Değişiklikleri Kaydetme
- 2. Manuel Silme İşlemini Tetiklemek
- Graylog Arayüzünden Manuel Silme
- Elasticsearch REST API ile Manuel Silme
- Kilitli İndekslerin Silinmesi
- 3. Disk Kullanımını Yönetmek İçin Elasticsearch Ayarları
- 4. Cronjob ile Silme İşlemini Otomatik Hale Getirme
- Sonuç
Graylog’da İndekslerin Otomatik Silinmesi ve Yönetimi
Graylog, log yönetimi ve analiz süreçlerinde güçlü bir araçtır. Ancak zamanla sistemde biriken log verileri, disk kullanımını artırarak performans sorunlarına yol açabilir. Bu sorunun önüne geçmek için Graylog üzerinde indekslerin otomatik olarak silinmesini sağlayan bir Retention Policy (Tutma Politikası) yapılandırabilirsiniz. Bu makalede, Graylog’da indekslerin otomatik silinmesini nasıl ayarlayacağınızı ve gerektiğinde silme işlemini manuel olarak nasıl tetikleyeceğinizi adım adım açıklıyoruz.
1. Retention Policy ile Otomatik Silme Ayarı
Graylog, belirli bir yaşa ulaşan veya disk sınırını aşan indeksleri otomatik olarak temizlemenize olanak tanır. Bu işlemi gerçekleştirmek için aşağıdaki adımları izleyebilirsiniz:
Adım 1: İndeks Setlerini Yapılandırma
- Graylog web arayüzüne giriş yapın (
http://<sunucu-adresi>:9000
). - Ana menüden System > Indices kısmına gidin.
- Var olan bir indeks setini seçin veya yeni bir indeks seti oluşturun.
Adım 2: Retention Policy Ayarları
İndeks seti ayarlarında Retention Strategy bölümünde şu stratejileri kullanabilirsiniz:
- Delete: Belirli bir yaşı veya maksimum indeks sayısını aşan indeksler otomatik olarak silinir.
- Disk-Based Retention: Disk kullanım sınırı aşıldığında eski indeksler temizlenir.
Adım 3: Parametreleri Belirleme
- Maximum number of indices: Maksimum tutulacak indeks sayısını belirler. Bu sınır aşıldığında eski indeksler otomatik olarak silinir.
- Index Time-to-Live (TTL): İndekslerin saklanma süresini gün cinsinden belirler (örn. 30 gün).
Adım 4: Değişiklikleri Kaydetme
Yapılandırmayı tamamladıktan sonra değişiklikleri kaydedin. Bundan sonra Graylog, ayarladığınız stratejiye uygun olarak eski indeksleri otomatik olarak temizleyecektir.
2. Manuel Silme İşlemini Tetiklemek
Otomatik işlemlerin dışında, manuel bir müdahale gerekirse aşağıdaki yöntemleri uygulayabilirsiniz:
Graylog Arayüzünden Manuel Silme
- Graylog web arayüzünde System > Indices kısmına gidin.
- İlgili indeks setini seçin ve eski indeksleri listeden manuel olarak silin.
Elasticsearch REST API ile Manuel Silme
Elasticsearch API’sini kullanarak indeksleri temizleyebilirsiniz:
- Elasticsearch üzerindeki indekslerin listesini alın:
curl -X GET "http://<elasticsearch-ip>:9200/_cat/indices?v"
- Belirli bir indeksi silmek için şu komutu kullanın:
curl -X DELETE "http://<elasticsearch-ip>:9200/<indeks_ismi>"
Örnek:
curl -X DELETE "http://192.168.0.104:9200/graylog_7"
Kilitli İndekslerin Silinmesi
Eğer indeksler kilitli durumda ise önce kilidi kaldırmanız gerekir:
curl -X PUT "http://<elasticsearch-ip>:9200/_all/_settings" -H 'Content-Type: application/json' -d '{"index.blocks.read_only_allow_delete": null}'
Bu işlemin ardından indeksleri yukarıdaki komutla silebilirsiniz.
3. Disk Kullanımını Yönetmek İçin Elasticsearch Ayarları
Disk sınırına ulaşıldığında Elasticsearch otomatik olarak indeksleri kilitler. Bu sorunu önlemek için Elasticsearch’de disk kullanım limitlerini ayarlayın:
/etc/elasticsearch/elasticsearch.yml
dosyasına şu satırları ekleyin:
cluster.routing.allocation.disk.watermark.low: "85%" # Uyarı seviyesi
cluster.routing.allocation.disk.watermark.high: "90%" # İndeksler kilitlenir
cluster.routing.allocation.disk.watermark.flood_stage: "95%" # Silme başlar
- Elasticsearch hizmetini yeniden başlatın:
sudo systemctl restart elasticsearch
4. Cronjob ile Silme İşlemini Otomatik Hale Getirme
Manuel işlemleri otomatikleştirmek için bir cronjob kullanabilirsiniz. Örneğin, her gece eski indeksleri silmek için:
- Cronjob dosyasını düzenleyin:
crontab -e
- Aşağıdaki komutu ekleyin (örneğin, her gece saat 03:00’te çalışacak şekilde):
0 3 * * * curl -X DELETE "http://192.168.0.104:9200/graylog_7"
Sonuç
Graylog’da indeks yönetimi, hem disk alanınızı verimli kullanmak hem de sistem performansını korumak için önemlidir. Bu makaledeki adımları uygulayarak log verilerinizi etkin bir şekilde yönetebilir ve sistem kaynaklarınızı optimize edebilirsiniz. Eğer sorularınız varsa veya daha fazla yardıma ihtiyaç duyuyorsanız, yorum bölümünden bize ulaşabilirsiniz!
No Comment! Be the first one.