在kubernetes中列出一个Service的调用者的最好方法是什么?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在kubernetes中列出一个Service的调用者的最好方法是什么?相关的知识,希望对你有一定的参考价值。

我想找一个程序化的方法来列举kubernetes中一个Service的调用者。例如,当有5个微服务A、B、C、D、E,微服务A被微服务B、C、D、E访问时,我想列出微服务B、C、D、E(至少是它们的名字空间)。

可以grep所有Deployment的环境变量,找到指向A的Service的服务,如 服务a.a-namespace.svc。. 但是,我发现一个比较可靠的方法,可以利用kubernetes的特性,比如Servive,kube-dns,iptables,kubectl等等。如果你知道的话,请帮帮我。

答案

好吧,这就是分布式追踪的相关内容!!!!!!!!!!!!!)。

你可以在头文件中发起一个GUID,并将其提供给后续的微服务调用。

如果你使用的是一些稳定的框架,比如Spring和spring-cloud,那么你可以使用Zipkins来实现。

调用者发送一个唯一的GUID,并被层次结构中的所有微服务拦截。

而当你想可视化日志时,那么你可以使用这个GUID进行搜索,相关的URI调用就会出现。

另一种方式是使用基于Jaeger的追踪,它也支持kubernetes。

你可以参考 这个环节 更多。

我想这对你是有点帮助的

以上是关于在kubernetes中列出一个Service的调用者的最好方法是什么?的主要内容,如果未能解决你的问题,请参考以下文章

Kubernetes——Service(SVC)服务

如何使用命名空间管理Kubernetes资源?

kubernetes中headless类型的service

Kubernetes中Service的种类

关于 Kubernetes中Service使用Metallb实现LoadBalancer的一个Demo

关于 Kubernetes中Service使用Metallb实现LoadBalancer的一个Demo