Kyma uses Kiali to enable validation, observe the Istio Service Mesh, and provide details on microservices included in the Service Mesh and connections between them. Kiali offers a set of dashboards and graphs that allow you to have the full Service Mesh at a glance and quickly identify problems and configuration issues. For more details about particular features, see the official Kiali documentation.
NOTE: Kiali is disabled by default in Kyma Lite (local installation). Read about custom component installation for instructions on how to enable it.
The following diagram presents the overall Kiali architecture and the way the components interact with each other.
- Use the Kyma Console or direct URL to access Kiali.
- To ensure authentication, the Keycloak Gatekeeper checks if you have a valid token.
- If not, the Keycloak Gatekeeper redirects you to dex to log in.
- After a successful log in, you can access the Kiali service which serves the website. The service exposes an endpoint and acts as an entry point for the Kiali deployment.
- Kiali deployment is the central part of the solution. For it to provide the necessary functionality, the Kiali Operator reads the Kiali CR and configures the API server so it can deploy Kiali.
- Kiali collects the information on the cluster health from the following sources:
- API server which provides data on the cluster state.
- Service Mesh by analyzing metrics Prometheus scrapes from the Istio Pod.
You can easily access Kiali from the Kyma Console. To do so, click the Service Mesh tab in the menu on the left. Once you are authenticated, the main Kiali dashboard will show a summary of the Service Mesh status and the left side menu will offer you features such as graphs or configuration validation:
To configure the Kiali chart, override the default values of its
values.yaml file. This document describes parameters that you can configure.
This table lists the configurable parameters, their descriptions, and default values:
|kiali.spec.server.web_root||Defines the context root path for Kiali console, API endpoints, and readiness probes.|
|kiali.spec.deployment.view_only_mode||When set to |
|kiali.spec.deployment.accessible_namespaces||Specifies the Namespaces Kiali can access to monitor the Service Mesh components deployed there. You can provide the names using regex expressions. The default value is |
|kiali.spec.deployment.resources.requests.cpu||Minimum number of CPUs requested by the Kiali Deployment to use.|
|kiali.spec.deployment.resources.requests.memory||Minimum amount of memory requested by the Kiali Deployment to use.|
|kiali.spec.deployment.resources.limits.cpu||Maximum number of CPUs available for the Kiali Deployment to use.|
|kiali.spec.deployment.resources.limits.memory||Maximum amount of memory available for the Kiali Deployment to use.|
|kiali.spec.kubernetes_config.qps||Defines the allowed queries per second to adjust the API server's throttling rate.|