Grafana是开源的数据可视化平台,可以生成各种可视化仪表,简化监控的复杂度。本文介绍如何使用Grafana查看SLO相关指标。 前提条件 已将生成的规则导入Prometheus中执行SLO。 已安装Helm。 操作步骤 您可以通过Grafana控制台导入仪表盘数据,查看SLO相关指标。 执行以下命令,在ACK集群中安装Grafana应用。# 添加仓库信息。 helm repo add grafana https://grafana.github.io/helm-charts helm repo update # 安装Grafana应用。 helm install -n monitoring asm-grafana grafana/grafana 执行以下命令,获取Grafana控制台的登录密码。kubectl get secret --namespace monitoring asm-grafana -o jsonpath="{.data.admin-password}" | base64 --decode ; echo 执行以下命令,将asm-grafana服务转发到本地端口。kubectl --namespace monitoring port-forward svc/asm-grafana 3000:80 单击https://localhost:9093,访问Grafana控制台。登录时,用户名为admin,登录密码由步骤2获取。 在Grafana控制台左侧导航栏,单击图标,在Configuration页面的Data sources页签,单击Add data source。 在Settings页签的HTTP区域,配置URL为http://ack-prometheus-operator-prometheus:9090,其他配置项保持默认,然后单击Save。 在左侧导航栏,单击 > Import,将仪表盘模板内容粘贴到Import via panel json文本框,然后单击Load。 示例效果如下。关于SLO的相关概念,请参见服务等级目标SLO概述。 在区域①,可以查看当前正在贡献燃烧率的SLO。 在区域②,可以查看所有燃烧率大于1的SLO的燃烧率变化情况。 在区域③,可以查看配置的SLO信息。 指标 说明 Objective 目标值为99%。 Current burning budget % 当前燃烧率为50%。错误率为(1 - 99%) * 50% = 0.5%。 Remaining error budget(month) 剩余错误预算百分比(以自然月计算)为93.3%。 Remaining error budget (30d window) 剩余错误预算百分比(30天滚动窗口)为-243%。 错误预算为负,说明在此滚动窗口内服务不满足SLO。服务最终是否满足SLO,以合规期最后一天的剩余错误预算为准。 Warning alert 是否触发了警告级别的告警。本文为已触发(FIRING)。 Critical alert 是否触发了紧急级别的告警。本文为未触发(OK)。 说明 剩余错误预算百分比由异常时间段和正常时间段计算比率得到。上图中两个错误预算剩余百分比相差较大,是因为两者在计算指标平均值时采用了不同的大小窗口做平均。前者是1小时而后者是5分钟,后者分割的时间段更多。在正常环境下,不同分割方法的正常时间段和异常时间段是等比增加的,但在本示例中测试请求主要都是异常请求,其他时间基本无请求。无请求的时间段不参与平均,导致只有异常时间段增加。在正常环境下两者数值相近。 在区域④,可以查看SLI的变化曲线、月度错误预算的变化曲线和燃烧率水平变化。
Grafana是开源的数据可视化平台,可以生成各种可视化仪表,简化监控的复杂度。本文介绍如何使用Grafana查看SLO相关指标。 前提条件 已将生成的规则导入Prometheus中执行SLO。 已安装Helm。 操作步骤 您可以通过Grafana控制台导入仪表盘数据,查看SLO相关指标。 执行以下命令,在ACK集群中安装Grafana应用。# 添加仓库信息。 helm repo add grafana https://grafana.github.io/helm-charts helm repo update # 安装Grafana应用。 helm install -n monitoring asm-grafana grafana/grafana 执行以下命令,获取Grafana控制台的登录密码。kubectl get secret --namespace monitoring asm-grafana -o jsonpath="{.data.admin-password}" | base64 --decode ; echo 执行以下命令,将asm-grafana服务转发到本地端口。kubectl --namespace monitoring port-forward svc/asm-grafana 3000:80 单击https://localhost:9093,访问Grafana控制台。登录时,用户名为admin,登录密码由步骤2获取。 在Grafana控制台左侧导航栏,单击图标,在Configuration页面的Data sources页签,单击Add data source。 在Settings页签的HTTP区域,配置URL为http://ack-prometheus-operator-prometheus:9090,其他配置项保持默认,然后单击Save。 在左侧导航栏,单击 > Import,将仪表盘模板内容粘贴到Import via panel json文本框,然后单击Load。 示例效果如下。关于SLO的相关概念,请参见服务等级目标SLO概述。 在区域①,可以查看当前正在贡献燃烧率的SLO。 在区域②,可以查看所有燃烧率大于1的SLO的燃烧率变化情况。 在区域③,可以查看配置的SLO信息。 指标 说明 Objective 目标值为99%。 Current burning budget % 当前燃烧率为50%。错误率为(1 - 99%) * 50% = 0.5%。 Remaining error budget(month) 剩余错误预算百分比(以自然月计算)为93.3%。 Remaining error budget (30d window) 剩余错误预算百分比(30天滚动窗口)为-243%。 错误预算为负,说明在此滚动窗口内服务不满足SLO。服务最终是否满足SLO,以合规期最后一天的剩余错误预算为准。 Warning alert 是否触发了警告级别的告警。本文为已触发(FIRING)。 Critical alert 是否触发了紧急级别的告警。本文为未触发(OK)。 说明 剩余错误预算百分比由异常时间段和正常时间段计算比率得到。上图中两个错误预算剩余百分比相差较大,是因为两者在计算指标平均值时采用了不同的大小窗口做平均。前者是1小时而后者是5分钟,后者分割的时间段更多。在正常环境下,不同分割方法的正常时间段和异常时间段是等比增加的,但在本示例中测试请求主要都是异常请求,其他时间基本无请求。无请求的时间段不参与平均,导致只有异常时间段增加。在正常环境下两者数值相近。 在区域④,可以查看SLI的变化曲线、月度错误预算的变化曲线和燃烧率水平变化。