ElasticSearch 定时删除3个月以上的索引
时间: 2024-09-27 13:07:29 浏览: 79
Nodejs实现自动清理elasticsearch过期索引(日志清理)
5星 · 资源好评率100%
Elasticsearch 提供了一个功能叫做“生命周期管理”(Lifecycle Management),可以设置索引的生命周期策略,包括自动过期和删除。为了定期删除3个月以上的旧索引,你可以创建一个索引模板,配置它的`expire_after_days`属性。
以下是步骤:
1. 首先,登录到Elasticsearch的簇,并使用REST API或者Kibana的Dev Tools创建或更新索引模板:
```json
PUT /_template/my_template
{
"template": "*",
"settings": {
"index.lifecycle.name": "my_expiry_policy", // 策略名称
"index.lifecycle.expire_after": "3m" // 删除索引后的天数,这里是3个月
}
}
```
2. 上述配置表示所有新创建的索引都将遵循这个策略,`*`通配符代表所有索引。
3. 当一个索引的年龄超过3个月(按自然日计算),Elasticsearch会按照策略将其归档或删除(取决于你的配置)。注意,这不会立即删除索引数据,而是将它们移到一个不可搜索的状态,直到完全从缓存中清除。
阅读全文