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して動作します。
この用語をシェア
最終更新: