Консул роя диких мух

Я пытаюсь зарегистрировать службу REST Wildfly Swarm в работающем агенте Consule, но она работает неправильно.

Я могу зарегистрировать службу (я вижу это в пользовательском интерфейсе Консула), но почему-то проверки работоспособности не работают.

Сервер Swarm часто сообщает мне, что «отправка чека» не удалась из-за «Метод HTTP 405 не разрешен». Я вижу похожие журналы в консоли Consule, этот метод GET не разрешен.

Я в тупике: мое приложение не работает, как и пример Wildfly Swarm (то же исключение). Я также настроил фильтр CORS с обеих сторон, чтобы быть уверенным, но это тоже не работает.

Я использую Wildfly Swarm 2017.10.1 и Consul 1.0.0.

Я надеюсь, что вы, ребята, можете помочь. С наилучшими пожеланиями


person Christoph Pölsterl    schedule 04.11.2017    source источник
comment
Хорошо, я нашел конкретную проблему, почему она не работает. HTTP API Consul 1.0.0 требует для проверки TTL (/v1/agent/check/pass) метод PUT. Но Wildfly Swarm отправляет GET. Кажется, Конул изменил это в какой-то более новой версии.   -  person Christoph Pölsterl    schedule 04.11.2017


Ответы (1)


Я понял это сам. Очевидно, это было не так уж сложно ^^

Я проверил версию Consul Client API, которая используется для моей версии Wildfly Swarm: это 0.9.16. Я скачал все версии Консула и проверил, какие из них совместимы. Я могу убедиться, что все версии до 0.9.3 работают.

В Consul 1.0.0 есть очень важные критические изменения, и я действительно не понимаю, почему они не были реализованы в HTTP API v2, но это не главное.

Я настоятельно рекомендую обновить клиентский API Consul, используемый фракцией topology-consul, до более новой версии, такой как 0.16.5 или 0.17.0. По крайней мере, добавьте примечание в README для примера с лентой-консулом, какие версии Консула можно использовать.

person Christoph Pölsterl    schedule 05.11.2017