flink ~ standalone模式安装及简单测试
解压
[root@master install]# tar -zxvf flink-1.10.1-bin-scala_2.12.tgz -C ../program/
修改 flink/conf/flink-conf.yaml 文件
jobmanager.rpc.address master
修改 /conf/slaves(有的版本是workers) 文件
修改 /conf/masters 文件
[root@h001 conf]# vim masters
master:8081
添加环境变量
export FLNK_HOME=/opt/program/flink-1.10.1
export PATH=$FLINK_HOME/bin:$PATH
分发flink和环境变量到其它的机器
[root@master conf]# xrsync.sh /opt/program/flink-1.10.1/
[root@master conf]# xrsync.sh /etc/profile.d/env.sh
xrsyn是增量脚本,作用是分发文件到其他机器,请见我的脚本专栏
刷新环境变量
[root@master conf]# allrun.sh source /etc/profile.d/env.sh
allrun是脚本,作用是在所有的机器上同时执行某条命令,请见我的脚本专栏
启动flink
[root@master bin]# ./start-cluster.sh
Starting cluster.
Starting standalonesession daemon on host master.
Starting taskexecutor daemon on host master.
Starting taskexecutor daemon on host slaver01.
Starting taskexecutor daemon on host slaver02.
[root@master bin]# allrun.sh jps
------------------------ master -------------------------------
2720 Jps
2289 StandaloneSessionClusterEntrypoint
2626 TaskManagerRunner
------------------------ slaver01 -------------------------------
2241 TaskManagerRunner
2289 Jps
------------------------ slaver02 -------------------------------
2231 TaskManagerRunner
2279 Jps
可以通过观察logs目录下的日志来检测系统是否正在运行了
tail log/flink-*-standalonesession-*.log
JobManager同时会在8081端口上启动一个web前端,通过http://localhost:8081来访问
运行示例——官方示例
使用Maven创建Flink项目,在pom.xml中添加以下依赖:
<dependencies>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-java</artifactId>
<version>1.9.2</version>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-streaming-java_2.11</artifactId>
<version>1.9.2</version>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-clients_2.11</artifactId>
<version>1.9.2</version>
</dependency>
</dependencies>
批处理运行WordCount
可以直接在/root/soft/flink-1.9.2/examples/batch中运行WordCount程序,并且这里还有更多示例:
cd /opt/program/flink-1.10.1/examples/batch/
/opt/program/flink-1.10.1/bin/flink run WordCount.jar