首页 文章

无论如何要获得kubernetes集群的外部端口

提问于
浏览
6

我在kubernetes集群中的所有节点上的外部端口上公开了一项服务:root @ ubuntu:/ home #kubectl create -f nginx-service.yaml您已在集群中所有节点上的外部端口上公开了您的服务 . 如果要将此服务公开给外部Internet,则可能需要为服务端口(tcp:30002)设置防火墙规则以提供流量 .

有关详细信息,请参阅http://releases.k8s.io/release-1.2/docs/user-guide/services-firewalls.md . service "nginx-service" created root @ ubuntu:/ home#

那么,无论如何都要获得kubernetes集群的外部端口?

2 回答

  • 17

    kubectl get svc --all-namespaces -o go-template='{{range .items}}{{range.spec.ports}}{{if .nodePort}}{{.nodePort}}{{"\n"}}{{end}}{{end}}{{end}}'

    这将获得所有命名空间中的所有服务,并且基本上完成:“对于每个服务,对于每个端口,如果定义了nodePort,则打印nodePort” .

  • 2

    如果view your service使用 kubectl describe service NAME ,它应该显示分配了哪个端口(在NodePort字段中) .

相关问题