【发布时间】:2020-06-07 19:13:37
【问题描述】:
我在两台 ec2 机器上运行我的 kafka-connect。因此,无论任务数量如何,这两台机器都会始终保持运行任务。因此在二手机器下。 最近我在 kubernetes 上迁移了 kafka-connect。我实现了良好的 CPU/内存效率。
但是当 Kubernetes 缩减规模时,问题就出现了。 Pod 的缩减不会正常进行。
例如假设有 2 个 pod p1 和 p2。 p1 正在运行 3 个任务 t1,t2,t3 p2 正在运行 2 个任务 t4,t5 (这里的任务 t5 是将数据从 postgres 带到 kafka 的源连接器的任务)
当任何 pod 在缩减期间消失时,在其上运行的任务会在其他 pod 上重新平衡。 假设 pod p2 消失了。
任务重新平衡后集群的新状态是:- P1 正在运行 5 个任务 t1,t2,t3,t4_new,t5_new
但是我的源连接器的日志显示一些其他任务(可能是在旧 pod t5 上运行的任务)仍在运行并访问 postgres db 数据。
我如何确保 pod 缩小规模时,它会优雅地发生,因为在 pod 上运行的所有任务都已停止。
【问题讨论】:
标签: kubernetes apache-kafka-connect connect-rest