Flink部署-yarn模式和K8S模式

一、yarn模式

以Yarn模式部署Flink任务时,要求Flink是有 Hadoop 支持的版本,Hadoop 环境需要保证版本在 2.2 以上,并且集群中安装有 HDFS 服务。

Flink提供了两种在yarn上运行的模式,分别为Session-Cluster和Per-Job-Cluster模式。

Session-Cluster 模式需要先启动集群,然后再提交作业,接着会向 yarn 申请一块空间后,资源永远保持不变。如果资源满了,下一个作业就无法提交,只能等到 yarn 中的其中一个作业执行完成后,释放了资源,下个作业才会正常提交。所有作业共享 Dispatcher 和 ResourceManager;共享资源;适合规模小执行时间短的作业。

​

在 yarn 中初始化一个 flink 集群,开辟指定的资源,以后提交任务都向这里提交。这个 flink 集群会常驻在 yarn 集群中,除非手工停止。

一个 Job 会对应一个集群,每提交一个作业会根据自身的情况,都会单独向 yarn 申请资源,直到作业执行完成,一个作业的失败与否并不会影响下一个作业的正常提交和运行。独享 Dispatcher 和 ResourceManager,按需接受资源申请;适合规模大长时间运行的作业。

每次提交都会创建一个新的 flink 集群,任务之间互相独立,互不影响,方便管理。任务执行完成之后创建的集群也会消失。

具体启动:

(1)Session-cluster模式: 规模小,执行时间短的作业

  1. 启动hadoop集群(略)
  2. 启动yarn-session
bash 复制代码
./yarn-session.sh -n 2 -s 2 -jm 1024 -tm test -d
  1. 执行任务
bash 复制代码
./flink run -c com.atguigu.wc.StreamWordCount FlinkTutorial-1.0-SNAPSHOT-jar-with-dependencies.jar --host lcoalhost --port 7777
  1. 去yarn控制台查看任务状态

5.取消yarn-session

bash 复制代码
yarn application --kill applicaton_1556905371562_0002

(2)Per-job-cluster 模式: 规模大长时间运行的作业

  1. 启动hadoop集群(略)
  2. 不启动yarn-session,直接执行
bash 复制代码
./flink run --m yarn-cluster -c com.atguigu.wc.StreamWordCount FlinkTutorial-1.0-SNAPSHOT-jar-with-dependencies.jar --host lcoalhost --port 7777

二、Kubernetes部署

容器化部署是目前业界很流行的一项技术,基于 Docker 镜像运行能够让用户更加方便地应用进行管理和运维。容器管理工具中最为流行的就是 Kubernetes(k8s) ,而 Flink 也在最近的版本中支持了 k8s 部署模式。

1、搭建 Kubernetes 集群(lue)

2、配置各组件的 yaml 文件

在 k8s 上构建 Flink Session Cluster ,需要将 Flink 集群的组件对应的 docker 镜像分别在 k8s 上启动,包括 JobManager 、TaskManager 、JobManagerService 三个镜像服务。每个镜像服务都可以从中央镜像仓库中获取。

3、启动 Flink Session Cluster

bash 复制代码
// 启动 jobmanager-service 服务
kubectl create -f jobmanager-service.yaml
// 启动 jobmanager-deployment 服务
kubectl create -f jobmanager-deployment.yaml
// 启动 taskmanager-deployment 服务
kubectl create -f taskmanager-deployment.yaml

4、访问 Flink UI 页面

集群启动后,就可以通过 JobManagerServicers 中配置的 WebUI 端口,用浏览器输入以下 url 来访问 Flink UI 页面:
http://{JobManagerHost:Port}/api/v1/namespaces/default/services/flink-jobmanager:ui/proxy

相关推荐
计算机编程指导师42 分钟前
【计算机毕设推荐】基于Hadoop+Spark的公共交通运营数据分析与可视化系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习
大数据·hadoop·python·计算机·数据分析·spark·交通
QYR_112 小时前
机械制造用固体润滑涂层市场分析:2032年全球市场规模预计达8.78亿元,CAGR为6.2%
大数据·人工智能·物联网
数字化顾问2 小时前
(144页PPT)数字化转型汽车企业数智化战略规划(附下载方式)
大数据
智慧物业老杨4 小时前
数字底座,重构小区治理秩序
大数据
计算机编程指导师4 小时前
【计算机毕设选题推荐】基于Hadoop的宫颈癌变进程光谱数据分析系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习
大数据·hadoop·python·数据分析·spark·毕业设计·宫颈癌变
guhunyihan5 小时前
无代码系统搭建平台,探索恐象 AI 带来的开发新范式
大数据·人工智能
计算机编程指导师5 小时前
【计算机毕设选题推荐】基于Hadoop+Spark的化妆品销售大数据分析系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习
大数据·hadoop·python·spark·毕业设计·课程设计·化妆品
benchmark_cc5 小时前
前复权数据每天可能变化,历史数据库应该覆盖还是保留原始价格?
大数据·python·pandas·量化交易·股票数据·quantdash
计算机编程指导师5 小时前
计算机毕设选题推荐:Hadoop大数据下的个体肥胖健康风险评估与可视化系统源码 毕业设计 毕设选题 数据分析 机器学习
大数据·hadoop·python·spark·毕业设计·课程设计·肥胖健康风险
m0_715674436 小时前
数据分类分级的范式转换:从规则匹配到场景化高准确率一键部署
大数据·网络·人工智能·网络安全