首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过kafka-python将消息发布到融合云集群

通过kafka-python将消息发布到融合云集群
EN

Stack Overflow用户
提问于 2019-01-25 22:11:58
回答 1查看 547关注 0票数 2

我使用kafka-python包将消息发布到kafka confluent云集群。

我的代码如下所示:

代码语言:javascript
复制
    from kafka import KafkaProducer
    producer=KafkaProducer(
                    bootstrap_servers='pkc-epgnk.us-central1.gcp.confluent.cloud:9092',
                    security_protocol='SASL_SSL',
                    sasl_mechanism='PLAIN',
                    ssl_certfile='/usr/local/etc/openssl/cert.pem',
                    sasl_plain_username='[api_key]',
                    sasl_plain_password='[api_secret]')

    producer.prodcue(topic='file-ingestion',key=b'',value=b'test')

运行上面的代码,我得到了下面的错误:

代码语言:javascript
复制
kafka.errors.NoBrokersAvailable: NoBrokersAvailable

confluent kafka手册建议我为C/C++生产者设置以下值;但是,我不能通过kafka-python生产者来设置所有值

代码语言:javascript
复制
bootstrap.servers=pkc-epgnk.us-central1.gcp.confluent.cloud:9092
api.version.request=true
broker.version.fallback=0.10.0.0
api.version.fallback.ms=0
sasl.mechanisms=PLAIN
security.protocol=SASL_SSL
ssl.ca.location=/usr/local/etc/openssl/cert.pem
sasl.username=<CLUSTER_API_KEY>
sasl.password=<CLUSTER_API_SECRET>
EN

回答 1

Stack Overflow用户

发布于 2019-01-26 06:52:33

相反,您可以使用confluent-kafka-python客户端来设置这些属性,并在产品之间进行更好的集成和经过测试的支持

Example code from Github

代码语言:javascript
复制
from confluent_kafka import Producer, Consumer

p = Producer({
    'bootstrap.servers': '<ccloud bootstrap servers>',
    'broker.version.fallback': '0.10.0.0',
    'api.version.fallback.ms': 0,
    'sasl.mechanisms': 'PLAIN',
    'security.protocol': 'SASL_SSL',
    'sasl.username': '<ccloud key>',
    'sasl.password': '<ccloud secret>'
})
票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54366984

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档