Flink Session Cluster on K8S

2020-08-06 09:54:57 浏览数 (1)

1 Overview

本文是根据官方文档略加编辑整理出来的。

2 Setup Kubernetes

Mac 环境推荐 Docker for Mac,一键部署。

实验过程中,应该注意你的 K8S 的版本等信息。

2 Flink session cluster on Kubernetes

Flink session cluster 是作为 K8S 的 Deployment,Flink 的作业会被提交到 session cluster。至于什么是 Deployment,不清楚的同学可以看Deployment。Flink session cluster 会包含以下组件:

  1. JobManager 以 Deployment 的方式运行在 K8S 集群
  2. TaskManagers 也是以 Deployment 的方式运行在 K8S 集群
  3. JobManager 的 REST 和 UI 端口通过 Service 部署在 K8S 集群

2.1 Deploy Flink session cluster on Kubernetes

请按照官网的 Appendix将几个文件拷贝到本地。

然后就是部署,按照以下命令。

代码语言:javascript复制
kubectl create -f jobmanager-service.yaml
kubectl create -f jobmanager-deployment.yaml
kubectl create -f taskmanager-deployment.yaml

部署成功的样子。成功部署了一个 JobManager 的 Pod 和两个 TaskManager 的 Pod。

部署成功后,通过以下方法来查看 Flink UI。

访问 Flink UI 的地址。

http://localhost:8001/api/v1/namespaces/default/services/flink-jobmanager:ui/proxy/#/overview

停止 Flink session cluster 的方法也很简单,请执行以下命令。

代码语言:javascript复制
kubectl delete -f jobmanager-deployment.yaml
kubectl delete -f taskmanager-deployment.yaml
kubectl delete -f jobmanager-service.yaml

3 Summary

本文主要介绍了如何在 K8S 上部署一个 Flink session cluster,部署完之后可以在 Flink UI 直接提交任务。

0 人点赞