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

通过kafka python将消息发布到融合云集群,python,apache-kafka,kafka-python,Python,Apache Kafka,Kafka Python,我正在使用kafka python包将消息发布到kafka confluent云集群 我的代码如下所示: from kafka import KafkaProducer producer=KafkaProducer( bootstrap_servers='pkc-epgnk.us-central1.gcp.confluent.cloud:9092', security_protocol='SASL_S

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

我的代码如下所示:

    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')
运行上述代码时,我得到以下错误:

kafka.errors.NoBrokersAvailable: NoBrokersAvailable
合流的卡夫卡手册建议我为C/C++生产者设置以下值;但是,我不能由kafka python制作人设置所有值

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>
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.机构=普通
security.protocol=SASL\u SSL
ssl.ca.location=/usr/local/etc/openssl/cert.pem
sasl.username=
密码=

您可以使用融合的kafka python客户端来设置这些属性,并在产品之间实现更好的集成和测试支持

来自confluent_kafka进口生产商、消费者
p=生产者({
“bootstrap.servers”:“,
'broker.version.fallback':'0.10.0.0',
“api.version.fallback.ms”:0,
“sasl.Mechanism”:“普通”,
“security.protocol”:“SASL_SSL”,
'sasl.username':'',
“sasl.password”:”
})

您可以使用融合的kafka python客户端来设置这些属性,并在产品之间实现更好的集成和测试支持

来自confluent_kafka进口生产商、消费者
p=生产者({
'引导服务器':“”,
'broker.version.fallback':'0.10.0.0',
“api.version.fallback.ms”:0,
“sasl.Mechanism”:“普通”,
“security.protocol”:“SASL_SSL”,
'sasl.username':'',
“sasl.password”:”
})

这实际上并没有回答如何使用
kafka-python
library实现这一点的问题,因此我们无法使用python-kafka连接到融合的kafka??有人使用kafka python包连接了吗?@Arpan没有“合流kafka”这样的东西。一切都是阿帕奇·卡夫卡。这是我使用过的唯一一个Python库,因此这是我的答案。如果您有特定错误,请创建自己的错误post@cricket_007我使用了kafka python库和confluent kafka库。有了PythonKafta,我就可以获得本文提到的NoBrokerAvailable,有了confluent kafka包,我就可以连接了。是不是很奇怪@ArpanSharma听起来好像你有网络或证书问题。这不是卡夫卡或合流云问题。这并不能回答如何使用
Kafka python
Library实现这一点的问题,因此我们无法使用python卡夫卡连接到合流卡夫卡??有人使用kafka python包连接了吗?@Arpan没有“合流kafka”这样的东西。一切都是阿帕奇·卡夫卡。这是我使用过的唯一一个Python库,因此这是我的答案。如果您有特定错误,请创建自己的错误post@cricket_007我使用了kafka python库和confluent kafka库。有了PythonKafta,我就可以获得本文提到的NoBrokerAvailable,有了confluent kafka包,我就可以连接了。是不是很奇怪@ArpanSharma听起来好像你有网络或证书问题。这不是卡夫卡或合流云问题。@luckylukee您是否使用
Kafka python
package连接到合流云卡夫卡?@luckylukee是否使用
Kafka python
package连接到合流云卡夫卡?
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>'
})