FusionInsight Kafka删除Topic失败原因及解决方案
一、无权限
创建Topic会报错“ERROR kafka.admin.AdminOperationException: Error while deleting topic topicName
解决办法是使用具有kafkaadmin权限的用户。
二、“topic.enable”配置为false
FusionInsight Manager页面“集群->Kafka->配置->全部配置”查看Kafka服务端delete.topic.enable参数配置。
如果参数设置为false,改为true后保存并重启kafka服务。
三、节点异常或节点磁盘下线或数据目录异常
1. 节点异常
FusionInsight Manager页面“集群->Kafka->实例”查看各个实例状态是否是良好。
2. 磁盘下线
FusionInsight Manager有没有“数据目录状态异常”的告警。Topic副本所在节点server.log日志中搜“offline”关键字和“checkpoint file”关键字查看磁盘是否下线或因checkpoint文件问题没有上线。搜“cannot allocate memory”关键字查看是否内存不足导致。搜“No space left”关键字查看是否磁盘写满。
注意:出现“数据目录状态异常”的告警后,只有重启告警节点才可以使磁盘重新上线。
3. 数据目录权限异常
节点上Kafka数据目录(一般是“/srv/BigData/kafka/dataX/kafka-logs”)目录权限是否正常。
四、删除后又自动创建Topic
FusionInsight Manager页面“集群->Kafka”查看controller所在主机节点,此节点上Kafka日志目录中查看controller.log,如果日志中有“Deletion of topic topicName successfully completed”和“New topics: [Set(topicName)]”说明topic又被自动创建。
五、Controller未执行删除
如果controller.log日志中只有“Starting topic deletion”日志而未打印具体的执行成功或失败的日志,可尝试切controller,步骤如下:
1. 进FI客户端(例如/opt/hadoopclient)
2. 执行zkCli.sh -server zk业务IP:24002/kafka
3. 执行get /controller
4. 若获取到controller信息,执行deleteall /controller和get /controller。
- 点赞
- 收藏
- 关注作者
评论(0)