如何在Kubernetes中暴露一系列端口?

6

我们如何在Kubernetes中暴露一系列端口?
我的云应用程序在运行时使用一系列端口(40000 ~42000)。

我该如何在Kubernetes服务YAML文件中指定一系列暴露的端口?

3个回答

6

一种选择是使用go-templates生成所有端口的yaml,然后部署该yaml,接着使用gomplate编译这个yaml。

lotsofports.yaml

apiVersion: v1
kind: Service
metadata:
  namespace: some-service
  labels:
    name: some-service
spec:
  ports:
  {{- range seq 0 2000}}
  - port: {{add 40000 .}}
    targetPort: {{add 40000 .}}
    name: exposed-port-{{add 40000 .}}
  {{- end -}}
  selector:
    name: some-service
  sessionAffinity: None
  type: ClusterIP

然后编译YAML文件:

gomplate -f lotsofports.yaml > service.yaml

6

3

正如@Thomas指出的,目前还不支持。

然而,作为解决方法,您可以尝试使用Helm模板。在values.yaml文件中创建具有服务模板和端口的图表。

Original Answer翻译成"最初的回答"


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接