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