2017-11-04 2 views
1

実行中のConsuleエージェントにWildfly Swarm RESTサービスを登録しようとしていますが、正しく動作していません。Wildfly Swarm Consul

私はサービスを登録することができます(私は領事館で見ることができます)が、何らかの形でヘルスチェックが機能していません。

Swarmサーバーは、「HTTP 405メソッドが許可されていません」のため「チェックを送信する」が失敗することがよくあります。 Consuleコンソールには、GETメソッドが許可されていないという、シンプルなログが見えます。

私は枯れています:私のアプリケーションが動作していないか、Wildfly Swarmの例(同じ例外)です。私はまた、CORSフィルタを両方の側で確実に設定しましたが、どちらも動作しません。

私はWildfly Swarm 2017.10.1とConsul 1.0.0を使用しています。

私はあなたが助けることを願っています。 よろしくお願いします

+0

私が具体的な問題を発見したのは、なぜ機能していないのかです。 Consul 1.0.0 HTTP APIでは、TTLチェック(/ v1/agent/check/pass)にPUTメソッドが必要です。しかし、Wildfly SwarmはGETを送信しています。 Conulがこれをいくつかの新しいバージョンに変更したようです。 –

答えて

1

私はそれを自分で考え出しました。明らかに、難しいことではありません^^

Wildfly Swarmバージョンに使用されているConsul Client APIのバージョンを確認しました。それは0.9.16です。私はすべての領事のバージョンをダウンロードし、互換性があるバージョンを確認しました。 0.9.3までのすべてのバージョンが動作していることを確認できます。

領事1.0.0にはいくつかの非常に重大な改訂変更があり、HTTP API v2で実装されなかった理由はわかりませんが、ここでのポイントはありません。

トポロジ・コンスルのフラクションで使用されるConsul Client APIを0.16.5または0.17.0のような新しいバージョンにアップグレードすることを強くお勧めします。 少なくとも、領事のバージョンを使用できるリボン・コンスルの例については、READMEにメモを追加してください。

関連する問題