etcd安装使用

官网地址

复制代码
https://github.com/etcd-io/etcd

mac安装使用

下载地址

复制代码
https://storage.googleapis.com/etcd/v3.6.3/etcd-v3.6.3-darwin-amd64.zip

解压

复制代码
tar -xvf etcd-v3.6.3-darwin-amd64.zip

移动可执行文件

复制代码
sudo mv etcd /usr/local/bin/

sudo mv etcdctl /usr/local/bin/

验证安装,执行以下命令,检查 ETCD 是否安装成功:

复制代码
etcd --version

如果mac出现弹框阻止,在设置中找到隐私与安全性,然后点击仍然打开即可。

配置 ETCD

ETCD 需要一些基础配置来正常运行,尤其是在集群模式下。以下是一个简单的配置步骤:

创建配置目录

复制代码
sudo mkdir -p /etc/etcd

编写配置文件

/etc/etcd 目录下创建一个 etcd.conf.yml 文件,并添加如下配置:

复制代码
cd /etc/etcd

sudo vi etcd.conf.yml

name: 'etcd-node-1'
data-dir: '/var/lib/etcd'
listen-peer-urls: 'http://127.0.0.1:2380'
listen-client-urls: 'http://127.0.0.1:2379'
advertise-client-urls: 'http://127.0.0.1:2379'
initial-advertise-peer-urls: 'http://127.0.0.1:2380'
initial-cluster: 'etcd-node-1=http://127.0.0.1:2380'
initial-cluster-token: 'etcd-cluster'
initial-cluster-state: 'new'

启动 ETCD 服务

复制代码
sudo nohup etcd --config-file=/etc/etcd/etcd.conf.yml &

查看ETCD状态

使用endpoint状态检查

复制代码
etcdctl endpoint status --endpoints=https://127.0.0.1:2379

使用member列表和状态

复制代码
etcdctl member list --write-out=table

使用cluster-health检查集群健康

复制代码
etcdctl endpoint health --cluster --write-out=table

检查 ETCD 进程是否正在运行

复制代码
ps aux | grep etcd

ETCD常用命令

ETCD 提供了一个命令行工具 etcdctl,用于与etcd集群进行交互。以下是一些常用命令示例:

key带不带斜杠都可以

设置键值对

复制代码
etcdctl put /example/key value

获取键值

复制代码
etcdctl get /example/key value

获取前缀键值

复制代码
etcdctl get --prefix /example/key

列出所有斜杠前缀的键

复制代码
etcdctl get / --prefix --keys-only

删除键值

复制代码
etcdctl del /example/key

监控键变化

复制代码
etcdctl watch /example/key

监控键前缀变化

只要是这个key开头的值变化都能被监听到

复制代码
etcdctl watch /example/key --prefix

设置租约

设置过期时间60秒,会返回一个唯一标识字符串

复制代码
etcdctl lease grant 60

监听租约过期时间

注意后面的字符串是设置租约时返回的

复制代码
etcdctl lease timetolive 6a6c983a54db2c09

给键绑定租约

相当于redis的给key设置过期时间,/test是key,1是value,6a6c983a54db2c0c是租约的唯一标识

复制代码
etcdctl put /test 1 --lease 6a6c983a54db2c0c

如果租约过期则key也过期

复制代码
etcdctl get /test

ETCD可视化工具

一般情况下,在使用数据存储中间件时需要一个可视化工具,能够直观地管理已经存储的数据,这里我们采用 etcdkeeper

下载地址

复制代码
https://github.com/evildecay/etcdkeeper/releases

我是mac所以下载 etcdkeeper-v0.7.8-darwin_x86_64.tar.gz

下载后解压进入文件夹,可以看到文件夹下有一个 etcdkeeper 可执行文件,执行以下命令

先查看文件是否有执行权限

复制代码
ls -l etcdkeeper

如果没有执行权限(缺少 `x`),添加权限,注意 chmod 和 +x 之间有空格

复制代码
chmod +x etcdkeeper

启动执行

复制代码
sudo ./etcdkeeper -p 8081

此时访问本地就能看到可视化页面了

复制代码
http://127.0.0.1:8081/etcdkeeper

linux下载地址

复制代码
https://storage.googleapis.com/etcd/v3.6.3/etcd-v3.6.3-linux-amd64.tar.gz