一个Kubernetes入口可以到达多个集群?范围问题

时间:2019-04-11 06:53:31

标签: kubernetes google-cloud-platform load-balancing google-kubernetes-engine kubernetes-ingress

因此,我目前有两个集群(一旦我开始工作,很快就会更多),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-backendstandard-cluster-1是群集名称,它们都在默认名称空间上。这不是毫无意义的,因为您只能在每个群集中部署一件事吗?除非您的图像包含多个应用程序,否则在这种情况下,它就不再是微服务了。

1 个答案:

答案 0 :(得分:1)

我想用Kubernetes连接两个集群很困难。

相反,您可以将两个服务部署在同一群集上。您可以创建两个部署,并将它们公开为服务。然后入口可以重定向它们之间的流量。

但是为什么每个服务都需要一个集群?

如果没有其他选择,则必须执行以下操作: https://appscode.com/products/voyager/7.1.1/guides/ingress/http/external-svc/