1.33. Thanos compactor 的块错误故障排除


您可能会收到一个块错误消息,表示 Thanos compactor 的块已损坏。

1.33.1. 症状:Thanos compactor 的 Block 错误

升级 Red Hat Advanced Cluster Management for Kubernetes 后,并使用 oc logs observability-thanos-compact-0 命令检查 Thanos compactor 的日志,日志会显示以下出错信息:

ts=2024-01-24T15:34:51.948653839Z caller=compact.go:491 level=error msg="critical error detected; halting" err="compaction: group 0@15699422364132557315: compact blocks [/var/thanos/compact/compact/0@15699422364132557315/01HKZGQGJCKQWF3XMA8EXAMPLE /var/thanos/compact/compact/0@15699422364132557315/01HKZQK7TD06J2XWGR5EXAMPLE /var/thanos/compact/compact/0@15699422364132557315/01HKZYEZ2DVDQXF1STVEXAMPLE /var/thanos/compact/compact/0@15699422364132557315/01HM05APAHXBQSNC0N5EXAMPLE]: populate block: chunk iter: cannot populate chunk 8 from block 01HKZYEZ2DVDQXF1STVEXAMPLE: segment index 0 out of range"
Copy to Clipboard Toggle word wrap

1.33.2. 解决问题: 添加 thanos bucket verify 命令

在对象存储配置中添加 thanos bucket verify 命令。完成以下步骤:

  1. 通过在对象存储配置中添加 thanos bucket verify 命令来解决块错误。使用以下命令在 observability-thanos-compact pod 中设置配置:

    oc rsh observability-thanos-compact-0
    [..]
    thanos tools bucket verify -r --objstore.config="$OBJSTORE_CONFIG" --objstore-backup.config="$OBJSTORE_CONFIG" --id=01HKZYEZ2DVDQXF1STVEXAMPLE
    Copy to Clipboard Toggle word wrap
  2. 如果上一个命令不起作用,则必须标记块以进行删除,因为它可能会损坏。运行以下命令:

    thanos tools bucket mark --id "01HKZYEZ2DVDQXF1STVEXAMPLE" --objstore.config="$OBJSTORE_CONFIG" --marker=deletion-mark.json --details=DELETE
    Copy to Clipboard Toggle word wrap
  3. 如果您阻止删除,请运行以下命令清理标记的块:

    thanos tools bucket cleanup --objstore.config="$OBJSTORE_CONFIG"
    Copy to Clipboard Toggle word wrap
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部