Grafana

    While you can build your own dashboards, Istio offers a set of preconfigured dashboards for all of the most important metrics for the mesh and for the control plane.

    • provides an overview of all services in the mesh.
    • Service Dashboard provides a detailed breakdown of metrics for a service.
    • provides a detailed breakdown of metrics for a workload.
    • Performance Dashboard monitors the resource usage of the mesh.
    • monitors the health and performance of the control plane.

    There are a few ways to configure Grafana to use these dashboards:

    This will deploy Grafana into your cluster. This is intended for demonstration only, and is not tuned for performance or security.

    To quickly import the Istio dashboards to an existing Grafana instance, you can use the Import button in the Grafana UI to add the dashboard links above. When you import the dashboards, note that you must select a Prometheus data source.

    1. $ # Address of Grafana
    2. $ # Login credentials, if authentication is used
    3. $ GRAFANA_CRED="USER:PASSWORD"
    4. $ # The name of the Prometheus data source to use
    5. $ GRAFANA_DATASOURCE="Prometheus"
    6. $ VERSION=1.10.0
    7. $ # Import all Istio dashboards
    8. $ for DASHBOARD in 7639 11829 7636 7630 7642 7645; do
    9. $ REVISION="$(curl -s https://grafana.com/api/dashboards/${DASHBOARD}/revisions -s | jq ".items[] | select(.description | contains(\"${VERSION}\")) | .revision")"
    10. $ curl -s https://grafana.com/api/dashboards/${DASHBOARD}/revisions/${REVISION}/download > /tmp/dashboard.json
    11. $ curl -s -k -u "$GRAFANA_CRED" -XPOST \
    12. $ -H "Content-Type: application/json" \
    13. $ -d "{\"dashboard\":$(cat /tmp/dashboard.json),\"overwrite\":true, \
    14. $ \"inputs\":[{\"name\":\"DS_PROMETHEUS\",\"type\":\"datasource\", \
    15. $ \"pluginId\":\"prometheus\",\"value\":\"$GRAFANA_DATASOURCE\"}]}" \
    16. $ $GRAFANA_HOST/api/dashboards/import
    17. $ echo -e "\nDone\n"
    18. $ done

    A new revision of the dashboards is created for each version of Istio. To ensure compatibility, it is recommended that you select the appropriate revision for the Istio version you are deploying.

    Grafana can be installed and configured through other methods. To import Istio dashboards, refer to the documentation for the installation method. For example:

    • official documentation.