我想用会话作业创建一个新的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过程。
2条答案
按热度按时间km0tfn4u1#
在flink-conf.yaml中,设置
这将使资源管理器连接回到您希望它使用的静态端口。
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
有一些价值,比如:请记住,端口可能与节点上运行的其他服务重叠。
作为一个侧节点flip-6在k8s中是一个正在进行的工作(在本文撰写之时),您可以看到它在kubernetes中非常简单,因为jobmanager并没有真正动态地创建taskmanager和分配资源。