执政官开发模式广告标志不工作

问题描述 投票:0回答:1

我试图使用以下命令在vagrant中运行consul。

consul agent -dev -advertise 172.20.20.31

但它显示以下错误信息

failed to get conn: dial tcp 127.0.0.1:0->172.20.20.31:8300: connect: invalid argument"

结果,当我从我的本地机器连接到这个ip并运行consul ui模式时,它显示了

500 (The backend responded with an error)

我的vagrant文件如下。

Vagrant.configure("2") do |config|
  config.vm.box = "centos/7"
  config.vm.define "centos-consul" do |cs|
    cs.vm.hostname = "centos-consul"
    cs.vm.network "private_network",ip:"172.20.20.31"
  end
end

和连接文件如下

{
        "ui": true,
        "retry_join": ["172.20.20.31"],
        "advertise_addr": "172.20.20.01",
        "data_dir": "/tmp/consul/self"
}

我在mac os和Vagrant 2.2.7 centos7中使用consul 1.7.2。

我不知道自己做错了什么,所以任何建议都会很有帮助。

vagrant consul hashicorp-vault
1个回答
0
投票

根据文档您得到的错误是由于您的Vagrant盒子上的IP地址172.20.20.31不可路由。

-advertise - 广告地址是用来改变我们向集群中的其他节点宣传的地址。默认情况下,-bind地址是广告地址。然而,在某些情况下,可能有一个无法绑定的可路由地址。这个标志可以使八卦一个不同的地址来支持这一点。如果这个地址不可路由,节点将处于持续的flapping状态,因为其他节点会将不可路由视为失败。在Consul 1.0及以后的版本中,可以将其设置为go-sockaddr模板。

© www.soinside.com 2019 - 2024. All rights reserved.