天天看点

清理ELASTICSEARCH索引清理ELASTICSEARCH索引

清理ELASTICSEARCH索引

前景提要:elastic search在使用一段时间后,会产生很多索引数据。在长时间不处理,会产生很多旧索引,当然也可能是其他日志文件造成的。ES数据所在目录磁盘空间使用率超过90%(不改配置是90%)后,ES将修改为只读状态,导致ES不允许写入。

方法一

直接手动清除指定日期之前的索引

curl --user username:password -XDELETE http://127.0.0.1:9200/*-${DATA}

方法二

设置定时器清理(推荐)

#/bin/bash
#指定日期(14天前)
DATA=`date -d "2 week ago" +%Y.%m.%d`
#当前日期
time=`date`
#删除14天前的日志
curl --user username:password  -XDELETE http://127.0.0.1:9200/*-${DATA}
if [ $? -eq 0 ];then
echo $time"-->del $DATA log success.." >> /home/ect/elasticsearch-7.8.0/tmp/es-index-clear.log
else
echo $time"-->del $DATA log fail.." >> /home/ect/elasticsearch-7.8.0/tmp/es-index-clear.log
fi
~  
           
crontab -e
0 0 * * * sh /opt/server/cron/delete_elasticsearch_data.sh > /dev/null 2>&1
           

*重点:这里有个知识点,不管你通过什么方式清理磁盘,都需要重新将elastic search的索引策略从只读改为可写入

继续阅读