背景
日志分析平台对网络设备和服务器日志进行收集时发现索引数据按天归档单个索引的大小能控制在1G 以内,ELk集群产生的索引数量过多,于是决定将索引数据归档规则改为按周归档。
索引按天归档
代码语言:javascript复制index => "networklogs-%{ YYYY.MM.dd}"
索引按周归档
代码语言:javascript复制index => "ism-prod-networklogs-%{ YYYY.ww}"
数据格式
Today is 2020年12月23日,2020年的第52个周!
索引管理
使用 shell 进行索引周期管理(删除两周前的索引)
代码语言:javascript复制#!/usr/bin/bash
t1=`date -d "-2 week" "%V"`
date=`date %Y`
curl -u elastic:R4a873O589Xt4HKcFPY2 -XGET http://192.168.99.185:9200/_cat/indices | awk -F" " '{print $3}' | awk -F"-" '{print $NF}' | egrep -v "[0-9]*.[0-9]*.[0-9]*" | sort | uniq | egrep "[0-9]*.[0-9]" | awk -F"." '{print $2}' | while read LINE
do
if [ $LINE -le $t1 ]; then
echo "$LINE时间早于$t1,进行索引删除"
curl -u elastic:R4a873O589Xt4HKcFPY2 -XDELETE http://192.168.99.185:9200/*-$date.$LINE
fi
done
删除前
运行bash 脚本
删除后