天天看點

清理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的索引政策從隻讀改為可寫入

繼續閱讀