官网镇楼
参考
参考
参考
一、原理
二、步骤
1、创建namespace(flink-session-cluster)
kubectl create namespace flink-session-cluster
2、创建serviceaccount(flink)
kubectl create serviceaccount flink -n flink-session-cluster
3、serviceaccount和角色的绑定
kubectl create clusterrolebinding flink-role-binding-flink \
--clusterrole=edit \
--serviceaccount=flink-session-cluster:flink
4、创建session集群
./bin/kubernetes-session.sh \
-Dkubernetes.namespace=flink-session-cluster \
-Dkubernetes.jobmanager.service-account=flink \
-Dkubernetes.cluster-id=session001 \
-Dtaskmanager.memory.process.size=8192m \
-Dkubernetes.taskmanager.cpu=1 \
-Dtaskmanager.numberOfTaskSlots=4 \
-Dresourcemanager.taskmanager-timeout=3600000
5、常用命令
5.1、查看集群服务
kubectl get services -n flink-session-cluster
![image.png](/uploads/projects/chencong-zfsqa@bho2bt/62330131c49f5ebf80ce16766291291c.png)
- 访问flink-web
http://192.168.5.239:30022/#/overview
5.2、查看集群部署
kubectl get deployments -n flink-session-cluster
5.3、查看pods情况
kubectl get pods -n flink-session-cluster
5.4、查看node情况
kubectl get node -n flink-session-cluster
5.5、查看events情况
kubectl get events -n flink-session-cluster
5.6、详细查看某个pod
kubectl describe pod kubectl describe pod session001-6f8987b4f8-qr6lp -n flink-cluster
5.7、查看集群服务
kubectl get services -n flink-session-cluster
5.8、查看具体的容器详情
kubectl describe pod 容器name --namespace=name空间
![image.png](/uploads/projects/chencong-zfsqa@bho2bt/5728524b85b6c2d74e78c9d3a84f9967.png)
kubectl describe pod session001-6f8987b4f8-9q45n --namespace=flink-session-cluster
![image.png](/uploads/projects/chencong-zfsqa@bho2bt/dc9086620b8baf42064d3dda0bd1eb2b.png)
6、本地提交任务
./bin/flink run -d \
-e kubernetes-session \
-Dkubernetes.namespace=flink-session-cluster \
-Dkubernetes.cluster-id=session001 \
examples/streaming/WindowJoin.jar
7、flink-web界面提交任务
8、停止flink集群
echo 'stop' | \
./bin/kubernetes-session.sh \
-Dkubernetes.namespace=flink-session-cluster \
-Dkubernetes.cluster-id=session001 \
-Dexecution.attached=true
9、在kubernetes节点清理service、clusterrolebinding、serviceaccount、namespace
kubectl delete service session001 -n flink-session-cluster
kubectl delete clusterrolebinding flink-role-binding-flink
kubectl delete serviceaccount flink -n flink-session-cluster
kubectl delete namespace flink-session-cluster