美文网首页flink
Flink的首次体验(集群模式)

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

作者: 崇贺 | 来源:发表于2016-05-06 17:58 被阅读0次

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


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

使用版本:v1.0.2

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

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

Flink的配置非常简单

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

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

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

注意不是“=” 是 “:” 

jobmanager.rpc.address: hadoop01

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

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


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

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

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

上图就是我配置的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

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

JPS查看如下图:

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

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


示例测试

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

源码如下:

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

首先端口监听

shell > nc -lk 9999

然后启动测试程序

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

启动后

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

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

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

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

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

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

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

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

结果

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

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

相关文章

网友评论

    本文标题:Flink的首次体验(集群模式)

    本文链接:https://www.haomeiwen.com/subject/kusjrttx.html