原有的方法在2.0版本中已经删除了,提供了delete by query
插件来实现这个功能。这个插件的使用过程大致如下:
1.安装。打开命令行,切到Elasticsearch文件夹中,运行如下命令:
sudo bin/plugin install delete-by-query
成功安装后,结果如下:
集群环境下必须在每个结点上安装,安装之后要重启结点才能使这个插件生效。
2.安装和重启之后就可以像2.0以前的版本一样使用delete by query了。
3.执行删除命令
curl -XDELETE 'https://10.0.21.xx:9200/applog/logs/_query?pretty' -d '
{
"query": {
"filtered": {
"filter": {
"range": {
"@timestamp": {
"lte": "2016-11-21"
}
}
}
}
}
}'
4.合并
curl -XPOST 'https://10.0.21.xx:9200/applog/_optimize?max_num_segments=1'
大功告成