接上一节,flink编译ok了,但是我准备在windows上进行运行,但是好像1.10之后 start_cluster.bat没有了呢,这样我怎么运行呢,本节是准备这个问题
0、准备
0.1 安装Cygwin或者wsl,我选择的是Cygwin,安装过程基本网上都有,下载msi可安装文件,然后选择Dlevel中的gcc make等必需的组件即可,不用all
0.2 flink编译好的源码
1、修改部分源码
1.1 修改命名
首先假如不修改的话可能会抛错:
Caused by: java.io.IOException: Could not create the working directory C:\Users\abc\AppData\Local\Temp\tm_localhost:59486-ca443e.
因为taskmanager在启动时会默认创建workDriectory,路径命名大体是上面附的这样,那在window上就会有问题呀,冒号、左斜杠、问号、星号、引号、左尖括号、右尖括号、竖线不能用在文件命名中,就抛错了,这里可以修改TaskManagerRunner#getTaskManagerResourceID中的命名,修改为自定义的命名即可
1.2 修改脚本
首先,启动时由于编码问题,会有什么 XXX /r XXX之类的问题出现,这里我选择的解决方案是在启动脚本中,添加 set ff=unix 并尽量将其放在结尾,否则会有传参问题
主要修改文件: start_cluster.sh -> config.sh -> flink_daemon.sh -> jm.sh -> tm.sh
另外出现意外的话,比如Tmworkers start之类出错了,那么可以在脚本对应位置加echo,看看哪里传参不对
2、启动以及提交jar包验证
启动start_cluster.sh,出现下面的jm以及tm启动成功界面,并且访问localhost:8081 成功的话,那么说明走通了第一步
第二步可以自己写个demo,比如wordcount,打为jar包上传到flink上或者flink run XXX运行来测试一下,成功running即表示成功