问题标签 [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.
java - 如何从客户端读取 Consul 键值?
是否可以使用 spring-cloud-consul lib 从 consul k/v 存储中重新读取自定义键/值?在文档中没有找到答案。
当然可以通过http GET请求访问,但重点是改变一些key的值,让spring应用程序立即处理这个变化。
UPD:不幸的是,我们已经从 Consul 迁移到了 config-server,但我想@RefreshScope
应该发挥作用。
curl - Consul Watch:如何在更改节点地址时运行脚本
我注册了以下领事服务。
如此处所示,我拥有的 myservice 服务中有一个节点 myservice-main。当 myservice-main 的地址发生变化时,我想执行一些特定的东西。我读到 consul watch 可以帮助实现它,但我无法为此编写 curl 命令。谁能指出我可以用来实现我的要求的http api?我只能使用 HTTP apis(curl) 和 shell 脚本,因为我想从远程系统执行它
java - 如何在没有地址声明的情况下在 Consul 中注册服务
使用 Consul,我希望服务使用 HTTP 端点向 Consul 代理注册自身/v1/agent/service/register
。唯一的问题是服务可能绑定到不同的 IP 地址(第一个实例 10.0.0.1、第二个 10.0.0.2 等),我希望 Consul 根据请求的 IP 地址自动设置地址。
例如,
“服务实例 1 (10.0.0.1)”发送{name:'svs', id:'svs-01'}
到/v1/agent/service/register
Consul 并将其注册为{name:'svs', id:'svs-01', Address: 10.0.0.1}
“服务实例 2 (10.0.0.2)”发送{name:'svs', id:'svs-02'}
到/v1/agent/service/register
Consul 并将其注册为{name:'svs', id:'svs-02', Address: 10.0.0.2}
根据领事代理服务文档,如果在服务注册查询中缺少地址字段,则如果未提供地址,则默认为代理的地址。但这不是我需要的。
我试图在运行时检测服务的 IP 地址,但它可能有多个网络接口,很难区分它们。
nginx - 如何使用 consul-template 中的多个标签过滤 consul 节点?
我有一些类似于以下内容的领事节点:
按一个标签过滤很容易:
但是如何一次通过两个标签过滤我的领事模板中的服务?
java - 如何使用自定义值覆盖 Spring Boot Health 端点?
我想用自定义 json 响应覆盖 Spring boot Health 端点。我试过了,public class MyHealth implements HealthIndicator
但那是返回一些用 myHealth 对象包装的值
这实际上是我在实施后得到的
但这实际上是我想要的输出
consul - 可以跨本地和 AWS 运行领事代理服务器吗?
我们正在考虑运行 6 个 Consul 服务器的想法。3 个在本地,3 个在 AWS 中。我们可以很好地启动从本地到 AWS 的通信,但我们的本地托管不允许启动入站流量。鉴于 Consul 似乎需要跨一组端口打开 TCP 连接以促进其通信,这第二个事实似乎是一个交易破坏者。
问题
- 有可能做到这一点吗?
- 考虑到 Raft、Serf 和 Consul 的工作方式,这不可行吗?
- 我们可以使用任何方法来执行此操作(SSH、stunnel 等)吗?
agent - 领事成员失败
我正在尝试做这个教程--> tutorialConsul
当我运行时:
我可以看到成员还活着,但是如果我再次运行,其中一些成员失败了,然后其他成员还活着但失败了..
我认为领导者删除了成员,因此他们失败了,他们尝试连接但随后被删除。
我正在使用 virtualbox 机器,我看到 consul 使用相同地址的所有机器,但我已将 consul 配置为使用 eth1 接口,即出现在 Node(name) 中的 IP
会是什么呢?
非常感谢。
consul - 当领事服务器关闭时,我如何才能收到消息
如果我有三台机器运行 Consul,两台服务器和一台客户端,如果其中一台机器关闭,我如何从 Consul 获得错误消息,使用命令行“consul members”我可以获得运行信息:
然后我想知道 Consul 是否提供任何其他方法来告诉我哪台机器处于错误状态
consul - 在领事中注册服务的最佳方式是什么
例如,如果我有一台服务器机器正在运行十个 Web 应用程序,我称之为 A,三台机器正在运行 Consul 并且它们处于服务器角色,我应该在哪里注册这十个应用程序?这是运行 Consul 客户端的最佳方式吗? A 并在其中注册这些应用程序?或进入那些服务器领事?