rollouts-demo icon indicating copy to clipboard operation
rollouts-demo copied to clipboard

Internal request route not base on weight but replica count

Open StyleTang opened this issue 1 year ago • 0 comments

Hi Team, I tested examples/istio-subset, it is a canary(subset) rollout. Assume only 1 replica.

if I go to step 1:

      steps:
      - setWeight: 10
      - pause: {}         # pause indefinitely

Then env is: canary pod count : 1 canary weight: 10 % stable pod count : 1 stable weight: 90 %

If I use internal host, like http://istio-rollout.rollouts-demo-istio.svc.cluster.local/color, then the issue happens, the real traffic is 50% vs 50%, not base on weight but pod count.

apiVersion: v1
kind: Service
metadata:
  name: istio-rollout
spec:
  ports:
  - port: 80
    targetPort: http
    protocol: TCP
    name: http
  selector:
    app: istio-rollout

======================================================================

But if I use external host, it has no issue, like http://istio-rollout.apps.argoproj.io/color, the traffic dispatch works well. canary 10% vs stable 90%

apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: istio-rollout-vsvc
spec:
  gateways:
  - istio-rollout-gateway
  hosts:
  - istio-rollout.apps.argoproj.io
  - istio-rollout.local

Do you guys encounter this issue before? Or I made some mistake here? Thanks for taking time to read this issue.

StyleTang avatar Jan 18 '24 15:01 StyleTang