很多人问我,明明是按照官方命令写的,怎么无效?其实是实际操作时命令参数不全或设置不正确。本文举了几个实际场景的具体例子。
本人的Flink是运行在yarn上的,所以官方部分命令要稍加变化才可生效。
1、使用 YARN 触发 Savepoint
官方命令:
$ bin/flink savepoint :jobId [:targetDirectory] -yid :yarnAppId
运行命令:
bin/flink savepoint a5169da6ddc48969d0ecb54bc93815eb hdfs:///flink/savepointtest/ -yid application_1613609174694_0233
2、使用保存点取消作业
官方命令:
bin/flink cancel -s [:targetDirectory] :jobId
运行命令:
bin/flink cancel -s hdfs:///flink/savepointtest/ a5169da6ddc48969d0ecb54bc93815eb
使用yarn平台:
bin/flink cancel -s hdfs:///flink/savepointtest/ a5169da6ddc48969d0ecb54bc93815eb -yid application_1613609174694_0233
当作用在yarn平台的运行的Flink时,要加参数-yid指定yarn的运行程序id,否则命令无效:
3、从保存点恢复