运行一组不同配置的豆荚与Kafka交互的体系结构

uqjltbpv  于 2021-06-04  发布在  Kafka
关注(0)|答案(1)|浏览(202)

我正在寻找一些关于如何构造基于kubernetes的应用程序的建议。我有一些数据生产者从文件中读取数据,并将其放入一个带有几百个分区的kafka主题中,基于数据的逻辑分离。然后我有一些消费者正在从这些kafka分区读取数据。一个生产者可以写入多个分区,但一个使用者只能从一个分区读取。一旦文件被处理,生产者应该完成,但消费者应该永远听其分区上的新数据。我已经为生产者和消费者创建了单独的pod,但是我想知道现在如何最好地组织我的部署,以便我可以整体部署这些pod。生产者接收的文件和消费者分配到的分区当前作为参数提供。
所以我想做的是提供一个文件列表,kubernetes将创建足够的生产者来处理这些文件。我还希望能够指定一组分区,并让kubernetes为每个分区创建一个pod。我看到了很多文档用例,其中服务中的pod都是相同的和可互换的,但是没有太多关于每个pod都有不同配置的服务,可能还有不同的角色。提前谢谢。

ibrsph3r

ibrsph3r1#

从我的观点来看,问题中提到的设计不适合kubernetes架构。根据你的问题,最终你会有数百个不同的豆荚,难以管理,不能缩小。
我相信,使用awslambda或其他无服务器方法应该会更好。解决方案设计可能会有问题,但结果会花费您更少的钱,而且会更可预测和管理。
作为替代方法,您可以使用jobs或cronjobs定期使用kafka服务中的数据。

相关问题