通过es索引生命周期策略删除日志索引

通过es索引生命周期策略删除日志索引

在es 7.x版本之后,多了个索引生命周期的概念,可以一系列的设置,给新生成的索引绑定生命周期策略,到期后,索引自动删除。

也可以通过linux定时任务实现,请查看另一篇文章《通过linux定时任务删除es日志索引》

流程

  • 创建索引生命周期策略
  • 创建索引模板,与生命周期策略绑定,匹配新生成的索引,关联索引生命周期

操作

下面的操作也可以通过kibana来完成

创建索引生命周期策略

创建名称为auto_delete_policy 索引生命周期策略,索引7天后,自动删除。测试时,可以设置策略时间短点。

json 复制代码
PUT /_ilm/policy/auto_delete_policy
{
	"policy": {
		"phases": {
			"delete": {
				"min_age": "7d",
				"actions": {
					"delete": {}
				}
			}
		}
	}
}

查询索引生命周期策略

复制代码
GET /_ilm/policy/auto_delete_policy

创建索引模板

索引模板作为中间桥梁,把索引生命周期策略和索引关联起来,这里匹配 my、index 开头,新生成的索引

json 复制代码
PUT _template/elk_template

{
	"index_patterns": [
		"my*",
		"index*"
	],
	"template": {
		"settings": {
			"index": {
				"lifecycle": {
					"name": "auto_delete_policy",
					"indexing_complete": "true"
				}
			}
		}
	}
}

创建索引模板(elk_tempalte),index.lifecycle.name 把上面的自动删除策略绑定到elk索引模板

后来新生成 my-、index- 开头的索引时就会应用这个模板。

indexing_complete:true,必须设为true,跳过HOT阶段的Rollover

查询索引模板

复制代码
GET _template/elk_template

测试

测试设置

生命周期策略默认10分钟检测一次,为了方便测试,这里设为30s。后面改回来就可以了。

json 复制代码
PUT /_cluster/settings
{
	"transient": {
		"indices.lifecycle.poll_interval": "30s"
	}
}

查看索引

查看新生成的索引,有没有关联到索引生命周期策略,

这里查看my-开头的索引情况

复制代码
GET my-*/_ilm/explain

返回

json 复制代码
{
	"indices": {
		"my-2023.08.30": {
			"index": "my-2023.08.30",
			"managed": true,
			"policy": "auto_delete_policy",
			"lifecycle_date_millis": 1693357650166,
			"age": "3.35d",
			"phase": "new",
			"phase_time_millis": 1693357650194,
			"action": "complete",
			"action_time_millis": 1693357650194,
			"step": "complete",
			"step_time_millis": 1693357650194,
			"phase_execution": {
				"policy": "auto_delete_policy",
				"version": 1,
				"modified_date_in_millis": 1692951002180
			}
		}
	}
}

参考官网索引管理章节

相关推荐
ShawnLiaoking4 小时前
pycharm 上传更新代码
ide·elasticsearch·pycharm
果粒蹬i6 小时前
Elasticsearch 单机部署实测:安装流程、常见坑点与远程访问配置
大数据·elasticsearch·搜索引擎
AC赳赳老秦6 小时前
OpenClaw数据库高效操作指南:MySQL/PostgreSQL批量处理与数据迁移实战
大数据·数据库·mysql·elasticsearch·postgresql·deepseek·openclaw
历程里程碑8 小时前
二叉树---二叉树的中序遍历
java·大数据·开发语言·elasticsearch·链表·搜索引擎·lua
Elastic 中国社区官方博客9 小时前
使用 Elasticsearch + Jina embeddings 进行无监督文档聚类
大数据·人工智能·elasticsearch·搜索引擎·全文检索·jina
ACGkaka_14 小时前
ES 学习(九)从文本到词元:分词器如何“拆解“你的数据
大数据·学习·elasticsearch
Elastic 中国社区官方博客15 小时前
如何使用 LogsDB 降低 Elasticsearch 日志存储成本
大数据·运维·数据库·elasticsearch·搜索引擎·全文检索·可用性测试
A__tao15 小时前
一键实现 SQL 转 Elasticsearch Mapping(支持字段注释 + meta 描述)
数据库·sql·elasticsearch
老纪的技术唠嗑局1 天前
告别OpenClaw配置丢失——Mindkeeper内测版邀测
大数据·elasticsearch·搜索引擎
Elasticsearch1 天前
使用 Elasticsearch + Jina embeddings 进行无监督文档聚类
elasticsearch