Better Understanding of Node Port

I have an AKS cluster with 2 nodes

Node A. 10.216.6.229
Node B. 10.216.6.230

We do not have External Load Balancer, so Istio Gateway EXTERNAL-IP is . As per Get Started documentation, I used command below to get INGRESS-HOST, which was set to Node A IP of 10.216.6.229. After completing the Get Started steps I can open sample app BookInfo on http://10.216.6.229:30438/productpage

$ export INGRESS_HOST=$(kubectl get po -l istio=ingressgateway -n istio-system -o jsonpath='{.items[0].status.hostIP}')

Here’s the questions I have

  1. For some reason http://10.216.6.230:30438/productpage is also responding. I don’t understand how the traffic is routed to Node B address.

  2. What happens if Node A with IP 10.216.6.229 crashes and is restarted with a different IP address?

  3. Is Node Port a proper configuration for production environment?

  4. Can I install Istio with EXTERNAL-IP configured? I was able to do this with NGinx.

Thanks for the information.