etcd的安装与使用 - 详解
使用 etcd 主要涉及集群部署、客户端交互和核心功能使用三个层面。以下从实际操作角度,介绍 etcd 的基本使用方法,包括单机部署、命令行操作、API 调用及核心特性演示。
一、环境准备:安装 etcd
首先需要安装 etcd 服务。以下是常见操作系统的安装方式:
1. 二进制安装(推荐,适合生产环境)
从 etcd 官方 Release 页面 下载对应系统的二进制包(选择 etcd-v3.x.x-<系统>-<架构>.tar.gz
):
# 下载并解压(以 v3.5.9 为例,具体版本替换为最新稳定版)
wget https://github.com/etcd-io/etcd/releases/download/v3.5.9/etcd-v3.5.9-linux-amd64.tar.gz
tar zxvf etcd-v3.5.9-linux-amd64.tar.gz
cd etcd-v3.5.9-linux-amd64
# 验证安装(查看版本)
./etcd --version # 服务端版本
./etcdctl version # 客户端版本(需确保与服务端版本兼容)
2. 包管理工具安装(适合开发测试)
- Ubuntu/Debian:
sudo apt install etcd
- CentOS/RHEL:
sudo yum install etcd
- macOS:
brew install etcd
二、启动 etcd 服务
etcd 支持单机模式(开发测试)和集群模式(生产环境),以下分别介绍:
1. 单机模式(快速启动)
适合本地开发测试,直接启动默认配置的 etcd 服务:
# 启动单机 etcd(默认监听 127.0.0.1:2379 客户端端口,2380 集群端口)
./etcd
# 可选:自定义数据目录和监听地址(便于调试)
./etcd --data-dir=/tmp/etcd-data --listen-client-urls=http://0.0.0.0:2379 --advertise-client-urls=http://127.0.0.1:2379
启动成功后,终端会输出日志,显示集群 ID、节点 ID 等信息,此时 etcd 服务已在本地 2379
端口监听客户端请求。
2. 集群模式(生产必备)
生产环境需部署 3/5/7 节点的集群(奇数节点避免脑裂)。以下是 3 节点集群的简化启动示例(实际部署需配置 TLS 加密和认证):
节点 1(Leader 候选):
./etcd --name=node1 \
--data-dir=/tmp/etcd/node1 \
--listen-client-urls=http://192.168.1.101:2379 \
--advertise-client-urls=http://192.168.1.101:2379 \
--listen-peer-urls=http://192.168.1.101:2380 \
--initial-advertise-peer-urls=http://192.168.1.101:2380 \
--initial-cluster=node1=http://192.168.1.101:2380,node2=http://192.168.1.102:2380,node3=http://192.168.1.103:2380 \
--initial-cluster-token=etcd-cluster-1 \
--initial-cluster-state=new
节点 2 和 节点 3 只需修改 --name
、--data-dir
和 IP 地址,保持其他参数与节点 1 一致。启动后,集群会自动选举 Leader,可通过 etcdctl endpoint stat