Istio 调试接口
Istio 提供了一个调试端口 15014,通过该端口可以查看到 istiod 内部的大量调试信息,包括 istiod 的内存、cpu 使用情况,xds 缓存信息,连接到 istio 的代理,cluster 和 endpoint 信息等等。
可以通过下面的命令将 15014 端口 port forward 到 localhost:
k -n istio-system port-forward svc/istiod 15014
通过浏览器访问 http://127.0.0.1:15014/debug
, 可以看到调试端口支持获取的所有信息。
查看 istiod 内存占用
将 istio 调试端口 port forward 到 localhost 后,可以采用下面的命令分析 istiod 的内存使用情况:
go tool pprof -http=:8080 localhost:15014/debug/pprof/heap
该命令以 istio 调试端口输出的 heap 信息为输入,在 8080 端口上提供了 istiod 内存的详细分析。
查看 istiod 的 metrics
将 istio 调试端口 port forward 到 localhost 后,可以通过 http://127.0.0.1:15014/metrics
查看 istiod 自身的 metrics 数据,以了解 istiod 的运行情况。
其中比较重要的指标有:
- pilot_xds: 连接到 pilot 的 xDS 客户端数量。
- pilot_xds_pushes: xds push 消息的数量。
- pilot_xds_push_time: xds push 的耗时分布情况。
其他指标的含义参见: https://istio.io/latest/docs/reference/commands/pilot-discovery/#metrics