flink:如何将额外的jvm选项传递给taskmanager和jobmanager

edqdpe6u  于 2021-06-25  发布在  Flink
关注(0)|答案(2)|浏览(495)

我正在尝试使用以下命令提交有关Yarn的flink作业:

/usr/flink-1.3.2/bin/flink run -yd -yn 1 -ynm MyApp -ys 1 -yqu default -m yarn-cluster -c com.mycompany.Driver -j /usr/myapp.jar -Denv.java.opts="-Dzkconfig.parent /app-config_127.0.0.1 -Dzk.hosts localhost:2181 -Dsax.zookeeper.root /app"

我在flink客户机日志中得到了env.java.opts,但是当应用程序提交给yarn时,这些java选项将不可用。由于额外的jvm选项不可用,应用程序在连接zookeeper时抛出异常。
如何将动态特性传递给jm&tmYarn。
注意:我试着将env.java.opts选项设置为conf/flink-conf.yaml,它工作正常。我需要一种通过flink run命令设置这个选项的方法。

js4nwp54

js4nwp541#

很抱歉React太晚,但我相信您在yarn上启动了一个长时间运行的flink会话,然后您通过-d=yyy设置的参数将被转发到jm/tms,这将在yarn中创建。你试过那种方法吗?

fnx2tebb

fnx2tebb2#

我想你应该换一个 -Denv.java.opts-yD env.java.opts 所以你的命令变成:

/usr/flink-1.3.2/bin/flink run -yd -yn 1 -ynm MyApp -ys 1 -yqu default -m yarn-cluster -c com.mycompany.Driver -j /usr/myapp.jar -yD env.java.opts="-Dzkconfig.parent /app-config_127.0.0.1 -Dzk.hosts localhost:2181 -Dsax.zookeeper.root /app"

相关问题