Skip to content
Latchkey

etcd vs Consul: どちらのキーバリューストアを選ぶか

etcd は用途を絞った強整合性のキーバリューストア(Kubernetes のバッキングストア)であり、Consul はより広範なサービスディスカバリ、KV、service mesh のプラットフォームです。

etcd は一つのことをうまくこなします。Raft ベースの強整合性キーバリューストアで、Kubernetes のコントロールプレーンストアとして有名です。Consul は KV ストアの上にサービスディスカバリ、ヘルスチェック、マルチデータセンター対応、そして Connect service mesh を追加します。整合性のある設定ストレージにおいては etcd が焦点と単純さで勝り、サービスディスカバリと mesh の機能では Consul が勝ります。

etcdConsul
スコープKV ストアDiscovery + KV + mesh
整合性強い (Raft)強い (Raft)
サービスディスカバリなし (KV のみ)第一級
MeshなしConnect
最適な用途K8s、設定ストアDiscovery、マルチ DC、mesh

ユースケースとスコープ

etcd は用途を絞った信頼性の高い設定/コーディネーションストア、とりわけ Kubernetes に適しています。Consul はサービスディスカバリ、ヘルスチェック、マルチデータセンター構成、service mesh に適しており、その広範な機能セットが活きます。

ops と CI への適合

etcd は表面積が狭くシンプルであり、Consul はより多くの機能と運用面の表面積を持ちます。両者とも一時的なクラスタに対して CI で結合テストされ、より高速なマネージド runner がクォーラムの起動と discovery のテストを短縮します。

結論

用途を絞った強整合性の KV ストアが欲しい(または Kubernetes を運用している)なら etcd。サービスディスカバリ、マルチ DC、service mesh が欲しいなら Consul。スコープで決まります。etcd はミニマルで、Consul はプラットフォームです。

関連ガイド