在Kubernetes中,可以通过以下两种方式设置Service的本地端口(local port):

  1. 使用Service的spec.ports字段:可以在Service的配置文件中指定spec.ports字段来设置Service的本地端口。例如:
apiVersion: v1
kind: Service
metadata:
  name: my-service
spec:
  selector:
    app: my-app
  ports:
    - name: http
      protocol: TCP
      port: 80
      targetPort: 8080
      nodePort: 30080  # 设置本地端口
  type: NodePort

在上述示例中,nodePort: 30080指定了Service的本地端口为30080。

  1. 使用kubectl命令行工具:可以使用kubectl命令行工具来设置Service的本地端口。例如:
kubectl expose deployment my-deployment --type=NodePort --name=my-service --port=80 --target-port=8080 --node-port=30080

上述命令将创建一个名称为my-service的Service,并将其本地端口设置为30080。

无论使用哪种方式,一旦Service的本地端口设置成功,Kubernetes将自动为该Service分配一个节点(Node)上的IP地址和端口,并将所有通过该本地端口访问的流量转发到Service的目标端口(即targetPort)上


原文地址: https://www.cveoy.top/t/topic/hJ6t 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录