Linux学习笔记——分布式内存计算Flink环境部署
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
5.13、分布式内存计算Flink环境部署
5.13.1、简介
Flink同Spark一样是一款分布式内存计算引擎可以支撑海量数据的分布式计算。
Flink在大数据体系同样是明星产品作为最新一代的综合计算引擎支持离线计算和实时计算。
在大数据领域广泛应用是目前世界上除去Spark以外应用最为广泛的分布式计算引擎。
我们将基于Hadoop集群部署Flink Standalone集群。
Spark更加偏向于离线计算而Flink更加偏向于实时计算。
注意
本小节的操作基于大数据集群Hadoop生态安装部署环节中所构建的Hadoop集群
如果没有Hadoop集群请参阅大数据集群Hadoop生态安装部署部署好环境。
5.13.2、安装
1、【node1操作】下载安装包
wget https://archive.apache.org/dist/flink/flink-1.10.0/flink-1.10.0-bin-scala_2.11.tgz
# 解压
tar -zxvf flink-1.10.0-bin-scala_2.11.tgz -C /export/server/
# 软链接
ln -s /export/server/flink-1.10.0 /export/server/flink
2、【node1操作】修改配置文件conf/flink-conf.yaml
# 切换至/export/server/flink/conf
cd /export/server/flink/conf
# 编辑文件
vim flink-conf.yaml
在flink-conf.yaml
中清空内容按键dG并添加以下内容
# jobManager 的IP地址
jobmanager.rpc.address: node1
# JobManager 的端口号
jobmanager.rpc.port: 6123
# JobManager JVM heap 内存大小
jobmanager.heap.size: 1024m
# TaskManager JVM heap 内存大小
taskmanager.heap.size: 1024m
# 每个 TaskManager 提供的任务 slots 数量大小
taskmanager.numberOfTaskSlots: 2
#是否进行预分配内存默认不进行预分配这样在我们不使用flink集群时候不会占用集群资源
taskmanager.memory.preallocate: false
# 程序默认并行计算的个数
parallelism.default: 1
#JobManager的Web界面的端口默认8081
jobmanager.web.port: 8081
可能出现的问题
- 在可插入状态下直接粘贴会显示全部内容被注释掉。
解决方法
- 使用ESC退出可编辑状态输入
:set paste
然后按下i
键再次进行粘贴内容即可。
3、【node1操作】修改配置文件conf/slaves
# 切换至/export/server/flink/conf
cd /export/server/flink/conf
# 编辑文件
vim slaves
在slaves
中清空内容并添加以下内容
node1
node2
node3
4、【node1操作】分发Flink安装包到其它机器
cd /export/server
scp -r flink-1.10.0 node2:`pwd`/
scp -r flink-1.10.0 node3:`pwd`/
5、【node2、node3操作】
# 配置软链接
ln -s /export/server/flink-1.10.0 /export/server/flink
6、【node1操作】启动Flink
/export/server/flink/bin/start-cluster.sh
7、验证Flink启动
# 浏览器打开
http://node1:8081
需要先停止Spark不然进去看到的页面是Spark。
8、提交测试任务
【node1执行】
/export/server/flink/bin/flink run /export/server/flink-1.10.0/examples/batch/WordCount.jar