因此,我目前有两个集群(一旦我开始工作,很快就会更多),ClusterA和ClusterB。
一个入口是否可以与两个集群的服务接口?
集群A托管前端和入口,而集群B托管后端。
摘录的入口如下。后端工作正常。
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:{...}
selfLink: /apis/extensions/v1beta1/namespaces/default/ingresses/test-frontend-ingress
uid: //
spec:
backend:
serviceName: idu-frontend-XYZ
servicePort: 80
rules:
- http:
paths:
- backend:
serviceName: test-backend-app-service
servicePort: 8080
path: /api/v2/
- backend:
serviceName: idu-frontend-XYZ
servicePort: 80
path: /
tls:
- secretName: tls-cert-name
status:
loadBalancer:
ingress:
- ip: 123.456.789.012
后端服务网址:
https://console.cloud.google.com/kubernetes/service/asia-southeast1-b/test-backend/default/test-backend-app-service...
入口试图指向的URL:
https://console.cloud.google.com/kubernetes/service/asia-southeast1-b/standard-cluster-1/default/test-backend-app-service...
所以我收集到的是,入口只能与它们在同一群集中的事物交互作用? test-backend
和standard-cluster-1
是群集名称,它们都在默认名称空间上。这不是毫无意义的,因为您只能在每个群集中部署一件事吗?除非您的图像包含多个应用程序,否则在这种情况下,它就不再是微服务了。
答案 0 :(得分:1)
我想用Kubernetes连接两个集群很困难。
相反,您可以将两个服务部署在同一群集上。您可以创建两个部署,并将它们公开为服务。然后入口可以重定向它们之间的流量。
但是为什么每个服务都需要一个集群?
如果没有其他选择,则必须执行以下操作: https://appscode.com/products/voyager/7.1.1/guides/ingress/http/external-svc/