3

1つのconsulサーバーのみでconsulサーバーのキーと値のペアをサーバー化できるかどうかを知りたいです。

Railsアプリのキーと値のペアのみを保存するためにconsulサーバーをセットアップしようとしています。エージェントとして機能する領事サーバーを 1 つだけセットアップしています。ただし、consul の web-ui の設定で問題が発生します。

consul の web-ui を提供するために、consul サーバーとして 1 つの物理インスタンスを実行しようとしました

consul agent -server -data-dir /tmp/consul -ui-dir /home/ubuntu/dist/

パブリック IP で領事 web-ui にアクセスするよりも、次のコマンドを実行します。

consul members -rpc-addr=X.X.X.X:8400

次のエラーが発生しました

Error connecting to Consul agent: dial tcp X.X.X.X:8400: connection refused

XXXX はインスタンスのプライベート IP です。

4

2 に答える 2

1

はい、可能ですが、あまり良い考えではありません。Consul は、ネットワーク パーティションへの耐性が主な関心事である分散アーキテクチャで動作するように最適化されています。ノードが 1 つだけの場合は、Redis などで切断する方がはるかに優れています。それははるかに高速で、より多くのクライアントに拡張できます。CAP Theorumを読んでください。

  • Redis は、一貫性と可用性のために最適化されています。
  • Consul は、可用性とパーティション耐性 (クラスターとして実行されている場合) のために最適化されています。

単一ノードでは、K/V に Consul を使用する理由はありませんが、Service Discovery、DNS、Events、および Locking 機能も必要な場合は理由があります。

于 2015-12-13T00:15:26.833 に答える