You must have missed some step. I reproduced and it is looking good on my end.
Double check this steps:
Verify that the Prometheus service is running in the cluster:
$ kubectl -n istio-system get svc prometheus
Launch the Prometheus UI
istioctl dashboard prometheus
Execute a Prometheus query(click Execute ). E.g.:
istio_requests_total
Generate some traffic against the product page:
export INGRESS_HOST=$(minikube ip)
export INGRESS_PORT=$(kubectl -n istio-system get service istio-ingressgateway -o jsonpath='{.spec.ports[?(@.name=="http2")].nodePort}')
export GATEWAY_URL=$INGRESS_HOST:$INGRESS_PORT
curl http://$GATEWAY_URL/productpage
Edit: for node metrics
Yes, you are right: node exporter is not included.
Fastest way to add it manually is using Helm(literally one line after helm is prepared):
// Install helm
curl -L https://git.io/get_helm.sh | bash
// Install tiller
helm init
// Deploy node-exporter
helm install stable/prometheus-node-exporter
// Launch prometheus
istioctl dashboard prometheus
// Or even better, grafana
istioctl dashboard grafana
If you are using grafana, you can import dashboard ID: 11074 for a fancy display of the data gathered from node exporter:
