外网如何访问Service

80次阅读
没有评论

共计 965 个字符,预计需要花费 3 分钟才能阅读完成。

本篇文章为大家展示了外网如何访问 Service,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

除了 Cluster 内部可以访问 Service,很多情况我们也希望应用的 Service 能够暴露给 Cluster 外部。Kubernetes 提供了多种类型的 Service,默认是 ClusterIP。

ClusterIP 
Service 通过 Cluster 内部的 IP 对外提供服务,只有 Cluster 内的节点和 Pod 可访问,这是默认的 Service 类型,前面实验中的 Service 都是 ClusterIP。

NodePort 
Service 通过 Cluster 节点的静态端口对外提供服务。Cluster 外部可以通过   NodeIP : NodePort   访问 Service。

LoadBalancer 
Service 利用 cloud provider 特有的 load balancer 对外提供服务,cloud provider 负责将 load balancer 的流量导向 Service。目前支持的 cloud provider 有 GCP、AWS、Azur 等。

下面我们来实践 NodePort,Service httpd-svc  的配置文件修改如下:

添加  type: NodePort,重新创建  httpd-svc。

下面测试 NodePort 是否正常工作。

规则的含义是:访问当前节点  32312  端口的请求会应用规则  KUBE-SVC-RL3JAE4GN7VOGDGP,内容为:

现在配置文件中就有三个 Port 了:
nodePort  是节点上监听的端口。
port  是 ClusterIP 上监听的端口。
targetPort  是 Pod 监听的端口。

最终,Node 和 ClusterIP 在各自端口上接收到的请求都会通过 iptables 转发到 Pod 的  targetPort。

应用新的  nodePort  并验证:

nodePort: 30000  已经生效了。

我们讨论访问应用的机制 Service,学习了如何创建 Service;Service 的三种类型 ClusterIP、NodePort 和 LoadBalancer,以及它们各自的适用场景。

上述内容就是外网如何访问 Service,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注丸趣 TV 行业资讯频道。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-25发表,共计965字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)