如何增加kubernetes中可用于服务的端口范围

如何增加kubernetes中可用于服务的端口范围

问题描述:

我想在暴露大量端口的kubernetes上创建loadBalancer服务。因为你现在还无法在kubernetes上做到这一点(https://github.com/kubernetes/kubernetes/issues/23864)。如何增加kubernetes中可用于服务的端口范围

我已手动由具有以下格式的YAML文件中输入一系列端口:

apiVersion: v1 
kind: Service 
metadata: 
    name: service 
spec: 
    ports: 
    - name: port10000 
    port: 10000 
    protocol: UDP 
    . 
    . 
    . 
    - name: port40000 
    port: 40000 
    protocol: UDP 
    selector: 
    app: app-label 
    type: LoadBalancer  

我收到以下错误:

Error from server (InternalError): error when creating "service-udp.yml": Internal error occurred: failed to allocate a nodePort: range is full

是否有可能增加的范围端口可用于服务?如果是这样,怎么样?

这是由​​参数控制的kube-apiserver - 要改变的方法取决于您的环境。

请记住,nodePorts旨在被负载平衡器用作构建块。所以你想要做的事情很可能不是最好的做法。

希望这有助于..

+0

感谢@JanosLenart,我是谷歌云平台上,你知道如何改变它的KUBE-API服务器--service节点端口范围portRange? – Sebastien

+0

如果您在GKE(托管kubernetes集群)上运行,则无法更改它 –