一.引言
Flink 本地执行任务报错 Failed to start the Queryable State Data Server 以及 Unable to start Queryable State Server. All ports in provided range are occupied. 根据报错分析是因为本地端口被占用,没有足够端口供 Flink Queryable DataServer启动,所以解决方法就是处理被占用的端口。Queryable DataServer 主要负责查询 Flink 作业内部 value 使用。
编辑
二.本机解决方案-Mac
重启电脑即可 (*^▽^*)
三.服务器解决方案-Linux
端口占用过多的话,那就找到哪个占用多然后把任务 kill 掉即可。
A.查看电脑当前端口使用情况,其中第一列为程序 command,第二列为程序对应的 pid
lsof -i
编辑
B.找到占用过多端口的程序pid
kill 掉任务对应的 pid 即可
kill -9 $pid
Tips:
如果已知某个端口被占用过多或者想查看某个端口的占用情况,可以指定端口 port 查询:
lsof -i tcp:$port
例如查询 49662 端口的占用情况:
lsof -i tcp:49662
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME java 1751 BITDDD 67u IPv6 0x3148f6fa1a7526a9 0t0 TCP localhost:49662 (LISTEN)