我有多个名称空间,其中一些名称空间的节点端口范围已经从30000保留到32000。我想用Helm部署一组新的作业,每个作业都有两个节点端口值,例如32014和32015。我想知道是否有可能将Kubernetes可以选择NodePort值的范围限制为32000-32200,或者是否可以向Helm模板添加某种函数,该函数将根据已经部署的节点端口的数量将每个新的NodePort递增1。有什么办法可以做到这一点吗?
我有多个名称空间,其中一些名称空间的节点端口范围已经从30000保留到32000。我想用Helm部署一组新的作业,每个作业都有两个节点端口值,例如32014和32015。我想知道是否有可能将Kubernetes可以选择NodePort值的范围限制为32000-32200,或者是否可以向Helm模板添加某种函数,该函数将根据已经部署的节点端口的数量将每个新的NodePort递增1。有什么办法可以做到这一点吗?
1条答案
按热度按时间tcomlyy61#
NodePort服务的Kubernetes文档声明:
如果将
type
字段设置为NodePort
,则Kubernetes控制平面将从--service-node-port-range
标记(默认为30000-32767)指定的范围内分配一个端口。每个节点将该端口(每个节点上的相同端口号)代理到您的服务中。您的服务在其.spec.ports[*].nodePort
字段中报告分配的端口。回读这篇文章:
nodePort
值;或没有办法让集群选择端口,只能在服务指定的范围内选择。
在Helm上下文中,我看到的一种方法是让服务类型是可配置的。如果它是NodePort类型的服务,图表将能够在部署时确定服务名称,并且
NOTES.txt
文件可以写出适当的kubectl get
命令以找出实际端口号。下面是bitnami/harbor
图表中的一个具体例子。