web-dev-qa-db-ja.com

領事はKeyValueストアを保持していますか?

私はいくつかの分散型Key-Valueストアを評価していますが、etcdConsulはどちらも非常に有望に見えます。サービス検出、ヘルスモニタリング、および構成サービスに興味があります。

Consulが提供する追加機能は気に入っていますが、サービスがダウンしたときにKey-Valueストアが保持されるかどうかを判断できませんか? etcdは永続性を提供しているようです。何かアドバイス?

16
Pieter

最終的に、Dockerでprogrium/docker-consulイメージを実行し、いくつかのキーと値のペアを追加しました。 Ctrl-Cでシャットダウンした後、コンテナーを再起動したときに値が残っていました。また、docker execを介してコマンドラインからConsulを強制終了し、データも保持されました。

Progrium/docker-consulイメージは、/ dataディレクトリ内のすべてのデータを永続化しました。

10
Pieter

領事エージェント(クライアントとサーバー)は、データをデータに永続化します。

エージェントがデータを永続化しない唯一のケースは、エージェントが「-dev」モードで開始された場合です。

15
Mistriel

コア領事開発者の1人から メッセージ github:

APIに登録されたサービスとチェックも、エージェントの再起動間の永続性のためにデータディレクトリに書き込まれるため、領事の再起動の間にこのディレクトリが失われると、構成が失われます。もちろん、これは静的構成JSONファイルで作成されたサービス/チェックには適用されません。

したがって、クラスターノードが正常にシャットダウンされた場合、Key-Valueストアはデータディレクトリに保存されます。

予期しないノードのシャットダウン(停止)が発生した場合、KVストアをデータディレクトリに保持するかどうかはわかりませんでした。

2
v.karbovnichy