我打算建立一个网站来托管静态文件。用户将上传他们的文件,而我将带有nginx
映像的大量部署部署到Kubernetes节点上。我的主要目标是将用户的应用程序部署到my-blog-app.mysite.com
之类的子域中。一段时间后,用户可以使用自定义域。
我了解到,当我在Pod上部署Nginx映像时,我必须创建一个服务,以通过负载均衡器将端口80(或443)公开到Internet。
我也读过关于Ingress
的内容,看起来像我所需要的,但我认为我不理解这个概念。
我的问题是,例如,如果我有500个nginx Pod在运行(每个是一个不同的网站),我是否需要为该节点中的每个Pod提供服务(在这种情况下为500个服务)?
答案 0 :(得分:2)
您正在寻找https://kubernetes.io/docs/concepts/services-networking/ingress/#name-based-virtual-hosting。
使用这种类型的Ingress,您可以根据与您的用例完全匹配的Host标头将流量路由到不同的nginx实例。
无论如何,是的,假设您当前的体系结构,则需要为每个吊舱提供服务。您没有考虑其他方法吗?就像拥有通用的侦听器(nginx实例)并根据授权或其他方式获取正确的内容一样?