Topologien
Istio: Primary-Remote (ein istiod,
Workload-Cluster ohne Control-Plane) |
Multi-Primary (istiod pro Cluster, gemeinsame Root-CA) |
External Control-Plane. Pflicht: gemeinsame
trustDomain oder trustDomainAliases.
Ambient: nur Multi-Primary; Ambient-Multi-Cluster laut Projekt nicht
in einer bestehenden Sidecar-Produktion aktivieren.
Linkerd: multicluster extension mit
Service-Mirror, Gateway-basiert, Flat Network ohne Gateway (2.14+)
oder Federated Services (2.17+), ein gemeinsamer Trust Anchor.
linkerd multicluster check las die Secrets aller
Links clusterweit als Kubeconfig: wer im eigenen
Namespace Link und Secret anlegen darf, brachte so Code
auf den Admin-Rechner (GHSA-7hx9-xmmq-23f3, kritisch, Fix ab
edge-26.9.1).
Cilium: ClusterMesh,
eBPF-direct-routing zwischen Clustern (kein Gateway-Hop) bei
Cilium-CNI auf allen Clustern.
Trust-Domain-Falle
Verschiedene Trust-Domains ⇒ mTLS-Reject zwischen Clustern.
Migration: trustDomainAliases im Quell-Cluster setzen,
bevor neue Workloads deployt werden, dann switchen. Ab Istio 1.31
lässt sich in AuthorizationPolicy direkt per
source.trustDomains / notTrustDomains
filtern.
Projekte und Quellen
- Istio (CNCF Graduated): istio.io/latest/docs · github.com/istio/istio · cncf.io/projects/istio
- Linkerd (CNCF Graduated): linkerd.io/2-edge · github.com/linkerd/linkerd2 · cncf.io/projects/linkerd
- Cilium (CNCF Graduated): docs.cilium.io, Service Mesh · github.com/cilium/cilium · cncf.io/projects/cilium
- Kuma (CNCF Sandbox): kuma.io/docs · github.com/kumahq/kuma · cncf.io/projects/kuma
- Consul (HashiCorp, kein CNCF-Projekt): developer.hashicorp.com/consul · github.com/hashicorp/consul
- Gateway API (Kubernetes SIG Network): gateway-api.sigs.k8s.io, GAMMA · github.com/kubernetes-sigs/gateway-api
- Envoy (CNCF Graduated, Proxy in Istio, Cilium, Kuma und Consul): envoyproxy.io/docs · github.com/envoyproxy/envoy · cncf.io/projects/envoy