升级 Apache Flink 需要更新pom.xml?
Upgrading Apache Flink need to update pom.xml?
我刚刚将我的 flink 从 1.9.1 版本升级到 1.11.2(使用 docker)
我在 1.9.1 版本中已经有很多 flink 作业 运行ning
当我尝试升级到 1.11.1 并重新 运行 我的工作时,它显示错误。
2020-11-12 06:49:17,731 WARN org.apache.zookeeper.ClientCnxn []
- SASL configuration failed: javax.security.auth.login.LoginException: No JAAS configuration section named 'Client' was found in specified JAAS configuration file: '/tmp/jaas-1135609831848314731.conf'. Will continue connection to Zookeeper server without SASL authentication, if Zookeeper server allows it.
2020-11-12 06:49:17,739 INFO org.apache.zookeeper.ClientCnxn [] - Opening socket connection to server xxxxxx:2181
2020-11-12 06:49:17,741 ERROR org.apache.curator.ConnectionState [] - Authentication failed
这是部署我的 flink 作业后的错误:
Caused by: java.lang.RuntimeException: API paths not defined
还有:
java.lang.NoSuchMethodError: org.apache.flink.api.common.state.OperatorStateStore.getSerializableListState(Ljava/lang/String;)Lorg/apache/flink/api/common/state/ListState;
我是否需要为我的 flink 作业更改每个 pom?
有没有不改变我的源代码的解决方法?
谢谢
是的,每当更新用于 运行 的 Flink 版本时,您都必须重建 Flink 作业。您使用的库应该与作业管理器和任务管理器使用的版本完全相同。
如果您正在尝试为 CI/CD 管道自动部署,您可以使用环境变量将版本号注入 pom.xml——但是这样做会很难出现问题时进行调试。
我刚刚将我的 flink 从 1.9.1 版本升级到 1.11.2(使用 docker) 我在 1.9.1 版本中已经有很多 flink 作业 运行ning 当我尝试升级到 1.11.1 并重新 运行 我的工作时,它显示错误。
2020-11-12 06:49:17,731 WARN org.apache.zookeeper.ClientCnxn []
- SASL configuration failed: javax.security.auth.login.LoginException: No JAAS configuration section named 'Client' was found in specified JAAS configuration file: '/tmp/jaas-1135609831848314731.conf'. Will continue connection to Zookeeper server without SASL authentication, if Zookeeper server allows it.
2020-11-12 06:49:17,739 INFO org.apache.zookeeper.ClientCnxn [] - Opening socket connection to server xxxxxx:2181
2020-11-12 06:49:17,741 ERROR org.apache.curator.ConnectionState [] - Authentication failed
这是部署我的 flink 作业后的错误:
Caused by: java.lang.RuntimeException: API paths not defined
还有:
java.lang.NoSuchMethodError: org.apache.flink.api.common.state.OperatorStateStore.getSerializableListState(Ljava/lang/String;)Lorg/apache/flink/api/common/state/ListState;
我是否需要为我的 flink 作业更改每个 pom? 有没有不改变我的源代码的解决方法?
谢谢
是的,每当更新用于 运行 的 Flink 版本时,您都必须重建 Flink 作业。您使用的库应该与作业管理器和任务管理器使用的版本完全相同。
如果您正在尝试为 CI/CD 管道自动部署,您可以使用环境变量将版本号注入 pom.xml——但是这样做会很难出现问题时进行调试。