当前位置: 首页 > article >正文

es凌晨自己把索引删除了,包括es自己的索引

如果 Elasticsearch(ES)在凌晨自动删除了包括自身索引在内的大量索引,这是一个比较严重的问题,下面从多个方面分析可能的原因,并给出排查步骤与相应命令。

可能的原因

1. 索引生命周期管理(ILM)策略

ILM 允许根据索引的年龄、大小等条件自动管理索引的生命周期,若策略配置不当,可能导致凌晨触发删除操作。

2. 磁盘压力触发清理

当磁盘空间达到一定阈值,ES 可能会自动删除一些索引以释放空间。

3. 自动快照与清理

如果配置了自动快照并设置了保留策略,当快照过期或磁盘空间不足时,可能会触发索引删除。

4. 集群状态异常

集群出现严重问题时,可能会触发自动恢复机制,其中可能包含删除索引的操作。

排查步骤及命令

1. 检查索引生命周期管理(ILM)策略
# 查看所有 ILM 策略
GET _ilm/policy

# 查看每个索引关联的 ILM 策略
GET _index_template

# 以某个具体索引为例,查看其 ILM 状态
GET <index_name>/_ilm/explain

检查策略中是否存在凌晨执行删除操作的规则,若发现不合理的策略,可根据实际情况修改或删除。

2. 检查磁盘使用情况和磁盘水线配置
# 查看节点磁盘使用情况
GET _nodes/stats/fs

# 查看磁盘水线配置
GET _cluster/settings?include_defaults=true&filter_path=**.disk.*

如果磁盘使用率接近或超过高水线(默认 90%),ES 可能会自动删除索引。可考虑清理磁盘或调整磁盘水线配置。

3. 检查自动快照与清理策略
# 查看快照仓库配置
GET _snapshot

# 查看快照生命周期管理(SLM)策略
GET _slm/policy

确认是否存在凌晨执行快照清理的策略,若有,可根据业务需求调整保留期限或清理规则。

4. 分析集群健康状态和事件日志
# 查看集群健康状态
GET _cluster/health

# 查看集群状态变更历史
GET _cluster/state?filter_path=metadata.version,blocks,state_uuid,master_node,cluster_uuid,routing_table,routing_nodes

# 查看 ES 日志文件,查找凌晨时段的异常信息
grep 'YYYY-MM-07T00:00:00.000' /var/log/elasticsearch/elasticsearch.log

YYYY-MM-07T00:00:00.000 替换为凌晨具体时间范围,检查是否有与索引删除相关的错误或警告信息。

5. 检查系统定时任务
# 查看系统定时任务
crontab -l

# 查看 ES 服务相关的 systemd 定时器
systemctl list-timers --all

确认是否存在凌晨执行的与 ES 相关的定时任务,可能是脚本错误导致索引删除。

6. 检查安全配置和权限

确保 ES 的安全配置和用户权限设置正确,防止恶意操作或误操作。可查看用户角色和权限配置:

GET _security/role
GET _security/user

通过以上步骤的排查,应该能够找出 ES 自动删除索引的原因,并采取相应的措施进行修复和预防。

😁 作者:Teddy (公众号:码尚云软件)
ok!到这里就大功告成,小编(Teddy)在这里先感谢大家的到来。
虽然不是太详细,小编已经很努力,给小编来个一键三连(点赞,关注,收藏),小编会越来越努力。。。


http://www.kler.cn/a/544400.html

相关文章:

  • 爬虫开发需要哪些Java库?
  • 在 Navicat 17 中扩展 PostgreSQL 数据类型 - 范围类型
  • 哈希表-两个数的交集
  • 用php tp6对接钉钉审批流的 table 表格 明细控件 旧版sdk
  • [概率论] 随机变量
  • k8s管理工具之lens
  • 【STM32】输入捕获实现超声波测距
  • 大模型基本原理(四)——如何武装ChatGPT
  • 四、自然语言处理_08Transformer翻译任务案例
  • 【已解决】lxml.etree.ParserError: Document is empty
  • ChatGPT macOS 桌面应用让你的编程体验更上一层楼
  • 全面解析鸿蒙(HarmonyOS)开发:从入门到实战,构建万物互联新时代
  • Cables Finance 构建集成LST与外汇RWA永续合约的综合性DEX
  • 如何启用 Apache Rewrite 重写模块 ?
  • 在ArcGIS JS API中使用WebGL实现波纹扩散特效
  • 先进制造aps专题二十九 基于ai智能体的生产排程和工厂生产仿真引擎的设计
  • 【分布式理论10】分布式互斥算法最佳实现:分布式锁的原理与实现
  • 【GitHub】装修个人主页
  • Golang常见面试题
  • hadoop之MapReduce:片和块
  • 分发饼干(力扣455)
  • Spring Cloud Gateway:构建高效微服务网关的利器
  • 3.Excel:销售主管大华-前两季度-销售情况❗(16)
  • 排序函数集合:冒泡排序、选择排序、插入排序、快速排序、归并排序、桶排序
  • 如何使用 CSS 隐藏元素
  • 【MySQL例题】我在广州学Mysql 系列——有关数据备份与还原的示例