我想知道是否有可能用一个领事服务器来服务器密钥值对。
我试图设置领事服务器,只为我的rails应用程序存储键值对。我只设置一个领事服务器,它将充当代理。然而,在建立领事的网络用户界面方面遇到了问题。
我试图以领事服务器的身份运行一个物理实例,以服务领事的web-ui。
consul agent -server -data-dir /tmp/consul -ui-dir /home/ubuntu/dist/为了访问公共ip上的领事web-ui,我运行以下命令
consul members -rpc-addr=X.X.X.X:8400得到以下错误
Error connecting to Consul agent: dial tcp X.X.X.X:8400: connection refused其中X.X是实例的私有ip。
发布于 2015-09-21 13:56:44
默认情况下,由于文档的原因,代理正在本地主机上启动客户机:
Client :这是用于与代理的客户端接口的地址。这包括HTTP、DNS和RPC接口的端口。RPC地址由查询和控制运行代理的其他领事命令(如领事成员、领事连接等)使用。默认情况下,这只绑定到本地主机。如果更改此地址或端口,则必须在运行领事成员等命令时指定-rpc-addr,以指示如何到达代理。其他应用程序也可以使用RPC地址和端口来控制领事。
因此,您需要设置一个标志-client=X.X.X.X来设置远程访问客户端的IP地址。尝试使用以下命令启动服务器:
consul agent -server -bootstrap -data-dir /tmp/consul -ui-dir /home/ubuntu/dist/ -client=X.X.X.X你的IP地址。要检查该选项是否被接受,请检查服务器输出,它包含如下一行:
Client Addr: X.X.X.X(HTTP: 8500, HTTPS: -1, DNS: 8600, RPC: 8400)要访问WebUI,请在web浏览器中打开以下链接:http://X.X.X.X:8500/ui
至于consul members命令,它只是通过这个代理打印一个已知成员的列表,所以不需要使用WebUI来执行它。
发布于 2015-12-13 00:15:26
是的,这是可能的,但这不是一个很好的主意。Consul被优化为在分布式体系结构中操作,其中对网络分区的容忍是首要关注的问题。只要有一个节点,就可以更好地使用Redis之类的东西来分割。这将是更快和规模更大的一组客户。读一读法定人数。
对于单个节点,没有理由对K/V使用领事,尽管如果您也希望它具有服务发现、DNS、事件和锁定功能,那么这是有原因的。
https://stackoverflow.com/questions/32667476
复制相似问题