依赖需求
- Java 1.8.0
- Scala code runner version 2.11.2
- Hadoop2.7
配置安装
首先解压安装包flink-1.4.2-bin-hadoop27-scala_2.11.tgz
[root@hadoop222 conf]# tar -xvzf flink-1.4.2-bin-hadoop27-scala_2.11.tgz |
然后建立软连接
[root@ hadoop]# ln -s flink-1.4.2 flink |
最后,在/etc/profile最后面添加如下环境变量:
#set flink export FLINK_HOME=/opt/software/hadoop/flink export PATH=$FLINK_HOME/bin:$PATH |
使之生效:source /etc/profile
启动
[root@flink]# start-local.sh |
日志
[root@flink]# tail /opt/software/hadoop/flink/log/flink-*-jobmanager-*.log |
关闭
[root@flink]# stop-local.sh |
查看&测试
启动Flink后,可以用jps命令查看TaskManager进程是否存在。
启动命令行
启动任务
flink run examples/streaming/SocketWindowWordCount.jar --port 9999 |
查看结果
在一个窗口中输入信息:
[root@# ~]# nc -l 9999 |
另外一个窗口查看日志结果:
[root@flink]# tail -f log/flink-*-taskmanager-*.out |
常见问题
1 org.apache.flink.client.program.ProgramInvocationException: Neither a 'Main-Class', nor a 'program-class' entry was found in the jar file.
原因:命令行参数错误
解决:调整参数位置
flink run -c myMain myApp.jar
flink run -c myMain.class myApp.jar
flink run -c myMain.scala myApp.jar
flink run -c my.package.myMain myApp.jar
flink run -c my.package.myMain.class myApp.jar
flink run -c my.package.myMain.scala myApp.jar