单API列出所有服务-consul集群

Single API to list all the services - consul cluster

是否有一个 API 来列出在一个 consul 集群中注册的所有服务?

约束:ui 已禁用。

这取决于您是否拥有单个数据中心。如果是,那么您可以使用 Consul HTTP API 来查询当前代理的数据中心中的所有服务。否则,您将需要先查询所有数据中心名称,然后再查询确切数据中心的服务。

这是来自 documentation 的一些示例:

简单请求

curl https://consul.rocks/v1/catalog/services

将return在给定数据中心注册的服务如下:

{
  "consul": [],
  "redis": [],
  "postgresql": [
    "primary",
    "secondary"
  ]
}