深圳幻海软件技术有限公司 欢迎您!

Aeraki 教程:如何查看度量指标

2023-02-28

如何查看度量指标安装示例程序如果你还没有安装示例程序,请参照快速开始(https://www.aeraki.net/zh/docs/v1.0/quickstart/)安装Aeraki,Istio及示例程序。安装完成后,可以看到集群中增加了下面两个NS,这两个NS中分别安装了基于MetaProtoco

如何查看度量指标

安装示例程序

如果你还没有安装示例程序,请参照 快速开始(https://www.aeraki.net/zh/docs/v1.0/quickstart/) 安装 Aeraki,Istio 及示例程序。

安装完成后,可以看到集群中增加了下面两个 NS,这两个 NS 中分别安装了基于 MetaProtocol 实现的 Dubbo 和 Thrift 协议的示例程序。你可以选用任何一个程序进行测试。

~ kubectl get ns|grep meta
meta-dubbo        Active   16m
meta-thrift       Active   16m
  • 1.
  • 2.
  • 3.

备注:Aeraki 为任何基于 MetaProtocol 开发的私有协议都提供了本示例中相同的指标。

在 istio-system 这个 NS 中已经安装了 Prometheus 和 Grafana,Prometheus 会从 Sidecar Proxy 中收集请求的指标度量数据。我们可以通过 Prometheus 查询这些度量指标,并通过 Grafana 的图表进行更友好的展示。

~ kubectl get deploy -n istio-system
NAME                   READY   UP-TO-DATE   AVAILABLE   AGE
aeraki                 1/1     1            1           46h
grafana                1/1     1            1           46h
istio-ingressgateway   1/1     1            1           46h
istiod                 1/1     1            1           46h
kiali                  1/1     1            1           46h
prometheus             1/1     1     
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.

通过 Prometheus 查询请求指标

首先通过 kubectl port-forward 命令将将本地端口转发到 Prometheus 服务

kubectl port-forward service/prometheus 9090:9090 -n istio-system
  • 1.

在浏览器中打开 http://127.0.0.1:9090/ ,查询度量指标。MetaProtocol 的度量指标名有统一的前缀:“envoy_meta_protocol_$applicationProtocol”,例如 Dubbo 度量指标的名称前缀为 “envoy_meta_protocol_dubbo”,Thrift 度量指标的名称前缀为 “envoy_meta_protocol_thrift”。

查询 Dubbo 服务的 outbound request 指标:

Dubbo 服务的所有指标:

通过 Grafana 图表来呈现度量指标

首先通过 kubectl port-forward 命令将将本地端口转发到 Grafana 服务

kubectl port-forward service/grafana 3000:3000 -n istio-system
  • 1.

将 Aeraki 提供的 dashboard json 文件导入到 Grafana 中,如下图所示:

打开 Aeraki Demo dashboard,可以看到 Dubbo 和 Thrift 服务的相关度量指标图表,包括 QPS,请求时延,请求成功率等等。