Etcd - 分布式配置中心

Etcd 简介

Etcd 是一种分布式 kv 存储设施, 他具有一定的一致性,高性能,高可用的方案. 类似的 zookeeper, 但没有 zookeeper 那么重型,功能也没有覆盖那么多. 简单直接的应用就是配置中心

架构设计总览

clients 为多个需要 配置的服务, 中间层为 多个 grpc-proxy 做均衡负载, 以免一个 proxy 挂了之后 导致单点问题. grpc-proxy 可以 同时访问多个 etcd 服务器,进行 kv 的操作. 如果某一个 server 挂了,会自动访问别的 集群中的其他 server 以保证高可用.

etcd cluster 至少为 3 台, 如果小于 3 台则无法进行选举,造成集群 不可用. (这里需要用 promethus 进行监控预警)

etcd cluster 本地搭建

  1. 本地安装 etcd,或者直接下载预编译好的执行文件
  2. 获取 etcd 源码 (其实只是要一个配置文件 Procfile)
  3. 安装 goreman -> go get github.com/mattn/goreman
  4. 修改源码根目录的 Procfile
# Use goreman to run `go get github.com/mattn/goreman` etcd1: /Users/vincent/Downloads/etcd-v3.3.9-darwin-amd64/etcd --name infra1 --listen-client-urls http://127.0.0.1:2379 --advert
经验分享 程序员 微信小程序 职场和发展