本文へスキップ

etcdとは?

えとせてぃ

etcdとは、分散システムで設定情報やサービス情報を安全に共有するための分散型キーバリューストアです。

etcdは、分散システムにおける構成データやサービスディスカバリ情報を一貫して管理するための分散型キーバリューストアです。CoreOS(現Red Hat)によって開発され、現在はCloud Native Computing Foundation(CNCF)のプロジェクトとして管理されています。

etcdの中核となる技術はRaftコンセンサスアルゴリズムです。このアルゴリズムにより、複数のノードが参加するクラスタでも、データの一貫性と高可用性を維持できます。Raftでは多数決(クオーラム)に基づいてリーダーを選出し、リーダーを通じてすべての書き込みが行われます。そのため、ノードの一部が障害を起こしても、過半数が生きていれば動作を継続できます。

etcdが特に重要な役割を担う場面として、Kubernetesのコントロールプレーンが挙げられます。KubernetesはPod・Service・ConfigMapなどクラスタのすべての状態をetcdに保存しており、etcdが停止するとKubernetes全体が機能しなくなります。

etcdの主な特徴は以下のとおりです。

  • シンプルなHTTP/gRPC APIによるアクセス
  • watch機能による設定変更のリアルタイム検知
  • TTL(有効期限)付きキーによるリース管理
  • TLSによる通信暗号化と認証

設定管理・サービスディスカバリ・分散ロックなど、クラウドネイティブアーキテクチャの基盤として広く採用されています。

使い方・例文

Kubernetesクラスタを構築する際、APIサーバーはPodやDeploymentの状態をetcdに書き込み、各コントローラはetcdの変更をwatchして動作します。

この用語をシェア

𝕏 でポスト LINE

最終更新:

関連用語