kafka python ssl对python的支持< v2.7.9(没有属性'sslcontext')

byqmnocz  于 2021-06-08  发布在  Kafka
关注(0)|答案(1)|浏览(322)

尝试使用ssl连接到kafka时 kafka-python 我收到以下错误:

Traceback (most recent call last):
  File "server.py", line 23, in <module>
    kafka_producer = SimpleKafkaProducer()
  File "/my-service/kafka_producer.py", line 28, in __init__
    self.producer = KafkaProducer(**kafka_config)
  File "./ve/lib/python2.7/site-packages/kafka/producer/kafka.py", line 266, in __init__
    client = KafkaClient(**self.config)
  File "./ve/lib/python2.7/site-packages/kafka/client_async.py", line 130, in __init__
    self._bootstrap(collect_hosts(self.config['bootstrap_servers']))
  File "./ve/lib/python2.7/site-packages/kafka/client_async.py", line 158, in _bootstrap
    bootstrap.connect()
  File "./ve/lib/python2.7/site-packages/kafka/conn.py", line 149, in connect
    self._wrap_ssl()
  File "./ve/lib/python2.7/site-packages/kafka/conn.py", line 207, in _wrap_ssl
    self._ssl_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23)  # pylint: disable=no-member
AttributeError: 'module' object has no attribute 'SSLContext'

我有 python v2.7.3 跑步(debian 7喘息) ssl.SSLContex 属性是从中添加的 python v2.7.9 似乎ssl支持 kafka-python 是从v1.1.0引入的,但它需要python版本>=v2.7.9,因为 ssl.SSLContext 使用。
有没有一种方法可以使用较低版本的python和ssl启动与ssl的连接 kafka-python ?
还是绕开这个?
也许有人可以推荐另一个支持到kafka的ssl连接并支持python版本=<2.7.3的包。

p8ekf7hl

p8ekf7hl1#

不,这是不可能的 kafka-python 除非你自己修补。相反,我强烈建议升级到较新版本的python2.7,因为python2.7版本相当旧,并且可能有多个安全漏洞(如果您尝试使用ssl,我认为这对您很重要)

相关问题