首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

0501-使用Python访问Kerberos环境下的Kafka(二)

温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。

Fayson的github:

https://github.com/fayson/cdhproject

提示:代码块部分可以左右滑动查看噢

1

文档编写目的

在前面的文章Fayson介绍了一种Python访问Kerberos环境下Kafka的文章,参考《

0500-使用Python2访问Kerberos环境下的Kafka

》,本篇文章主要介绍另一种方式访问Kerberos环境下的Kafka。

在学习本篇文章内容前你还需要知道《如何通过Cloudera Manager为Kafka启用Kerberos及使用》。

内容概述:

1.环境准备

2.Python2示例代码

3.访问验证

4.总结

测试环境:

1.操作系统:Redhat7.4

2.CM和CDH版本为5.15.0

3.CDK2.2.0(0.10.2)

4.Python 2.7.15

2

环境准备

在使用Python访问Kafka前,还需要为Python环境安装相关的Kafka包,这里Fayson使用官网推荐使用的kafka-python依赖包。该依赖包的GitHub地址为:

https://github.com/dpkp/kafka-python,关于kafka-python的详细说明可以参考GitHub。

接下来准备Python访问Kafka的运行环境。

1.安装操作系统依赖包

2.安装gssapi依赖包,该依赖包为Python访问Kerberos环境的模块

3.安装kafka-python依赖包

3

Python2示例代码

1.如下为Python2访问Kerberos环境下Kafka示例代码

2.关于Kafka支持的属性配置可以参考如下地址

https://github.com/dpkp/kafka-python/blob/master/kafka/producer/kafka.py

4

访问验证

本文提供的示例代码为向Kerberos环境Kafka的test Topic中发送消息,在命令行使用Kafka提供的kafka-console-consumer命令消费Python示例生产的消息。

1.准备客户端消费配置文件

jaas.conf内容如下:

client.properties内容如下:

2.在命令行运行如下脚本启动客户端消费

3.在命令行运行python2的示例代码向test发送100条“some_message_bytes”消息

4.查看Kafka消费程序接收到两条消息

5

总结

1.kafka-python依赖包需要Python的环境有2.7、3.4、3.5、3.6

2.如果使用kafka-python访问Kerberos环境下的Kafka,需要安装gssapi依赖包,使用pip方式安装即可。

3.相较于之前的访问方式,该方式会更简单一些,Python的依赖包不会显得太复杂。

提示:代码块部分可以左右滑动查看噢

为天地立心,为生民立命,为往圣继绝学,为万世开太平。

温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190103B1HMQE00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券