我正在使用 minecraft 服务器映像来创建一个 statefulsets 集群,它们都应该有一个随机的外部端口。有人告诉我使用 nodeport 可以完成这项工作,但不完全是如何完成的。我正在查看 nodeport 但看起来您需要指定确切的端口名称。
我需要集群中的每个副本在同一 IP 上具有随机外部 IP 或随机外部端口,这可能吗,或者我是否需要为每个端口/IP 创建服务。
我正在使用 minecraft 服务器映像来创建一个 statefulsets 集群,它们都应该有一个随机的外部端口。有人告诉我使用 nodeport 可以完成这项工作,但不完全是如何完成的。我正在查看 nodeport 但看起来您需要指定确切的端口名称。
我需要集群中的每个副本在同一 IP 上具有随机外部 IP 或随机外部端口,这可能吗,或者我是否需要为每个端口/IP 创建服务。
您需要为NodePort
minecraft 服务器的每个实例创建一个服务。
ANodePort
打开一个小于 30000 的随机端口,并将其链接到基于选择器的内部(一组)。
例如,假设有一个具有以下资源的 minecraft 服务器实例:
apiVersion: v1
kind: Pod
metadata:
name: minecraft-instance1
labels:
instance: minecraft-1
spec:
...
这是在端口 30007(在集群的每个节点上nodePort
)上到达它的描述:
apiVersion: v1
kind: Service
metadata:
name: service-minecraft-1
spec:
type: NodePort
selector:
instance: minecraft-1
ports:
- port: 25565
targetPort: 25565
nodePort: 30007