初识etcd

A distributed, reliable key-value store for the most critical data of a distributed system

etcd 是一个分布式、可靠 key-value 存储的分布式系统。

那么etcd有哪些特性功能呢?

  • 简单的接口:可以直接通过http接口访问etcd
  • 键值对存储:以树状的结构存储数据
  • watch功能:观察指定的keys或者文件目录的变化
  • 安全认证: 可选的SSL认证功能
  • 高性能:单节点每秒1000次的写入
  • 键过期:针对键提供可选的TTL功能
  • 可靠性:采用raft算法,实现分布式系统数据的可用性和一致性

应用场景

  • 服务注册 && 服务发现
  • 配置管理
  • 分布式锁

etcd 比较多的应用场景是用于服务发现,服务发现 (Service Discovery) 要解决的是分布式系统中最常见的问题之一,即在同一个分布式集群中的进程或服务如何才能找到对方并建立连接。

配置管理,k8s里把主要的配置和状态放到k8s里。

分布式锁,利用etcd租约功能提供分布式锁的功能,保证在分布式中,同一时间只有一个线程获取到资源。