6

Consul v0.5.2 バージョンで実行されている consul と、Mesos で実行されているサービスがあります。サービスは、あるサーバーから別のサーバーに移動し続けます。

「失敗」状態にあるサービスを領事で登録解除する方法はありますか? このカールを使用して、失敗した状態のサービスのリストを取得できます

curl http://localhost:8500/v1/health/state/critical

私たちが目にしている問題は、consul UI で一定期間にわたって古いデータがあり、UI 全体が使用できなくなることです。

4

2 に答える 2

10

デフォルトでは、Consul は異常なサービスを登録解除せず、代わりにクリティカルとしてマークします。Consul 0.7 からderegister_critical_service_after、異常なサービスが登録解除されるまでの時間を定義できる特別なオプション ( ) があります。

Consul 0.7 変更ログより

自動サービス登録解除:ヘルス チェックの新しいタイムアウト フィールドが追加されました 。deregister_critical_service_afterこれにより、チェックがタイムアウトよりも長くクリティカルである場合、そのチェックに関連付けられているサービスが登録解除されます。これは、アプリケーションによってネイティブに登録されたヘルス チェックのクリーンアップや、サービスが常に正常にシャットダウンされない可能性があるその他の状況で役立ちます。GH-679

Marathon を使用している場合は、allegro/marathon-consul の使用を検討できます。これは、タスクが終了したときにタスクの登録を解除します

于 2016-10-13T13:36:08.330 に答える
0

janisz が言ったことに加えて、Nomad でサービスを実行することもでき、Nomad は自動的にサービスを登録および登録解除します。詳細については、Nomad Service Discoveryのドキュメントを参照してください。

于 2016-12-22T07:56:22.523 に答える