1

We are using Istio 1.11.2 and facing some issue with Istio retry.

In order to disable the automatic retry, we added the following block in object in the http list. However, Istio still retries requests.

apiVersion: networking.istio.io/v1beta1
kind: VirtualService
metadata:
  name: gateway
  namespace: development
spec:
  gateways:
  - development/ingressgw
  hosts:
  - gateway.dev.rtm.com
  http:
  - match:
    - uri:
        prefix: /
    retries:
      attempts: 0
    route:
    - destination:
        host: gateway.development.svc.cluster.local
        port:
          number: 443
Wytrzymały Wiktor
  • 11,492
  • 5
  • 29
  • 37
Vowneee
  • 956
  • 10
  • 33
  • How many are these repeated requests? What exactly does your network infrastructure look like? What do you have besides VirtualService? Have you seen [this question](https://stackoverflow.com/questions/66680309/disable-istio-default-retry-strategy-at-least-on-post-requests)? – Mikołaj Głodziak Feb 07 '22 at 07:58
  • its repeating for 3 times for 503, where we have retry attepmpts to 0. Is it istio bug? we are using istio 1.11.2 – Vowneee Feb 09 '22 at 21:08
  • Could you answer my other questions? – Mikołaj Głodziak Feb 11 '22 at 14:19
  • How many are these repeated requests? from the appinsight logs we could identify that , there are 3 tries are happening eachtime, eventhough the retry attempts set to 0 in the virtual services this not showing the same in proxy configuration, where the numberretry still showing as default value 2. Seems that is the issue and istio has some bug releated to this. – Vowneee Feb 13 '22 at 09:45
  • What exactly does your network infrastructure look like? Our AKS cluster is configigured istio service mesh default profile and each applications are having seperate virtual services. which are tied to ingressgateway. What do you have besides VirtualService? Virtualservices along with destination rules – Vowneee Feb 13 '22 at 09:47

1 Answers1

0

Your Istio setup looks good. I checked it and tested it, in my case everything is fine and I do not see repeated connection attempts. I also didn't find any bugs that could be related to this configuration.

This behaviour can also be caused by the application itself. Note and make sure the application doesn't have a retry policy on its side. See this example of how something like this can work.

Also make sure that your Istio configuration is correct (hosts, prefix, route) and you check exactly this configuration and not any other configuration. It is also possible that you have set something different than what you wanted and therefore it does not work. The value you received, 3 repetitions, may indicate that Istio is using the default value. See this issue for more information.

If you make sure that your Istio configuration is 100% correct and additionally your application does not use retry anywhere, try to verify the Istio envoy configuration for a specific service using the command istioctl proxy-status <your service> like in this example. Pay particular attention to point 2 in this paragraph.

If that still doesn't help, try creating a thread on https://discuss.istio.io/.

Mikołaj Głodziak
  • 4,775
  • 7
  • 28