Flink集群安装和部署

(一)Flink集群几种部署方式

  • Standalone
  • ON YARN
  • Mesos、Kubernetes、AWS…

如果是一个独立环境的话,可能会用到standalone集群模式。
在生产环境下一般还是用on yarn 这种模式比较多,因为这样可以综合利用集群资源。

这个时候我们的Hadoop集群上面既可以运行MapReduce任务,Spark任务,还可以运行Flink任务,一举三得。

(二)standalone集群安装

架构:
在这里插入图片描述
jdk1.8及以上【配置JAVA_HOME环境变量】
ssh免密码登录
在这我们使用bigdata01、02、03这三台机器,这几台机器的基础环境都是ok的,可以直接使用。
集群规划如下:
master:bigdata01
slave:bigdata02、bigdata03

由于目前Flink各个版本之间差异比较大,属于快速迭代阶段,本次使用Flink1.11.1版本。
flink-1.11.1-bin-scala_2.12.tgz

  1. 下载并解压

  2. 修改配置

vi flink-conf.yaml
......
jobmanager.rpc.address: bigdata01
......
[root@bigdata01 conf]# vi masters
bigdata01:8081
[root@bigdata01 conf]# vi workers
bigdata02
bigdata03
  1. 将修改完配置的flink目录拷贝到其它两个从节点
[root@bigdata01 soft]# scp -rq flink-1.11.1 bigdata02:/data/soft/
[root@bigdata01 soft]# scp -rq flink-1.11.1 bigdata03:/data/soft/
  1. 启动flink集群
    bin/start-cluster.sh

  2. 验证
    jps
    3986 StandaloneSessionClusterEntrypoint
    2149 TaskManagerRunner

  3. 访问web页面
    http://bigdata01:8081/

  4. 停止集群
    bin/stop-cluster.sh

  • Standalone集群核心参数
参数                             解释
jobmanager.memory.process.size    主节点可用内存大小
taskmanager.memory.process.size   从节点可用内存大小
taskmanager.numberOfTaskSlots     从节点可以启动的进程数量,建议设置为从节可用的cpu数量
parallelism.default               Flink任务的默认并行度

1:slot是静态的概念,是指taskmanager具有的并发执行能力
2:parallelism是动态的概念,是指程序运行时实际使用的并发能力
3:设置合适的parallelism能提高程序计算效率,太多了和太少了都不好

(三)Flink On yarn

Flink ON YARN模式就是使用客户端的方式,直接向Hadoop集群提交任务即可。不需要单独启动Flink进程。
注意:
1:Flink ON YARN 模式依赖Hadoop 2.4.1及以上版本
2:Flink ON YARN支持两种使用方式
在这里插入图片描述

(1)Flink ON YARN第一种方式

第一步:在集群中初始化一个长时间运行的Flink集群
使用yarn-session.sh脚本
第二步:使用flink run命令向Flink集群中提交任务

注意:使用flink on yarn需要确保hadoop集群已经启动成功

  1. 上传flink压缩包并解压
  2. 配置HADOOP_CLASSPATH环境变量
    先配置HADOOP_CLASSPATH 这个环境变量,否则,执行
    yarn-session.sh 是会报错的,提示找不到hadoop的一些依赖。
export HADOOP_CLASSPATH=`${HADOOP_HOME}/bin/hadoop classpath`
  1. 接下来,使用 yarn-session.s h在YARN中创建一个长时间运行的Flink集群
bin/yarn-session.sh -jm 1024m -tm 1024m -d 

这个表示创建一个Flink集群, -jm 是指定主节点的内存, -tm 是指定从节点的内存, -d 是表示把这个进程放到后台去执行。

  1. 接下来向这个Flink集群中提交任务,此时使用Flink中的内置案例
    bin/flink run ./examples/batch/WordCount.jar

注意:这个时候我们使用flink run的时候,它会默认找这个文件,然后根据这个文件找到刚才我们创建的那个永久的Flink集群,这个文件里面保存的就是刚才启动的那个Flink集群在YARN中对应的applicationid。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值