开发者社区 问答 正文

flink 添加kafka的kerberos认证,一直报错,请大佬帮忙看下

org.apache.flink.client.program.ProgramInvocationException: Could not retrieve the execution result. (JobID: 6ccea31b59c0fa26415bd039f39859f2) at org.apache.flink.client.program.rest.RestClusterClient.submitJob(RestClusterClient.java:255) at org.apache.flink.client.program.ClusterClient.run(ClusterClient.java:338) at org.apache.flink.streaming.api.environment.StreamContextEnvironment.execute(StreamContextEnvironment.java:60) at org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.execute(StreamExecutionEnvironment.java:1507) at com.ebupt.QueryMetricsJob.job(QueryMetricsJob.java:71) at com.ebupt.QueryMetricsJob.main(QueryMetricsJob.java:41) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.flink.client.program.PackagedProgram.callMainMethod(PackagedProgram.java:604) at org.apache.flink.client.program.PackagedProgram.invokeInteractiveModeForExecution(PackagedProgram.java:466) at org.apache.flink.client.program.ClusterClient.run(ClusterClient.java:274) at org.apache.flink.client.cli.CliFrontend.executeProgram(CliFrontend.java:746) at org.apache.flink.client.cli.CliFrontend.runProgram(CliFrontend.java:273) at org.apache.flink.client.cli.CliFrontend.run(CliFrontend.java:205) at org.apache.flink.client.cli.CliFrontend.parseParameters(CliFrontend.java:1008) at org.apache.flink.client.cli.CliFrontend.lambda$main$10(CliFrontend.java:1081) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:422) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1893) at org.apache.flink.runtime.security.HadoopSecurityContext.runSecured(HadoopSecurityContext.java:41) at org.apache.flink.client.cli.CliFrontend.main(CliFrontend.java:1081) Caused by: org.apache.flink.runtime.rest.util.RestClientException: [org.apache.flink.runtime.messages.FlinkJobNotFoundException: Could not find Flink job (6ccea31b59c0fa26415bd039f39859f2)] at org.apache.flink.runtime.rest.RestClient.parseResponse(RestClient.java:389) at org.apache.flink.runtime.rest.RestClient.lambda$submitRequest$3(RestClient.java:373) at java.util.concurrent.CompletableFuture.uniCompose(CompletableFuture.java:952) at java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:926) at java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:442) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)

展开
收起
qygxwy 2020-10-20 18:18:02 972 分享 版权
阿里云 AI 助理回答

遇到这个错误信息,意味着Apache Flink作业提交后无法找到对应的执行结果或者作业实例。具体原因可能涉及多个方面,以下是一些排查和解决的建议:

  1. 检查JobID是否正确:首先确认报错中的JobID: 6ccea31b59c0fa26415bd039f39859f2是否正确无误。有时候,由于各种原因(如日志打印错误、复制粘贴错误等),提供的JobID可能并不准确。

  2. Flink集群状态:确保你的Flink集群是运行正常的。可以通过Flink Web UI(默认端口为8081)来检查集群的状态,包括TaskManager是否活跃、是否有足够的资源来运行新的作业等。

  3. 网络问题:如果客户端与Flink集群之间存在网络问题,可能会导致作业提交后无法跟踪到其状态。检查网络连接,确保客户端可以无障碍地访问Flink JobManager。

  4. Flink配置:检查Flink的配置文件(如flink-conf.yaml),确认没有配置错误或遗漏,特别是关于高可用(HA)的设置。如果启用了HA模式,需要确保所有相关组件(ZooKeeper、JobManager等)都配置并运行正常。

  5. 日志分析:查看Flink JobManager和TaskManager的日志,这些日志通常能提供更详细的错误信息,帮助定位问题。日志中可能会有作业提交失败的具体原因,比如资源不足、依赖缺失或其他异常。

  6. 作业代码审查:重新审视你的Flink作业代码,确保没有逻辑错误或不兼容的API使用。有时候,作业在编译时没有问题,但在运行时因为数据类型不匹配、算子使用不当等原因而失败。

  7. 资源限制:确认作业所需的资源(CPU、内存等)是否超出了集群当前可分配的资源。如果资源紧张,可以尝试调整作业的并行度或优化作业以减少资源消耗。

  8. 重启服务:作为最后的手段,可以尝试重启Flink集群服务,有时候一些临时的系统状态问题会在重启后得到解决。

如果以上步骤都无法解决问题,考虑在Flink的社区论坛或官方GitHub仓库中寻求帮助,提供尽可能详细的问题描述和已尝试的解决步骤,以便获得更专业的技术支持。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答