树莓派 3B 搭建 Flink 集群
安装 JDK
安装 JDK 的操作步骤在《树莓派3B安装64位操作系统(树莓派无需连接显示器键盘鼠标)》一文中有详细说明,就不在此赘述了,注意两台机器都要安装;
安装 Flink1.7
安装 Flink 的操作在两台树莓派上都要做,操作步骤一模一样,如下:
在 Flink 官网下载,地址是:https://flink.apache.org/downloads.html
如下图,选择红框中的版本:
下载的 Flink 安装包文件是 flink-1.7.0-bin-hadoop28-scala_2.11.tgz,放在此位置:/usr/local/work;
在/usr/local/work 目录下执行命令 tar -zxvf flink-1.7.0-bin-hadoop28-scala_2.11.tgz 解压,会生成一个文件夹:flink-1.7.0
机器情况
两台树莓派 3B 的 IP 地址、hostname 等信息如下列表所示:
| IP 地址 | hostname | 身份 |
| --- | --- | --- |
| 192.168.1.102 | dubhe | 集群的 master,即 job 节点 |
| 192.168.1.104 | merak | 集群的 slave,即 task 节点 |
配置
注意,接下来的四步配置,请在 dubhe、merak 这两台机器上各执行一次,操作的步骤内容一模一样:
打开/etc/hosts 文件,增加以下两行(请按照您的机器 IP 情况来写):
192.168.1.102 dubhe
192.168.1.104 merak
打开文件/usr/local/work/flink-1.7.0/conf/flink-conf.yaml,一共修改了以下四个配置:
jobmanager.rpc.address: dubhe
jobmanager.heap.size: 512m
taskmanager.heap.size: 512m
taskmanager.numberOfTaskSlots: 2
jobmanager.rpc.address 是 master 的地址,jobmanager.heap.size 是 jobmanager 的堆上限,taskmanager.heap.size 是 taskmanager 的堆上限,taskmanager.numberOfTaskSlots 是 taskmanager 上的 slot 数量;
打开文件/usr/local/work/flink-1.7.0/conf/masters,里面只保留以下这一行内容,表示 dubhe 做 master:
dubhe:8081
打开文件/usr/local/work/flink-1.7.0/conf/slaves,里面只保留以下这一行内容,表示 merak 做 slave:
merak
至此,配置完成,可以启动集群了;
启动集群
在 dubhe 执行以下命令即可启动整个集群:
/usr/local/work/flink-1.7.0/bin/start-cluster.sh
控制台提示输入 merak 的 root 账号密码,输入并回车,启动完成:
root@dubhe:~# /usr/local/work/flink-1.7.0/bin/start-cluster.sh
Starting cluster.
Starting standalonesession daemon on host dubhe.
root@merak's password:
Starting taskexecutor daemon on host merak.
在浏览器输入地址:http://192.168.1.102:8081,可以看到该集群环境的 web 页面,如下图所示:
至此,集群环境的搭建和启动都已完成,接下来就是测试和验证了;
配置 SSH 免密码登录(可选步骤)
启动集群时要求输入 merak 的密码,略有些麻烦,另外用 stop-cluster.sh 停止集群时也要输入 merak 的密码,因此推荐您配置这两台机器的 SSH 免密码登录,具体操作步骤可以参考文章《Docker下,实现多台机器之间相互SSH免密码登录》,虽然标题是"Docker 下",但文中的设置在树莓派上同样生效;
评论