I have a virtual service in Istio where I need to distribute incoming traffic between two destinations based on specific requirements. Specifically, I need to send a maximum of 100 requests per second to one destination at any point of time, while directing all excess traffic to the other destination.
Here’s what I have so far:
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: my-service
spec:
hosts:
- my-service
http:
- route:
- destination:
host: destination1
weight: 100
- destination:
host: destination2
weight: 0
I also tried using rate-limiting other than weights, but seems it doesn’t support sending excess requests to another destination