es清理脚本

#/bin/bash 

# 清理30天前的日格式的索引
CLEAR_TIME=`date -d "30 day ago" +%Y%m%d`
#CLEAR_TIME=`date +%Y%m%d`
TODAY=$(date +%F-%H:%M)
ES_Clear_Dir=/data/elasticsearch
ES_IP=192.168.1.100
ES_PORT=9200

#查找匹配清理日期的索引
curl -s -XGET $ES_IP:$ES_PORT/_cat/indices | awk '{print $3}' | grep $CLEAR_TIME > $ES_Clear_Dir/index.$CLEAR_TIME

echo ">>>>>>>>>>于 $TODAY 开始清理"$CLEAR_TIME"的索引<<<<<<<<<<" >> $ES_Clear_Dir/es_clear.log

for i in `cat $ES_Clear_Dir/index.$CLEAR_TIME`
    do
    sleep 3
    curl -s -XDELETE $ES_IP:$ES_PORT/$i
done

echo  ">>>>>>>>>>清理完成<<<<<<<<<<" >> $ES_Clear_Dir/es_clear.log

find $ES_Clear_Dir -name "index.20*" -type f -mtime 30 -exec rm -rf {} \;

echo -e "\n" >> $ES_Clear_Dir/es_clear.log

posted @   安生丶  阅读(58)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示