群集上的Kubernetes节点端口(默认范围和用户定义范围),或者它只能是一个范围

群集上的Kubernetes节点端口(默认范围和用户定义范围),或者它只能是一个范围,kubernetes,service-node-port-range,Kubernetes,Service Node Port Range,在kubernetes群集上是否可以使用节点端口默认范围+用户定义范围,或者它只能是一个范围 我们可以配置为默认范围加上用户定义的值范围吗?像默认范围是30000-32767一样,我们是否也可以有40000-41000的额外范围 将保留群集中其他应用程序的默认范围,但生成一个特定于我的应用程序的范围 我已经测试过在范围外分配端口,但它显然失败了,因此范围是硬定义的。我想了解是否有任何方法可以使用两个范围,或者用户需要使用默认范围或自定义范围(即不支持单个集群中的两个不同范围) 不幸的是,这是不可

在kubernetes群集上是否可以使用节点端口默认范围+用户定义范围,或者它只能是一个范围

我们可以配置为默认范围加上用户定义的值范围吗?像默认范围是30000-32767一样,我们是否也可以有40000-41000的额外范围

将保留群集中其他应用程序的默认范围,但生成一个特定于我的应用程序的范围

我已经测试过在范围外分配端口,但它显然失败了,因此范围是硬定义的。我想了解是否有任何方法可以使用两个范围,或者用户需要使用默认范围或自定义范围(即不支持单个集群中的两个不同范围)


不幸的是,这是不可能的

默认范围实际上是30000-32767,但可以通过设置
--服务节点端口范围
更新文件
/etc/kubernetes/manifests/kube apiserver.yaml
,并添加行
——服务节点端口范围=xxxxx-yyyy

但是要小心,不要产生任何配置问题,因为选择范围是为了避免与主机网络上的任何其他内容发生冲突

我认为最好的解决办法是设定一个单一但更广泛的范围


我希望有帮助

以上面的答案作为输入,在下面的测试中,我能够得出结论,这不是一个受支持的函数,每个集群必须有一个节点端口范围

我可以通过更新kube apiserver的清单文件来尝试以下操作

在添加带有多个范围值的flag--service node port range时,我注意到kube apiserv只接受一个标志(列表中的最后一个),因此我无法让它设置两个不同的范围

在文件上尝试了以下两种语法

使用以下语法,文件中的最后一个标志将覆盖所有前面标志的值,范围仅为40000到41000

apiVersion: v1
kind: Pod
metadata:
  creationTimestamp: null
  labels:
    component: kube-apiserver
    tier: control-plane
  name: kube-apiserver
  namespace: kube-system
spec:
  containers:
  - command:
  .
  .
  .
    - --service-node-port-range=30000-32000
    - --service-node-port-range=38000-39000
    - --service-node-port-range=40000-41000
  .
  .
  .
通过在端口范围40000-41000上成功创建服务进行测试

$ kubectl get service nginx
NAME    TYPE       CLUSTER-IP      EXTERNAL-IP   PORT(S)        AGE
nginx   NodePort   10.98.125.217   <none>        80:40000/TCP   75m
apiVersion: v1
kind: Pod
metadata:
  creationTimestamp: null
  labels:
    component: kube-apiserver
    tier: control-plane
  name: kube-apiserver
  namespace: kube-system
spec:
  containers:
  - command:
  .
  .
  .
    - --service-node-port-range=30000-32000
    - --service-node-port-range=38000-39000
    - --service-node-port-range=40000-41000
  .
  .
  .
$ kubectl get service nginx
NAME    TYPE       CLUSTER-IP      EXTERNAL-IP   PORT(S)        AGE
nginx   NodePort   10.98.125.217   <none>        80:40000/TCP   75m
    - --service-node-port-range=3000-32000,40000-41000