请教:Python模块KafkaConsumer会被Kerberos的状态影响嘛?
请教大家一下Kafka队列和Kerberos票据的问题。
我在运行一段python代码的时候,
from kafka import KafkaConsumer, KafkaProducer
import ssl
...
context = ssl.create_default_context()
context.verify_mode = ssl.CERT_REQUIRED
context.load_verify_locations(self.ssl_cafile)
context.load_cert_chain(certfile=self.ssl_certfile, keyfile=self.ssl_keyfile)
context.options &= ssl.OP_NO_TLSv1
context.options &= ssl.OP_NO_TLSv1_1
return KafkaConsumer (self.inbound_topic, group_id=self.group_id, bootstrap_servers=json.loads(self.bootstrap_servers),
auto_offset_reset=self.auto_offset_reset,
security_protocol=self.security_protocol,
sasl_mechanism=self.sasl_mechanism,
ssl_context=context,
api_version=(0,10))
当正常用kinit设定Kerberos时,以上代码运行良好。但是,一旦我指定了Kerberos的生存周期,比如kinit "-l 15s",那么15秒之后以上代码停滞在return KafkaConsumer那里不动。
这个问题对我的project非常重要,因为涉及到多久refresh一次Kerberos的问题。我本来的设想是:在0~14秒之间,所有return KafkaConsumer所需要的参数已经设置好了,print一下self.bootstrap_servers等等也都正常。那么即使第15秒Kerberos失效,所有return KafkaConsumer所需要的参数不该随之失效。但是,现在看来不是这样。可是我也说不清为什么……
请问Python模块KafkaConsumer会被Kerberos的状态影响嘛?谢谢了先!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论