我使用 kubernetes 部署了我的应用程序,现在我想向应用程序添加自定义域。我正在使用本教程,它使用入口来设置自定义域。
我注意到应用负载均衡器有一个 ip。为什么我不应该使用那个ip?我需要入口的原因是什么?
2 回答
如果您想公开您的应用程序,您可以轻松地使用类型服务NodePort
而不是 Ingress。你也可以使用 type LoadBalancer
。LoadBalancer
是一个超集NodePort
并分配一个固定的ip。使用该类型LoadBalancer
,您可以为该固定 IP 分配域。如何执行此操作取决于您在何处注册您的域。
要回答您的问题:
- 您不需要 Ingress,您可以使用
NodePort
服务或LoadBalander
服务。 - 要为您的应用分配域,您不需要 Ingress,您可以使用
LoadBalancer
服务 - 在任何情况下,您都可以只使用 ip,但正如已经指出的那样,域更方便。
如果您只是想试用您的应用程序,您可以使用 IP。以后可以分配域。
这是关于如何公开应用程序的官方 kubernetes 教程:https ://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/
在 IP 上使用域的明显优势是不必记住 158.21.72.879 而不是 mydomain.com。
接下来,使用 mydomain.com,您可以根据需要多次更改 IP,而无需更改对 mydomain.com 的调用。
Ingress
有不同的风格,高度可配置,允许使用 kubernetes 服务名称进行流量重定向,其中一些甚至有自己的统计页面,因此您可以监控您的请求。
此外,如果您使用 gcloud 等,LoadBalancer
IP 可能会更改(除非另有配置),从而为您分配 IP 池中的任何可用 IP。
真正的问题是 - 为什么不使用Ingress
?