在做es集群的索引定时7天删除的时候
自己写了一个shell脚本
#/bin/bash
#指定日期(7天前)
DATA=`date -d "1 week ago" +%Y.%m.%d`
#当前日期
time=`date`
#删除7天前的
#curl -XGET "http://ip:9200/_cat/indices/?v"|grep $DATA
if [ $? -eq 0 ];then
curl -XDELETE http://ip:9200/*-${DATA}
echo "于 $time 清理 testlog-$DATA 索引!" >> /home/idouall/es-index-sucess-clear.log
echo "清理完毕============="
fi
结果执行的时候一直报一个错
wildcard expressions or all indices are not allowed
查了网上的各种资料,看到如下解释.
然后就把elasticsearch.yml的的action.destructive_requires_name设置为false重启.
发现没卵用.
然后没办法只好自己做完全匹配如下:如下,开始删除下面将自己要删除的前缀和后缀拼成完整的路径文件.就可以删除成功了.