Yes, as @bethmage says, there are missing variables, but perhaps it’s not the only problem.
Some debugging hints:
-
Make sure Grafana API & Istio dashboard is accessible:
curl https://my.grafana.com/api/search?query=Istio%20Workload%20Dashboard
You should have a result similar to:
[{"id":8,"uid":"UbsSZTDik","title":"Istio Workload Dashboard","uri":"db/istio-workload-dashboard","url":"/d/UbsSZTDik/istio-workload-dashboard","slug":"","type":"dash-db","tags":[],"isStarred":false,"folderId":1,"folderUid":"i5rjgqrZk","folderTitle":"istio","folderUrl":"/dashboards/f/i5rjgqrZk/istio"}]
If not, then perhaps it’s because you don’t have Istio dashboards. Since you run your own Grafana instance you must make sure to have installed on it the grafana dashboards that Istio provides (Kiali doesn’t do it on its own).
Next step would be to check the same from Kiali pod, using in_cluster_url, to make sure Kiali can reach Grafana. Run the following with your KIALI_POD name:
kubectl exec KIALI_POD -n istio-system -ti /bin/bash
curl http://grafana.svc:3000/api/search?query=Istio%20Workload%20Dashboard
You should see the same result as before. If not, then it’s probably the in_cluster_url that isn’t correct. (note that if it’s the case, you should also see some errors in Kiali logs).
Also, I’ve opened an issue on Kiali because currently, the generated links would be broken with “?orgId=1” is base URL: https://github.com/kiali/kiali/issues/2623 ; will fix asap, an easy one.