在K8S上运行Kafka合适吗?会遇到哪些陷阱?

科技频道提示您本文原始标题是:在K8S上运行Kafka合适吗?会遇到哪些陷阱?

Kubernetes设计的初衷是运行无状态工作负载。这些通常采用微服务架构的工作负载,是轻量级,可水平扩展,遵循十二要素应用程序,可以处理环形断路和随机Monkey测试。

另一方面,Kafka本质上是一个分布式数据库。这意味着你必须处理状态,它比微服务更重量级。Kubernetes支持有状态的工作负载,但你必须谨慎对待它,正如Kelsey Hightower在最近的两条推文中指出的那样:

在K8S上运行Kafka合适吗?会遇到哪些陷阱?

现在你应该在Kubernetes上运行Kafka吗?我的反问是:没有它,Kafka会跑得更好吗?这就是为什么我要指出Kafka和Kubernetes之间的相互补充性以及你可能遇到的陷阱。

一、运行时

让我们先看一下基本的东西——运行时本身。

1、进程

推荐阅读