Was du nicht tun solltest
Mesh für kleine Cluster (<20 Services): Komplexität > Nutzen, NetworkPolicy + cert-manager reichen.
EnvoyFilter / Wasm als Default-Tool (Istio): erst Telemetry-API + AuthorizationPolicy. EnvoyFilter bricht zwischen Istio-Minors.
VirtualService und HTTPRoute für dieselbe Workload: in Ambient ausdrücklich nicht unterstützt (undefiniertes Verhalten). Pro Workload eine API.
Linkerd ohne Default-Policy: Cluster-Default ist
all-unauthenticated. Ein Server ohne Regeln
blockt dagegen alles (accessPolicy: deny), Probes nur
automatisch erlaubt, solange keine Route am Server
hängt.
Cilium-L7-Policy ohne Hubble: der Audit-Mode deckt nur L3/L4 ab, L7-Denies sieht man erst in den Hubble-L7-Flows.
Linkerd neben Gateway API v1.6: der
Standard-Channel serviert TCPRoute/TLSRoute nur noch als v1. Linkerd
liest TCPRoute nur als v1alpha2 und überspringt sie bis auf eine
Log-Warnung, TLSRoute erst ab edge-26.8.4. Die CRDs aus
linkerd-crds (v1.1.1; nur mit
installGatewayAPI=true, seit 2.19 aus) blockt die
safe-upgrades-Policy der Gateway API.
Gateway API v1.7 ohne Blick auf Retries (Istio,
für retry aus dem Experimental-Channel): die neue CRD
setzt retry.attempts standardmäßig
auf 1, Istio nahm ohne Angabe 2. Eine HTTPRoute mit
retry ohne attempts wiederholt dann einmal
statt zweimal.
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