因此,目前我在名为“开发”的命名空间中有2个服务需要处理外部流量,并且当前使用type:LoadBalancer,并具有自己的外部IP和DNS记录。
我想开始使用部署在单独的命名空间(称为“ ingress-controller”)中的入口控制器(nginx),并且我对最终状态看起来有些疑问
因此,如果我理解正确,则必须先在“开发”命名空间中创建一个入口,然后在“ ingress-controller”命名空间中创建入口部署和一个外部类型:LoadBalancer服务,并为入口控制器服务的外部IP。然后,我需要将“开发”名称空间中的原始2个服务更改为ClusterIP,由于Ingress规则,现在将获得流量。
主机名将如何工作?假设我的第一个服务的DNS记录为“ foo.com”,第二个服务的域名为“ bar.com”,我可以设置入口规则以将请求路由到2个不同的域吗?
答案 0 :(得分:4)
您已经对Ingress感到满意。现在,您必须使用external-dns。
这将为您创建DNS,并将在入口中指定。例如。
- host: foo.com
http:
paths:
- path: /*
backend:
serviceName: <your service name>
servicePort: 80
答案 1 :(得分:1)
现在您已经创建了入口规则,剩下的就是将DNS记录“ foo.com”和“ bar.com”设置为入口控制器服务的外部ip。