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 when we run istioctl experimental describe pod command again, we will see that the error above disappear. But it is telling us our virtual service has not utlized destination rule subset fully. 



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

Popular posts from this blog

gemini cli getting file not defined error

NodeJS: Error: spawn EINVAL in window for node version 20.20 and 18.20

vllm : Failed to infer device type