gpt4 book ai didi

kubernetes - Apache Flink 作业未在 Kubernetes(副本)中的多个 TaskManager 上调度

转载 作者:行者123 更新时间:2023-12-02 12:01:49 24 4
gpt4 key购买 nike

我有一个简单的Flink从 ActiveMQ 源和接收器读取到数据库并打印的作业。我使用 2 TaskManagers 在 Kubernetes 中部署作业, 每个都有 Task Slots 10 个(taskmanager.numberOfTaskSlots: 10)。我配置的并行度超过了 TaskSlots可用(即,在这种情况下为 10)。

当我看到 Flink Dashboard我看到这个作业只在一个 TaskManager 中运行,但另一个 TaskManager 没有作业。我通过检查调度它的每个运算符(operator)来验证这一点,也在 Task Manager 中。管理器的 UI 页面之一有所有空闲槽。我附上以下图片以供引用。

我是不是配置错了什么?我的理解差距在哪里?有人可以解释一下吗?

enter image description here

职位 enter image description here

enter image description here

最佳答案

第一个任务管理器有足够的插槽 (10) 来完全满足您的工作要求。

调度程序的默认行为是在使用来自另一个任务管理器的插槽之前充分利用一个任务管理器的插槽。如果您希望 Flink 将工作负载分散到所有可用的任务管理器中,请设置 cluster.evenly-spread-out-slots: trueflink-conf.yaml . (这个选项是在 Flink 1.10 中添加的,以重新创建类似于 Flink 1.5 之前的默认调度行为。)

关于kubernetes - Apache Flink 作业未在 Kubernetes(副本)中的多个 TaskManager 上调度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60559935/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com