Theory

Updated

October 30, 2026

Theory: Traffic Split is a Mesh API, Not a Replica Count

Istio VirtualService weights send a percentage of requests to canary subsets. Replica count can stay equal while traffic is 1%.

Invariants

  1. DestinationRule subsets must match pod labels.
  2. Replica-based routing ≠ request-based routing under uneven load.
  3. setCanaryScale exists because HPA + replica canaries fight (later chapter).
Gateway → VirtualService  90% stable subset
                       10% canary subset

What can break

  • Subsets that do not match Rollout’s pod labels.

How to read this chapter

Istio objects, weights, replica vs traffic.