问题标签 [consul]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
amazon-web-services - 通过 SSH VPN 领事
我正在尝试将现有集群连接到远程 AWS EC2 实例。我正在使用 OpenSSH (ssh -w) 创建隧道设备,如下所示: https ://help.ubuntu.com/community/SSH_VPN
我正在尝试将我的一台运行 linux 的领事服务器连接到也运行 linux(ubuntu 14.04)的 AWS 实例。我可以设置隧道并 ping 每台机器,但这就是我开始对下一步做什么感到模糊的地方。我在 10.x 的 eth0 上有一个私有 IP 地址,在 tun0 上有一个 192.x。
我应该将领事绑定到哪一个?我怎样才能让其他 Consul 服务器知道如何通过此连接连接到 AWS?我希望在 3 个本地服务器上运行的保管库可以从 AWS 获得
我正在使用带有 OpenSSH 的 Ubuntu 14.04。领事 0.5.2
在此先感谢您的帮助。
amazon-web-services - 没有在领事中启用 ACL
我在单个实例上设置了领事。运行良好,web-ui
但未启用 ACL。以前我没有任何配置文件,但现在我创建了一个包含以下内容的config.json
文件。/etc/consul.d/bootstrap/
比我运行以下命令
领事代理 -server -bootstrap -data-dir /tmp/consul -ui-dir /home/ubuntu/dist/ -client=XXXX
X.X.X.X
我的实例的私有 IP 在哪里
但是 ACL 没有启用。
/etc/consul.d/server/config.json
/etc/consul.d/server/config.json
工作配置文件
现在运行以下命令
spring-cloud - Spring cloud Turbine 是否需要 Eureka 或者它也与 consul 合作?
我们正在使用consul进行服务发现。我们希望将所有断路器流与涡轮机聚合在一起。
Turbine 是否需要 Eureka 来进行发现部分,或者它是否与 consul 一起工作?
我收到这些错误:
谢谢
consul - 服务器重启后如何将领事客户端重新加入服务器?
我已经启动了服务器(单节点)。并加入客户。
然后我重新启动服务器。在服务器上我看到:
在客户端:
客户端日志中的一个:
为什么服务器停留在左侧状态?如何自动将客户端重新加入服务器?
docker - 动态可扩展和自适应架构
我是一名云计算博士生,我计划将基于微服务的架构与 consul 和 zeromq 一起用于我的研究项目。我有几个我很难理解的问题。有人可以帮我分享他们的经验。
- 我们有基于 docker 的微服务,我们有 zeromq,我们有 consul。你能提到我们如何将这三者结合在一起以形成一个动态的自适应环境吗?
尽管我了解 zeromq、docker 和 consul 分别是什么,但我仍然无法清楚地了解它们是如何作为一个整体发挥作用的。我们有 docker 容器,其中在主机上运行着微服务。我们使用 zeromq 在 docker 容器之间传输(Pub-sub/pipeline)消息。容器可能在相同的主机/数据中心或不同的主机/数据中心上运行。然后我们使用 consul 进行服务发现。我的理解是否正确?
- 架构如何根据工作负载动态扩展/缩减?
比如说,我有一段时间需要更多工作节点来进行特定计算。谁启动了更多数量的工作节点。哪个组件决定/做出这个决定?
有调度组件吗?如果是这样,有人可以简要解释它是如何发生的或哪个组件执行该功能吗?
- 那么,领事的主要作用是什么?它仅用于服务发现吗?它也可以用于配置。如果是这样,它的局限性是什么?
我看到即使是zeromq也有服务发现机制,那我们为什么需要consul呢?
- 节点信息的故障如何在架构中传播?哪个组件负责?只是领事吗?还是 zeroMq 也是?
请指教。
go - 集群中 n 个 Web 服务器之间的文件同步
Web 集群中有n 个节点。文件可以上传到任何节点,然后必须分发到每个其他节点。这种分布不必发生在事务中(事实上它不能发生,分布式事务不能扩展)并且一些延迟是可以接受的,尽管必须是最小的。可以任意解决冲突(通常是最后一次写入获胜),前提是该解决方案也分发到所有节点,以便最终所有节点都具有相同的文件集。可以动态添加和删除节点,而无需重新配置现有节点。必须没有单点故障,也不需要额外的盒子来解决这个问题(例如 RabbitMQ)
我正在考虑使用 consul.io 进行动态配置,以便每个节点都可以参考 consul 来确定其他哪些节点可用,并编写一个守护程序(Golang)来监视相关文件夹并使用 ZeroMQ 与其他节点通信。
感觉就像我会重新发明轮子一样。这是一个常见问题,我希望已经有我不知道的可用解决方案?或者也许我的方法是错误的,还有另一种方法可以解决这个问题?
service - 领事:在不知道现有成员IP的情况下加入
要将新代理加入一组领事成员,需要知道至少一个现有成员的 IP。我必须支持我不知道任何现有组成员的 IP 的情况。在这种情况下,人工干预是不可能的,因为服务发现必须完全自动运行。
我解决这个问题的想法:我可以通过广播或多播向网络中的其他计算机发送消息。每台计算机都托管我将实施的自定义服务。该服务使用 consul 正在监听的 IP 地址回复这个特殊的广播/多播消息(例如:“寻找现有集群成员”)。然后,该服务将从网络获得一个或多个回复,并使用其中一个 IP 地址加入集群。
有没有人有更好的想法来解决这个问题?是否有任何现有的库来解决这个问题?
consul - Consul 将我的文件夹视为键
从 Consul 请求密钥列表时,当前文件夹作为密钥返回:
http://consul_url/v1/kv/app/myapp?keys
["app/myapp/key1","app/myapp/key2","app/myapp/key3","app/myapp/key4","app/myapp/"]
检查另一个应用程序/文件夹时,它不会:
["app/myapp2/key1","app/myapp2/key2","app/myapp2/key3","app/myapp2/key4","app/myapp2/"]
我希望该文件夹不显示在密钥列表中。
docker - Consul/Registrator 架构 - 我是否需要在每个 VM 上使用单独的 Consul 代理?
我正在尝试使用 Consul 和 Registrator 在各种 VM 中获取微服务,但我认为我并没有得到什么。我了解 Registrator 会自动向 Consul 注册容器。所以我想我应该有一个运行 Consul 的虚拟机,然后对于每个微服务,我都会有一个带有 Registrator + 微服务的虚拟机。
但是,我无法让 Registrator 在单独的 VM 中与 Consul 代理交谈。更仔细地查看建议的架构,似乎我需要在每个 VM 上都有一个单独的 Consul 代理。我理解对了吗?如果是这样,为什么?Registrator 不应该能够将容器信息转发给任何 VM 上的 Consul 代理吗?
另外,我是否需要在带有 Consul 代理和服务器的 VM 上运行 Registrator?