ani*_*nil 5 kubernetes minikube kubernetes-ingress microk8s k3s
Kubernetes 专家您好,
试图在这里获得更好的理解。
我已经使用常规部署yaml和服务yaml创建了一个部署 该服务是节点端口,然后我创建了一个入口并指向该服务
尝试访问该服务,它在 nginx 入口的默认端口 80 上按预期工作。
接下来创建相同的部署和服务文件。这里唯一的例外是节点端口的安装选择了 ClusterIP。创建了一个 Ingress 并指向了服务。
尝试访问该服务,但它只是在 nginx 主页上失败,并且没有对我的应用程序进行任何路由。
我知道nodeport是将应用程序暴露给外部世界的。但随后我使用 Ingress 来实现相同的功能。
即使我们使用Ingress,我们真的需要将服务设置为节点端口吗???
或者我的 yaml 文件出了严重的问题。我尝试阅读有关它的内容,但无法得到任何相关的解释。
谢谢你,安尼什
首先,不同云提供商的资源工作方式Service略有Ingress不同。例如,在 Google Cloud Platform 和AWS上,您需要NodePort在使用时使用服务Ingress,但在例如 OpenShift 上ClusterIP可以正常工作。
大多数情况下,原因是负载均衡器位于集群外部(我工作的 OpenShift 环境并非如此)。
从Google Cloud 文档来看,用于NodePort负载平衡,但ClusterIP如果您的负载平衡器是“容器本机”。
在服务清单中,除非您使用容器本机负载平衡,否则必须使用 type: NodePort。如果使用容器本机负载均衡,请使用类型:ClusterIP。
| 归档时间: |
|
| 查看次数: |
587 次 |
| 最近记录: |