set TOKEN=token
set CLUSTER_STATE=new
set NAME_1=machine-1
set NAME_2=machine-2
set NAME_3=machine-3
set HOST_1=192.168.0.3
set HOST_2=192.168.0.14
set HOST_3=192.168.0.8
set CLUSTER=%NAME_1%=http://%HOST_1%:2380,%NAME_2%=http://%HOST_2%:2380,%NAME_3%=http://%HOST_3%:2380
set THIS_NAME=%NAME_2%
set THIS_IP=%HOST_2%
etcd.exe --data-dir=data.etcd --name %THIS_NAME% --initial-advertise-peer-urls http://%THIS_IP%:2380 --listen-peer-urls http://%THIS_IP%:2380 --advertise-client-urls http://%THIS_IP%:2379 --listen-client-urls http://%THIS_IP%:2379 --initial-cluster %CLUSTER% --initial-cluster-state %CLUSTER_STATE% --initial-cluster-token %TOKEN%
# windowsset ETCDCTL_API=3
set HOST_1=192.168.0.3
set HOST_2=192.168.0.14
set HOST_3=192.168.0.8
set ENDPOINTS=%HOST_1%:2379,%HOST_2%:2379,%HOST_3%:2379
# 设置值 查看值
etcdctl.exe --endpoints==%ENDPOINTS% put foo "Hello World!"
etcdctl.exe --endpoints==%ENDPOINTS% get foo
etcdctl.exe --endpoints==%ENDPOINTS% --write-out="json" get foo
# 查看成员 状态
etcdctl.exe --endpoints=%ENDPOINTS% member list
etcdctl.exe --write-out=table --endpoints=%ENDPOINTS% endpoint status
# linux/mac
设置环境变量 linux/mac
# linuxexport ETCDCTL_API=3
export HOST_1=192.168.0.3
export HOST_2=192.168.0.14
export HOST_3=192.168.0.8
export ENDPOINTS=$HOST_1:2379,$HOST_2:2379,$HOST_3:2379
# 设置值 查看值
etcdctl --endpoints=$ENDPOINTS put foo "Hello World!"
etcdctl --endpoints=$ENDPOINTS get foo
etcdctl --endpoints=$ENDPOINTS --write-out="json" get foo
# 查看成员 状态
etcdctl --endpoints=$ENDPOINTS member list
etcdctl --write-out=table --endpoints=$ENDPOINTS endpoint status
# watch
etcdctl --endpoints=$ENDPOINTSwatch stock1
etcdctl --endpoints=$ENDPOINTS put stock1 1000
etcdctl --endpoints=$ENDPOINTSwatch stock --prefix # stock
etcdctl --endpoints=$ENDPOINTS put stock1 10
etcdctl --endpoints=$ENDPOINTS put stock2 20
# 有效期和租约
etcdctl --endpoints=$ENDPOINTS lease grant 300
# lease 776275fdd9a9fb0c granted with TTL(300s)
etcdctl --endpoints=$ENDPOINTS put sample value --lease=776275fdd9a9fb0c
etcdctl --endpoints=$ENDPOINTS get sample
etcdctl --endpoints=$ENDPOINTS lease keep-alive 776275fdd9a9fb0c
etcdctl --endpoints=$ENDPOINTS lease revoke 776275fdd9a9fb0c
# or after 300 seconds
etcdctl --endpoints=$ENDPOINTS get sample
报错收集
rafthttp: request sent was ignored (cluster ID mismatch: peer[a]=b, local=c)