kind: FederatedService
metadata:
name: fed-svc-1
namespace: fed-ns-1
spec:
.template:
...
placement:
clusters:
e name: cluster A
e name: cluster B
e name: cluster D
kind: FederatedService
metadata:
name: fed-svc-2
namespace: fed-ns-1
spec:
.template:
...
placement:
clusters:
e name: cluster A
e name: cluster C
e name: cluster D
Kubernetes federation
controller (kubefed)
Worker Nodes
fed-svc-1
fed-svc-2
Worker Nodes
Federation Host
Cluster A
fed-svc-1 fed-svc-2
fed-svc-1
fed-svc-2
Worker Nodes Worker Nodes Worker Nodes
Member Cluster B Member Cluster C Member Cluster D
Service Mesh Model
While KubeFed uses federated resource types to propagate resources across member
clusters, products like Google Anthos or Banzai Cloud PKE use Istio multicluster fea-
tures and config management operators to enable multi-cluster pod connectivity. With
the service mesh model, the deployments are managed on the individual clusters, but
the service-to-service cross-cluster traffic is managed by the Istio control plane. Istio
deploys the sidecar proxy with each pod, and Istio multi-cluster enables pod-to-pod
connectivity across clusters. Istio multi-cluster can be deployed with a single control
plane, or multiple control planes for each environment.
FALL 2019 | THE DOPPLER | 67