我正在寻找一个无服务器框架(免费),在那里我可以创建一个kafka触发器,当触发时,kube函数将被调用(python)
我已经尝试过nuclio,但问题是我的kafka版本更高,他们不支持高于2.4的版本。
我想要这样的东西:
apiVersion: "nuclio.io/v1beta1"
kind: "NuclioFunction"
spec:
runtime: "python:3.6"
handler: NuclioKafkaHandler:consumer
minReplicas: 1
maxReplicas: 1
triggers:
myKafkaTrigger:
kind: kafka-cluster
attributes:
initialOffset: earliest
topics:
- nuclio
brokers:
- kafka-bootstrap:9092
consumerGroup: Consumer和kube函数,如:
def consumer(context, event):
context.logger.debug(event.body)
print(event.trigger.kind)就像这两个文件一样简单,我已经有了kafka集群,所以我只想在上面有触发器。
除了核之外,还有什么可能的替代方案?我调查了kubeless似乎很复杂。裂变不支持python。
发布于 2020-08-07 17:22:10
我对Nuclio了解不多,但是你所描述的使用Knative的场景看起来是可能的。
最简单的方法是,你可以为你的消费者创建一个Knative Service。对于Kafka部分,您可以使用KafkaSource将事件放入Knative Eventing系统。在您的KafkaSource中,当有来自Kafka的事件时,您可以告诉它调用Knative服务。
上面是最简单的方法。如果您需要更高级的功能,还支持基于事件类型进行过滤,或者让多个使用者订阅事件和更多功能。
Red的Knative Tutorial有一个关于Kafka的无服务器事件的部分。
https://stackoverflow.com/questions/63297017
复制相似问题