我有以下设置: k8s集群A,包含服务SA k8s群集B,包含服务SB,以及将流量路由到SB
的HTTP入口是否可以将服务SA添加为入口路径之一的后端服务?如果是这样,我如何在入口配置文件中引用它? (以通常的方式使用选择器并不起作用,大概是因为我们处于不同的聚类中)
答案 0 :(得分:7)
Ingress对象有助于为单个群集配置HTTP(S)负载平衡。他们没有多个集群的概念,所以他们不会有你想要完成的配置语言(也许他们会用Ubernetes,但他们今天肯定不会。)< / p>
结果是您可以绕过Ingress配置并手动配置路由(毕竟,Ingress实际上只是一种典型L7配置的易用快捷方式)。您可以在GCP中创建自己的L7配置,并设置基于路径的转发以路由到不同的后端组。然后,您可以将后端组分配给在每个群集中配置的NodePort
服务。
粗略的步骤是:
NodePort
服务gcloud compute instance-groups managed set-named-ports ...
)gcloud compute backend-services create ...
)gcloud compute backend-services add-backend ...
)gcloud compute url-maps create ...
)gcloud compute target-http-proxies create ...
)gcloud compute forwarding-rules create ...
)答案 1 :(得分:0)
只是为罗伯特上面所说的添加一些内容。首先,您将要在NodePort服务中指定特定的nodePort。然后,使用该端口号作为“命名端口”和健康检查。最后,您创建的防火墙规则也必须允许该端口。
作为初学者,我确实发现使用控制台使配置变得更加容易。