如何获得Kubernetes中部署的应用程序的延迟?

时间:2019-11-29 06:53:39

标签: kubernetes google-kubernetes-engine

我在Kubernetes中部署了一个基于Java的简单应用程序。我想获取发送到应用程序(GET和POST)的请求的平均延迟。

Stackdriver Monitoring API具有负载均衡器的延迟详细信息。但这只能在210秒后收集,对于我来说这还不够。我如何在Kubernetes中进行配置以每30秒(或1分钟)立即获取延迟详细信息。

我希望该解决方案独立于Java,以便我可以将其用于我部署的任何应用程序。

2 个答案:

答案 0 :(得分:2)

在GKE上,您可以使用Stackdriver Trace,它是GCP特定的。我目前正在使用python客户端库。希望Java更成熟。

或者您可以使用Jaeger,它是CNCF项目。

答案 1 :(得分:2)

使用服务网格

通过服务网格,您可以观察,例如服务之间的延迟,而无需在每个应用程序中为此添加额外的代码。 Istio是可在Google Kubernetes Engine上使用的实现。

  

从任何正在运行的应用程序中获取统一的指标和跟踪,而无需开发人员手动检测其应用程序。

     

Istio的监视功能可让您了解服务性能如何影响上游和下游事物

请参见Istio on GCP

  

使用服务网格:可帮助您在分布式应用程序中协调,保护和收集遥测的软件。服务网格通常通过位于每个微服务旁边的一组网络代理来透明地监视和监视应用程序的所有流量。

Welcome to the service mesh era