istioctl experimental describe pod intro
istioctl command has a really awesome that you can use to examine a pod to see if virtual service or destination rule are configure correctly. It gives you the key perspective required when troubleshooting issue with pod setup.
You can do something like:-
istioctl experimental describe pod httpbin-686d6fc899-gdsb6
And it will show you virtual service configuration, port used and the service.
Let's look at bookinfo sample app. If we have not deployment bookinfo-gateway, we won't see virtual service.
Once we have deployed
kubectl apply -f samples/bookinfo/networking/bookinfo-gateway.yaml
And configuring the service
kubectl apply -f samples/bookinfo/networking/virtual-service-all-v1.yaml
If we re-run this command again, we will noticed that there's some warning - telling us that the destinationrule is not configure yet and this will fail our routing.
And it is right because if we look at this here, we see that our virtual service has only 1 definition.
Hopefully this gives you a easier way to troubleshoot and review issues related with istio and application setup.
Destination rule different
What if you have the same desetination rule define for the same host but the only difference is the name?
The istioctl won't be able to assist here. But if you run istioctl analyze, you will uncover this issue and see the output as shown in the diagram here.
Comments