flink flip-6的connect resourcemanager启动新的“会话作业”

uyhoqukh  于 2021-06-21  发布在  Flink
关注(0)|答案(2)|浏览(315)

我想用会话作业创建一个新的k8s部署;还有一个 taskmanager 在中使用这样的配置部署 flink-conf.yaml :

jobmanager.rpc.address: analytics-job
jobmanager.rpc.port: 6123

但是,似乎我的taskmanager拒绝使用端口6123,并且总是选择高端口?分析作业的k8s服务如下所示:

apiVersion: v1
kind: Service
metadata:
  name: analytics-job
spec:
  type: ClusterIP
  ports:
  - name: rpc
    port: 6123
  - name: blob
    port: 6124
  - name: query
    port: 6125
    # nodePort: 30025
  - name: ui
    port: 8081
    # nodePort: 30081
  selector:
    app: analytics
    stack: flink
    component: job-cluster

如您所见,我尝试了clusterip和nodeport服务类型。我宁愿使用clusterip类型,因为它会在我的k8s作业之前创建一个内部负载平衡器/ standalone-job.sh Flink过程。

km0tfn4u

km0tfn4u1#

在flink-conf.yaml中,设置

high-availability.jobmanager.port: 6123

这将使资源管理器连接回到您希望它使用的静态端口。

n53p2ov0

n53p2ov02#

你不明白的原因 nodePorts 就像 6123 , 6124 ,和 6125 kubernetes主机分配的是 nodePorts--service-node-port-range 上的选项 kube-apiserver . 该范围的默认值为 30000-32767 .
你可以加上那个旗子 --service-node-port-range 到kubeapi服务器配置 /etc/kubernetes/manifests/kube-apiserver.yaml 有一些价值,比如:

--service-node-port-range=6000-32767

请记住,端口可能与节点上运行的其他服务重叠。
作为一个侧节点flip-6在k8s中是一个正在进行的工作(在本文撰写之时),您可以看到它在kubernetes中非常简单,因为jobmanager并没有真正动态地创建taskmanager和分配资源。

相关问题