Flink 动态伸缩
Flink dynamic scaling
我目前正在研究 Flink 的可扩展性。从版本 1.2.0 开始,引入了动态缩放。我正在考虑扩展一个从 Kafka 源读取数据的长 运行 作业。
关于动态缩放的问题。
- 扩展我的flink应用程序,例如:添加新的任务管理器,我必须重新启动作业/纱线会话才能使用新添加的资源吗?
- 我认为可以编写 Yarn 客户端来部署新的任务管理器并使其与作业管理器通信,现有的 flink yarn 客户端应用程序是否已经可用?
如果这些问题太基础,请原谅我,我确实浏览了文档,我不得不承认我最近无法将这些概念与 yarn 上的一些测试部署完全结合起来。
目前,Dynamic Scaling 意味着能够更新运算符的并行性(Flink 1.2),无论是键控状态还是非键控状态。
扩展我的flink应用,例如:添加新的任务管理器,我必须重新启动作业/纱线会话才能使用新添加的资源吗? - 是,作业必须先停止,更新并行度,然后重新启动。不用担心状态,Flink 会处理它们,包括重新分区。
我认为可以编写 Yarn 客户端来部署新的任务管理器并使其与作业管理器通信,现有的 flink yarn 客户端应用程序是否已经可用? - 没有,你不能。这个功能好像是以后要加的。目前,我们不能这样做。
我目前正在研究 Flink 的可扩展性。从版本 1.2.0 开始,引入了动态缩放。我正在考虑扩展一个从 Kafka 源读取数据的长 运行 作业。
关于动态缩放的问题。
- 扩展我的flink应用程序,例如:添加新的任务管理器,我必须重新启动作业/纱线会话才能使用新添加的资源吗?
- 我认为可以编写 Yarn 客户端来部署新的任务管理器并使其与作业管理器通信,现有的 flink yarn 客户端应用程序是否已经可用?
如果这些问题太基础,请原谅我,我确实浏览了文档,我不得不承认我最近无法将这些概念与 yarn 上的一些测试部署完全结合起来。
目前,Dynamic Scaling 意味着能够更新运算符的并行性(Flink 1.2),无论是键控状态还是非键控状态。
扩展我的flink应用,例如:添加新的任务管理器,我必须重新启动作业/纱线会话才能使用新添加的资源吗? - 是,作业必须先停止,更新并行度,然后重新启动。不用担心状态,Flink 会处理它们,包括重新分区。
我认为可以编写 Yarn 客户端来部署新的任务管理器并使其与作业管理器通信,现有的 flink yarn 客户端应用程序是否已经可用? - 没有,你不能。这个功能好像是以后要加的。目前,我们不能这样做。