Flink的首次体验(集群模式)

首先要感谢一下我的好基友@小程故事多 他在技术道路上给了我很多指引,非常感谢他的帮助,希望以后我俩更是基情无限,哈哈!~~~

Flink官网地址(目前没有文档让我很迷茫……)

使用版本:v1.0.2

下载后解压这些就不给具体的操作命令了,请自行处理

我的安装目录是在/usr/local/

《Flink的首次体验(集群模式)》

Flink的配置非常简单

就配置个JAVA_HOME就可以,但是格式要注意

位置在:/usr/local/flink-1.0.2/conf/flink-conf.yaml

《Flink的首次体验(集群模式)》

env.java.home: /usr/java/latest

注意不是“=” 是 “:” 

《Flink的首次体验(集群模式)》

jobmanager.rpc.address: hadoop01

指的是master地址根据你的IP进行更改,这里我使用的是我试验机的HOSTNAME

下面的配置我没有改动,可根据个人需求按照注释进行更改

/usr/local/flink-1.0.2/conf/ 下 有 masters slaves

masters是配置JobManager HA 的,在这里不需要配置

slaves就跟spark hadoop这些软件一样是节点

《Flink的首次体验(集群模式)》

上图就是我配置的slaves文件,我一共有三个TaskManager(spark里叫worker,hadoop里叫datanode 这样好理解了吧,只是换了个名词)

目前来说我的集群已经确定了为

Jobmanager (master):hadoop01

TaskManager (slaves):hadoop02\hadoop03\hadoop04

自此Flink的配置完毕

把配置好的Flink传输到各个节点机器上(注意要跟master的位置一致)

shell> scp -r /usr/local/flink-1.0.2 root@hadoop02:/usr/local/

shell> scp -r /usr/local/flink-1.0.2 root@hadoop03:/usr/local/

shell> scp -r /usr/local/flink-1.0.2 root@hadoop04:/usr/local/

因为试验机上已经跑了很多hadoop生态圈的东西,所以ssh免密登陆早已经做好

现在可以启动Flink了,来让它展现一下它的魅力

路径 /usr/local/flink-1.0.2/bin

shell > ./start-cluster.sh

《Flink的首次体验(集群模式)》

这时看启没启动,有两个办法,一是jps命令,二是看webUI能不能进去

JPS查看如下图:

《Flink的首次体验(集群模式)》

《Flink的首次体验(集群模式)》

非常完美的启动了……下面来看下webUI

《Flink的首次体验(集群模式)》

这个引入了slot的概念目前不太清楚是做什么的,不好发表意见,但是3个TaskManager是正确的,如上面的slaves的配置

示例测试

我们来测试一个socket的用例,这个是Flink自带的例子

源码如下:

《Flink的首次体验(集群模式)》

通过代码可以看出是以换行作为分隔,进行计算的,那么下面开始测试

首先端口监听

shell > nc -lk 9999

《Flink的首次体验(集群模式)》

然后启动测试程序

shell > bin/flink run examples/streaming/SocketTextStreamWordCount.jar  –hostname hadoop01 –port 9999

《Flink的首次体验(集群模式)》

启动后

《Flink的首次体验(集群模式)》

Flink的输出是输出到文件,在$FLINK_HOME/log下,那么问题来了,该怎么找到这个输出文件,在经过我的查找,在webUI可以找到这个答案

《Flink的首次体验(集群模式)》

点进去,如果任务多,请根据任务名称进行选取

《Flink的首次体验(集群模式)》

红圈处表明了,它输出结果的机器HOSTNAME,那么我们去看一下

《Flink的首次体验(集群模式)》

果然有这个文件,那到底是不是它呢,我们下面来试试

《Flink的首次体验(集群模式)》

上图还没有按回车,如果按回车,242那个主机应该是有变化,下面来按下回车

《Flink的首次体验(集群模式)》

果然是变化了,就是这么神奇!

那么现在来看看结果是否对呢

《Flink的首次体验(集群模式)》

结果也是对的,那么下面我多做一些字母的计算

《Flink的首次体验(集群模式)》

结果

《Flink的首次体验(集群模式)》

这个计算结果跟spark streaming的Stateful是一样的,累加的结果

这次的Flink最简单的试验就结束了,算是成功了,接下来该探索窗口计算,连接kafka消费流计算等例子,到时也会写一些文章跟大家分享!

    原文作者:崇贺
    原文地址: https://www.jianshu.com/p/0882ef39a6c5
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞