首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kubernetes暴露服务不分配外部ip

Kubernetes暴露服务不分配外部ip
EN

Stack Overflow用户
提问于 2018-06-29 01:28:06
回答 2查看 3.9K关注 0票数 0

我有一个通过第一个cmd创建的内部服务。然后,我在创建的服务上运行kubectl expose。

代码语言:javascript
复制
kubectl -n XXX create -f service.yml
kubectl -n XXX get svc
NAME                                 TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)                                                                            AGE
foo                           ClusterIP   10.152.183.41    <none>        8089/TCP


kubectl -n XXX expose service foo --type=NodePort --name=foo-ext
kubectl -n XXX get svc
NAME                                 TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)                                                                            AGE
foo                           ClusterIP   10.152.183.41    <none>        8089/TCP                                                                           29m
foo-ext                   NodePort    10.152.183.177   <none>        8089:30406/TCP

如果外部ip在哪里,我会认为kubectl expose会给外部服务分配一个外部ip,我需要传递一个额外的标志吗?

EN

回答 2

Stack Overflow用户

发布于 2018-06-29 03:04:38

根据Kubernetes docs的说法

如果您将类型字段设置为NodePort,Kubernetes主节点将从-- Service - Node - port -range标志(默认值为30000-32767)指定的范围中分配一个端口,并且每个节点将该端口(每个节点上的相同端口号)代理到您的服务中。

因此,Kubernetes将确保在托管此服务的所有节点上公开相同的端口号。在本例中,外部IP是节点的IP地址。

而库伯内斯对External IPs的评价是这样的

如果存在路由到一个或多个集群节点的外部If,则可以在这些外部If上公开Kubernetes服务。在服务端口上使用外部IP (作为目标IP)进入群集的流量将被路由到其中一个服务端点。externalIPs不是由Kubernetes管理的,而是由集群管理员负责的。

NodePort类型的服务的缺点是,它本身不是一种可伸缩的方法,并且缺乏服务可发现性。

如果您想要通过单个IP地址将服务公开给Kubernetes集群之外的消费者,如果您有公共云或混合云Kubernetes部署,您可能想要查看LoadBalancer类型的服务,或者如果您有本地Kubernetes部署,您可能想要查看Ingress

票数 2
EN

Stack Overflow用户

发布于 2018-06-29 03:38:22

LoadBalacer类型的服务“分配”了一个外部IP,但它是特定于云提供商的,所以它不起作用。除非您有一个指向集群的负载均衡器(当然是使用外部IP )。

在其他服务中,您唯一的选择是NodePort类型的服务,它会将您的pod端口映射到节点上的端口,因此可以从外部世界访问它。丑陋的部分是它将在一个类似30021的端口上(在30000-32767之间)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51088532

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档