1

我正在尝试将 Wildfly Swarm REST 服务注册到正在运行的 Consule 代理,但它无法正常工作。

我能够注册一项服务(我可以在 Consul ui 中看到它),但不知何故,健康检查不起作用。

Swarm 服务器经常告诉我,由于“不允许使用 HTTP 405 方法”,“发送检查”失败。我可以在 Consule 控制台中看到类似的日志,不允许使用 GET 方法。

我陷入了死胡同:我的应用程序无法正常工作,Wildfly Swarm 示例也无法正常工作(同样的例外)。为了确定,我还在两侧配置了一个 CORS 过滤器,但这也不起作用。

我正在使用 Wildfly Swarm 2017.10.1 和 Consul 1.0.0。

我希望你们能提供帮助。此致

4

1 回答 1

1

我自己想通了。显然,这并不难^^

我检查了用于我的 Wildfly Swarm 版本的 Consul Client API 的版本:它是0.9.16。我已经下载了所有 Consul 版本并检查了哪一个是兼容的。我可以验证直到0.9.3 的所有版本都在工作

Consul 1.0.0 有一些非常关键的重大更改,我真的不明白为什么它们没有在 HTTP API v2 中实现,但这不是重点。

我强烈建议将 topology-consul 部分使用的 Consul Client API 升级到更新版本,如0.16.5 或 0.17.0。至少,请在 README 中为ribbon-consul 示例添加一个注释,可以使用哪些 Consul 版本。

于 2017-11-05T14:45:34.807 回答