【Kafka零基础学习】如何在Kafka Kerberos环境中创建和删除Topic

1、使用基础信息

Kafka版本1.0.1
Zookeeper版本3.4.6
Ranger版本1.1.0
Kerberos版本1.10.3-30
两个账号:启动Kafka服务的kafka账号,和自己创建的个人账号yixt
kinit刷新kerberos缓存

2、创建和删除Topic

2.1、配置jaas.conf

KafkaClient {
com.sun.security.auth.module.Krb5LoginModule required
useTicketCache=true
renewTicket=true
serviceName="kafka";
};

2.2、添加环境变量

export KAFKA_CLIENT_KERBEROS_PARAMS="-Djava.security.auth.login.config=/home/yixt/jaas.conf"

2.3、创建topic

./kafka-topics.sh --create --zookeeper xxx:2181,yyy:2181,zzz:2181/kafka --replication-factor 2 --partitions 1 --topic test

使用yixt账号运行上述命令,将会出现如下错误:

image.png

若没有出现上述问题,出现的现象是创建topic成功的话,则kafka在zookeeper中/config/topics权限有错误。使用zookeeper的getAcl命令可查看权限(图中显示必须要kafka使用sasl方式访问,这是期望的):


image.png

正确创建topic的方式:使用kafka账号创建。

2.4、删除Topic

./kafka-topics.sh --delete --zookeeper xxx:2181,yyy:2181,zzz:2181/kafka --topic test

使用yixt账号运行上述命令,将会出现如下错误:

image.png

若没有出现上述问题,出现的现象是删除topic成功的话,错误原因与创建topic相同。

正确创建topic的方式:使用kafka账号删除。

2.3、参考链接

1、https://community.hortonworks.com/questions/55306/kafka-consumer-problem-on-kerberos-enabled-cluster.html
2、https://community.hortonworks.com/content/supportkb/151827/error-orgapachezookeeperkeeperexceptionnoauthexcep.html
3、https://community.hortonworks.com/content/supportkb/150056/errororgapachezookeeperkeeperexceptionnoauthexcept.html

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • ** 今天看了一下kafka官网,尝试着在自己电脑上安装和配置,然后学一下官方document。** Introd...
    RainChang阅读 5,070评论 1 30
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,280评论 19 139
  • Kafka简介 Kafka是一种分布式的,基于发布/订阅的消息系统。主要设计目标如下: 以时间复杂度为O(1)的方...
    Alukar阅读 3,114评论 0 43
  • Kafka入门经典教程-Kafka-about云开发 http://www.aboutyun.com/threa...
    葡萄喃喃呓语阅读 10,904评论 4 54
  • 每日一我 一个茶叶蛋,一个白馒头,一盒水塔糕, 一杯果汁,一瓶酸奶。 每日一善 上图的水塔糕很好吃。糯米粉发酵做的...
    sophietyl阅读 129评论 0 0