打成的jar包运行在flink集群中要看集群的模式,如果运行在yarn模式下,要运行在内存集中管理模式或者内存job管理模式下,如果没有指定将会出现上述错误
**内存集中管理模式:**在Yarn中初始化一个Flink集群,开辟指定的资源,之后我们提交的Flink Job都在这个Flink yarn-session中,也就是说不管提交多少个job,这些job都会共用开始时在yarn中申请的资源。这个Flink集群会常驻在Yarn集群中,除非手动停止
**内存job管理模式:**在Yarn中,每次提交job都会创建一个新的Flink集群,任务之间相互独立,互不影响并且方便管理。任务执行完成之后创建的集群也会消失
如果将idea上的flink代码打包运行在flink集群上,出现如下问题有两方面需要考虑:一、修改yarn-site.xml配置文件,原因是可能内存超过虚拟内存的限制,所以需要对yarn进行虚拟内存限制修正,将如下两个配置改为false<property> //pmem指的是默认检查物理内存,容器使用的物理内存不能超过我们限定的内存大小,因为我们上面设置了所有容器能够使用的最大内存数量,超出这个内存限制,任务就会被kill掉 <name>yarn.nodema
当flink on yarn模式运行时,发生如下异常信息,需要将压缩包中的4个依赖jar包放入flink安装路径下的lib目录下。
Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/jersey/api/client/config/ClientConfig
at org.apache.hadoop.yarn.client.api.TimelineClient.createTimelineClient(TimelineClient.java:45)
at org.apache.hadoop.yarn.client.api.impl.YarnClientImpl.serviceInit(YarnClientImpl.java:163)
at org.apache.hadoop.service.AbstractService.init(AbstractService.java:163)
at org.apache.spark.deploy.yarn.Client.submitApplication(Client.scala:150)
at org.apache.spark.scheduler.cluster.YarnClientSchedulerBackend.start(YarnClientSchedulerBackend.scala:56)
Caused by: java.lang.ClassNotFoundException: com.sun.jersey.api.client.config.ClientConfig
flink on yarn模式出现The main method caused an error: Could not deploy Yarn job cluster问题排查+解决
报错复现:
flink run -m yarn-cluster -p 2 -yjm 700m -ytm 1024m -c WordCount target/bbb-1.0-SNAPSHOT.jar
完整报错如下:
The program finished with the following exception:
org.apache.flink.client.program.ProgramInvocationException: The main method caused an error:
org.springframework.data.redis.ClusterStateFailureException:
Could not retrieve cluster information. CLUSTER NODES returned with error.
- 10.166.15.36:7001 failed: Hostname must not be empty or null....
之前的文章中已对flink-yarn-session的独立模式下job的提交流程进行了分析,今天在此基础上,对flink-yarn-session的共享模式下job提交流程进行分析。
flink-yarn-seesion共享模式job提交流程分析
前面文章中已经介绍了flink-yarn-session的独立模式与共享模式出现的分支节点在org.apache.flink.client....
org.apache.flink.client.deployment.ClusterDeploymentException Couldn’t deploy Yarn
出现此类错误,主要的原因是Current usage: 75.1 MB of 1 GB physical memory used; 2.1 GB of 2.1 GB virtual memor
y used. Killing container.
字面原因是容器内存不够,实际上是flink on yarn启动时检查虚拟内存造成的
所以修改配置文
org.apache.flink.client.program.ProgramInvocationException: The main method caused an error: Could not deploy Yarn job cluster.
Caused by: org.apache.flink.client.deployment.ClusterDeploymentException: Could not deploy Yarn job cluster.
Caused by...
Couldn’t deploy Yarn session cluster
flink on yarn启动yarn-session时, 出现yarn-session无法部署错误
并且提示2.1G的虚拟内存使用了2.2GB内存.
org.apache.flink.client.deployment.ClusterDeploymentException: `Couldn't deploy Yarn session cluster`
at org.apache.flink.yarn
flink-conf.yaml: |+
jobmanager.rpc.address: flink-jobmanager
taskmanager.numberOfTaskSlots: 50
blob.server.port: 6124
jobmanager.rpc.port: 6123
taskmanager.rpc.port: 6122
jobmanager.heap.size: 1524m
taskmanager.me
flink初识及集群搭建和简单验证
flink-HA集群搭建和问题记录
虽然上述两种都能使用,在学习flink-api阶段应该是够用了,但是如果真要上生产使用,就还是有一定的弊端。
根据之前的学习可知,flink集群主要分为jobManager和taskManager,而jobManger的任务主要有两个,一个是资源管理,另一个是任务调度。
这样一来,jobManager的任务其实就显得有点多,而又由
Error while deploying YARN cluster: Couldn't deploy Yarn cluster
java.lang.RuntimeException: Couldn't deploy Yarn cluster
at org.apache.flink.yarn.AbstractYarnClusterDescriptor.deploy(AbstractYarnCl...
没有启动hadoop集群,执行flink的bin/yarn-session.sh脚本会报下面错误
脚本会一直卡在这里,一直输出重试日志,连不上resoucemanager,说明hadoop集群每启动
2018-03-17 12:30:...
clickhouse将csv文件导入表中出现的 DB::ParsingException: Cannot parse input: expected ‘,‘ before: ‘\‘错误的解决方法