apache-kafka - Kafka 在尝试访问磁盘上的日志文件时抛出异常磁盘错误
问题描述
我的 Kafka 集群(10 个节点,5 个 zk 节点)突然抛出磁盘错误异常如下:
ERROR [ReplicaFetcher replicaId=196790673,
leaderId=196790680, fetcherId=0]
Error for partition test-topic-23 at offset 1012839
(kafka.server.ReplicaFetcherThread)
org.apache.kafka.common.errors.KafkaStorageException:
Disk error when trying to access log file on the disk
所以我的 Kafka 生产者和消费者失败了,但我仍然可以创建一个具有 36 个分区和 2 个副本的新主题,并且我可以从新主题中写入/读取。当我尝试在命令行中读/写旧主题时,有时好有时失败。
我也尝试在磁盘上创建一个文件/文件夹,也可以。所以我很困惑为什么 Kafka 会抛出磁盘错误异常。
解决方案
这听起来很明显,但是要检查是否出现磁盘错误,首先要检查的是磁盘。它是否已损坏,或者可能只是一个完整的分区?
另请注意,磁盘可能仍然可以工作一点,或者您可能有多个磁盘,因此像“我仍然可以使用某些磁盘”这样的测试不会提供太多信息。
推荐阅读
- python - UnicodeEncodeError AND TypeError:只能将 str(不是“字节”)连接到 str
- r - 投资组合回测的风险价值
- angular - Ionic V4 - Build Prod “找不到 cordova.js 脚本标签。插件加载可能失败。”
- php - 以编辑形式管理现场人口
- oracle - 如何计算在某个日期 (M) 之前的某个日期 (X) 创建并在 (M) 之后解决的票证 (Tickets)
- java - 感兴趣的是最新版本的 JDK 不包含 tools.jar 以及在哪里可以找到它
- java - 如何在 Java 应用程序代码中构建参数化密码查询?
- drools - 是否有支持将 Drools 规则导出到 XML 的方法
- audio - Flutter:为后台执行安排音频事件
- list - 我有以下字符串列表,但我想应用过滤器,以便我可以从列表中获取某些项目。如何做到这一点?