首页 > 解决方案 > 使用 Spring Cloud Kubernetes,如何获取正在运行的实例的 instanceId

问题描述

我有一个用 Spring Boot 编写的微服务,并利用在 Kubernetes 中运行的 Spring Cloud Kubernetes,如下所示:

我可以使用 Spring Cloud Kubernetes 列出该服务的所有实例,DiscoveryClient如下所示:

List<ServiceInstance> allInstances = discoveryClient.getInstances("foo-service")

如何获取正在执行此代码的实例的 instanceId?

标签: spring-bootkubernetesspring-cloud-kubernetes

解决方案


实例名称是 Pod 的名称,Pod 的名称与主机名相同。

所以例如使用

InetAddress.getLocalHost().getHostName()

推荐阅读