解决flink启动后无法正常关闭

使用命令stop-cluster.sh关闭flink集群的时候出现以下错误,

No taskexecutor daemon to stop on host tanghc-X550JX.
No standalonesession daemon to stop on host tanghc-X550JX.
解决flink启动后无法正常关闭_第1张图片
jps查看进程发现,flink是启动着的,8081端口查看也是正常的,解决flink启动后无法正常关闭_第2张图片

为什么会无法正常关闭,还提示没有taskexecutor和standalonesession进程呢?

我想起以前spark集群也出现过类似的问题,原因是spark启动是会把启动的进程的ID存到一个文件中,由于配置不修改的话文件默认是保存到系统的/tmp目录下,由于是临时目录,会被系统清理,所以存放的ID就找不到了,也就没法关闭集群了。

去到/tmp目录下查看文件,果然发现了flink的PID文件
在这里插入图片描述
这样一来就好办了,只要把这个配置项一改不就齐活了。
根据spark的经验首先我进入到FLINK_HOME的conf目录下
在这里插入图片描述
打开flink-conf.yaml,发现,找不到PID的配置选项,我没认输,我又一行一行看了一遍,确实没有,难道flink不能修改??我用大腿思考了一下,回到了我提出的问题,不可能!一定可以修改,这时候突然想起,要不看看启动脚本?
解决flink启动后无法正常关闭_第3张图片
嘿嘿嘿~没有!不过英语超级厉(la)害(ji)的我发现了这个
在这里插入图片描述
在FLINK_HOME/bin/目录下我看到了config.sh文件在这里插入图片描述
vim打开

解决flink启动后无法正常关闭_第4张图片
我看到了熟悉的配置项:××××××_PID_DIR
果然指定的是/tmp,将此配置项目修改到合适的位置(博主直接在FLINK_HOME下建立了一个tmp目录)
在这里插入图片描述
不过之前没法关闭的进程只能是强行Kill掉了。
重新启动后成功关闭
在这里插入图片描述

你可能感兴趣的:(Flink,大数据)