【发布时间】:2020-04-09 00:16:46
【问题描述】:
我想在 3000-14000 之间的所有端口上公开我的应用程序。为此,我通过更新 kubeapi-server 清单文件字段“--service-node-port-range=3000-14000”更改了默认的 nodePort 范围 30k - 32767。对我来说,按照下面的模板手动指定所有端口号几乎是不可能的。
apiVersion: v1
kind: Service
metadata:
name: myapp-service
spec:
type: nodePort
selector:
app: myapp
ports:
- targetPort: 3000
port: 3000
nodePort: 3000
...................
...................
- targetPort: 14000
port: 14000
nodePort: 14000
我们是否有任何其他替代解决方案/插件,以便打开范围 3k - 14k 之间的所有端口。
【问题讨论】:
-
你为什么要在所有 ~11000 个端口上公开你的服务?
-
我的应用程序不通过预定义的静态端口发送/输出信息,而是自动分配范围在 3k 到 14k 之间的端口。
-
那么在这种情况下,使用
nodePort将如何帮助您?专用端口号主要用于允许传入流量。 -
好的,让我详细介绍一下。我的应用程序是一个单体应用程序,它结合了 11k 个不同的服务,每个服务使用一个特定的端口但在同一个应用程序下(还不是微服务)。我想公开所有这些 11k 服务。
-
编写一个脚本来创建这个模板。为什么你有 11k 种不同的服务?
标签: kubernetes kubernetes-ingress istio kubernetes-service