领事使用的不同端口

Different ports used by consul

consul 使用了哪些不同的端口?每个端口的用途是什么?有什么方法可以使用不同的端口将 consul 配置为 运行?

阅读 consul documentation 您会发现以下信息。

使用的端口

Consul 最多需要 4 个不同的端口才能正常工作,其中一些端口在 TCP、UDP 或这两种协议上。下面我们记录每个端口的要求。

  • 服务器 RPC(默认 8300)。服务器使用它来处理传入的 来自其他代理的请求。仅限 TCP。
  • Serf 局域网(默认 8301)。这用于处理 LAN 中的八卦。 所有代理商都需要。 TCP 和 UDP。
  • 农奴广域网(默认 8302)。服务器使用它来八卦 WAN 到其他服务器。 TCP 和 UDP。
  • HTTP API(默认 8500)。客户端使用它与 HTTP 通信 API。仅限 TCP。
  • DNS 接口(默认 8600)。用于解析 DNS 查询。 TCP和 UDP.

您可以通过编辑配置文件将 consul 服务配置到 运行 不同的端口。例如,在端口 53 上设置 dns 接口,在端口 80 上设置 HTTP API。有关端口配置的更多详细信息,请参见 here.

{ 
  "ports": { 
    "dns": 53,
    "http": 80
  } 
}

对来自@Brrrr 的回复的小更新:

https://github.com/hashicorp/consul/blob/master/CHANGELOG.md#080-april-5-2017

All CLI commands that used RPC and the -rpc-addr flag to communicate with Consul have been converted to use the HTTP API and the appropriate flags for it, and the rpc field has been removed from the port and address binding configs.

所以现在 CLI 像其他客户端一样在 8500 上使用 TCP。