一、安装与配置

1、win10 + java1.8 + flink1.7.1本地安装。

flink可以运行在Linux、Mac OS、Windows上,安装包含单点模式、集群模式、flink on yarn模式、flink on k8s等模式,flink是基于jvm进行操作。这里我们选择Windows10 + java1.8 + flink1.7.1, 安装部署为本地模式。

官网下载地址 https://flink.apache/downloads.html

Flink开箱即用,使用默认的java环境,如果改变java的运行环境,可以手动设置 JAVA_HOME或者 conf/flink-conf.yaml中的配置项 env.java.home。下载完之后直接解压,然后进入解压完的flink目录,进入bin目录运行start-cluster.bat,然后打开http://localhost:8081/#/overview

可以看到,启动成功。同时有两个java.exe窗口出现,这是因为我们用的是集群启动模式。

2、linux服务器安装。

linux更简单一些,上传刚才下载的安装包 flink-1.7.1-bin-scala_2.12.tgz,解压缩

 tar zxf flink-1.7.1-bin-scala_2.12.tgz 

然后在bin目录下启动:./start-cluster.sh,

默认端口还是8081,可以在 flink-conf.yaml 中修改,还是在浏览器中打开ip:8081。

二、运行测试代码

官方包里面自带了测试代码,我们启动最简单的一个demo ,记录输入数据流中单词出现的数量。首先保证flink程序已经启动,然后启动项目代码。

这里我们使用了9000端口,那么就从9000端口输入信息,再开一个shell端,输入nc -l 9000,然后随便输入几个单词数字,这个例子是统计5秒钟之内输入的单词数量,不过需要在日志里面查看输出结果。也就是一个这个测试,一共需要打开三个shell客户端,并且要先打开nc -l 9000这个端,不然启动wordcount程序会报错。

nc -l 9000
./bin/flink run examples/streaming/SocketWindowWordCount.jar --port 9000
tailf /usr/local/flink-1.7.1/log/flink-root-taskexecutor-1-gs-server-5830.out

org.apache.flink.client.program.ProgramInvocationException: Job failed. (JobID: a0d6c31995504e0f66af840f205967e2)
	at org.apache.flink.client.program.rest.RestClusterClient.submitJob(RestClusterClient.java:268)
	at org.apache.flink.client.program.ClusterClient.run(ClusterClient.java:487)
	at org.apache.flink.streaming.api.environment.StreamContextEnvironment.execute(StreamContextEnvironment.java:66)
	at org.apache.flink.streaming.examples.socket.SocketWindowWordCount.main(SocketWindowWordCount.java:92)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

 

 

 

 

 

 

 

 

 

 

更多推荐

Flink入门教程(一)