Grafana

grafana #

grafana 是一个开源的时序性统计和监控平台,提供丰富的可观察性仪表板,支持例如 prometheus、elasticsearch、graphite、influxdb 等众多的数据源。

SolarMesh的核心业务是云服务间的流量监管,grafana可以为SolarMesh提供丰富的仪表盘,借助SolarMesh提供的流量数据,直观的展示当前服务的流量状态

安装grafana #

使用solarctl安装grafana

solarctl install grafana --name <集群名称: cluster01>

安装成功之后,grafana服务端将会安装在集群当中,默认namespace为service-mesh

kubectl get deploy -n service-mesh
NAME               READY   UP-TO-DATE   AVAILABLE   AGE
grafana            1/1     1            1           13h

扩展 #

默认情况下 grafana 使用默认的 istio 指标进行dashboard的展示,这能满足大多数时候的需求。如:

service-grafana

图中显示了请求PXX、请求成功率等内容。

如果您还需要在workload的图表中显示关于请求request_path等内容,您需要在安装grafana的时候指定两个参数:

  • --extra-metric: 是否需要展示额外的request_method、request_path,默认值为 false,开启设置为 true
  • --istio-version: 集群中istio的版本,格式为 x.xx

如下:

solarctl install grafana --name cluster1 --extra-metric=true --istio-version 1.11

另外,您还需要修改 istio configmap的配置:

meshConfig:
    defaultConfig:
      extraStatTags:
        - request_path
        - request_method

然后重启 istiod 、重启您业务workload。这些工作做完后,您可以在workload详情中,看到如下的图形,它展示了当前请求时间、请求大小TOP3接口图。

services-附加组件

使用grafana增强solarmesh #

SolarMesh安装grafana之后,在 services 页面的附加组件处会出现grafana的图标

services-附加组件

点击grafana图标访问对应服务的grafana dashboard,这里我们点击了 reviews 服务的grafana图标

service-grafana

可以看到,在grafana dashboard中比较详细的展示了当前 reviews 服务的流量情况,并且grafana也增强了SolarMesh本身的页面

如 services详情页面: service-grafana

如 workload详情页面

service-grafana

卸载grafana #

使用solarctl卸载grafana

solarctl的安装见 快速开始/安装->获取solarctl

solarctl uninstall grafana