Been struggling trying to work out issues with ingress for a few weeks now. For background:
– Have various pods deployed in Kubernetes (EKS) that I can expose to the outside world easily using either Service (Loadbalancer) or Ingress (AWS ALB)
– Initially added Istio 1.2.5 into the mix, just using the demo install (just using a kubectl apply
on the demo install file). From there was able to expose things using istio-ingressgateway / Gateways / VirtualServices with modest success.
– Recently, in the process of trying to solve some other issues, upgraded to Istio 1.3.4, installed via helm template
.
Now, nothing I do to try to configure ingress works. I always get a 404 returned via the ingress gateway. I have reduced the problem space down by using the “helloworld” sample app, but that hasn’t helped. I’m not sure that this is my only problem, but one thing I can see that happens is even with what seems like a proper VirtualService / Gateway configuration, the routes returned by istioctl proxy-config route -o json -n istio-system istio-ingressgateway-xxxxx
are never updated. It always shows the “blackhole” route still remaining (which I’m almost sure is part of the problem, I just don’t understand why my Gw/Vs combinations aren’t updating the routes).
Routes: https://gist.github.com/pdavies011010/33798fa19464140255d4451b8ec23f6b
Helm Install Params (latest of many different iterations): https://gist.github.com/pdavies011010/58bba66f4bfe7ed7711715d22d68f278
HelloWorld resources: https://gist.github.com/pdavies011010/6798d5003390c80ec6b6406c3687bfc9
HelloWorld Gateway resources: https://gist.github.com/pdavies011010/79c74baaca3151346ec83fa41e6fa349
I’ve also tried to reduce it further by cutting out the v2 version of helloworld as it seems like this configuration might require a destination rule, but that no no effect either. Anyone have any ideas?