设置租约。为key设置时间,时间过去之后,数据将自动清除。
设置租约的时间:[这里设置为120秒]
etcdctl lease grant 120
返回一个租约的字符串编码号,设置租约时–lease需要填上该信息。
查看租约列表:
etcdctl lease list
查看租约的过期时间与租约时间:图中的Remaining剩余的过期时间
etcdctl lease timetolive 018f6d7bb11aba0d
[查看租约信息]:
每次租约之后信息就会变。且上图也反映了时间一过就会get失效。
撤销租约:
etcdctl lease revoke [租约号]
etcdctl lease keep-alive [key]
--print-value-only
只打印了value值
设置四个key-value。etcdctl 可以获取key的区间。
注意:上述命令所用到的范围是一个半开区间(左闭右开):[zwx, zwx3 )。
--prefix
遍历全部前缀为xxx的key
读取不同版本的 key
例如,一个应用可以利用这个特性回滚到较早的某个版本的配置。 因为对 etcd 后端存储的每次修改都会增加etcd 集群全局的版本号(revision),所以只需要提供指定的版本号就能读取相应版本的 key。
查找所有的key:
etcdctl get --from-key ""
删除所有的key:
etcdctl del --from-key ""
接 key 的字段序来读取:
--from-key
当客户端希望读取大于或等于 key 的字节值时,可使用数来实现。
以下命令将读取字典序比 b 大的所有 key:
删除一个key用del, 删除某范围内的key。
如果要在删除某个 key 的同时返回对应的 value:
--prev-kv
的使用
注意:同理删除也同意使用--prefix
、--from-key
Watch用法:
也可以watch范围内的key:【同理区间也是左闭右开】
注意:其中key与watch之间,watch可以监听范围内的key,key自身也能找到watch,其中用到红黑树来进行快速查找map中的key。
watch 子命令还支持交互(interactive)模式,使用“ -i ”选项可 watch 多个key
-i:
当etcdctl watch -i输入后,会阻塞,然后输入watch xxxx 则会监视。[上图可以证明这一点]
还可以监视历史的所有变化的key。
etcdctl watch --rev=xxx [key]
压缩 key 版本:
当我们执行del命令后,虽然etcdctl数据已经不存在,但是在历史记录中还是存在。所以我们要将它压缩掉。一旦压缩就是永久删除。
为了让客户端能够访问 key 过去任意版本的 value, etcd 会一直保存 key 所
有历史版本的 value。然而,etcd 所占的磁盘空间不能无限膨胀,因此需要为 etcd 配置压缩 key 版本号来释放磁盘空间。
进行压缩: etcdctl compact 5
查看当前的版本号。
etcdctl get [key] -w=json
有关etcd 常用配置参数:
etcd member:
Cluster:
更多常用参数请自行百度文档
检查节点是否安全:
curl http://127.0.0.1:2379/health
第二章 Etcd的初步认识
第四章 Etcd API的使用