如何设置单节点Consul server/client?

How to setup a single node Consul server/client?

实现这个需要什么配置?

可以使用此处提到的 "development mode" - https://learn.hashicorp.com/consul/getting-started/agent(但不推荐用于生产)。

我试过设置它,但我不确定如何设置客户端配置。我试过的配置是:

{
  "data_dir": "/tmp2/consul-client",
  "log_level": "INFO",
  "server": false,
  "node_name": "master",
  "addresses": {
    "https": "127.0.0.1"
  },
  "bind_addr": "127.0.0.1"
}

这导致失败:

consul agent -config-file=client.json
==> Starting Consul agent...
==> Error starting agent: Failed to start Consul client: Failed to start lan serf: Failed to create memberlist: Could not set up network transport: failed to obtain an address: Failed to start TCP listener on "127.0.0.1" port 8301: listen tcp 127.0.0.1:8301: bind: address already in use

对于运行中的 Consul 集群,运行 不需要 "client" 代理。

我必须将此服务器/主机设置为 bootstrap_expect 设置为 1(boostrap 进程的节点数):

{
  "retry_join" : ["127.0.0.1"],
  "data_dir": "/tmp2/consul",
  "log_level": "INFO",
  "server": true,
  "node_name": "master",
  "addresses": {
    "https": "127.0.0.1"
  },
  "bind_addr": "127.0.0.1",
  "ui": true,
  "bootstrap_expect": 1
}