etcd分爲etcd2和etcd3版本,兩個版本之間的api相互不兼容,如今大多數公司都在使用etcd3版本,本文也以etcd3做爲演示對象。html
etcdctl工具etcd附帶的命令行工具,能夠很方便的對etcd中的數據進行管理。web
etcdctl有兩個版本:v2和v3,能夠分別使用以下方式來設置版本:json
#設置v2版本 export ETCDCTL_API=2 #設置v3版本 export ETCDCTL_API=3
這裏咱們以只介紹etcdctl v3版本。api
sudo vi ~/.bashrcbash
#設置etcdctl爲v3版本 export ETCDCTL_API=3 #設置etcd的端點信息,即etcd集羣的ip:port,以逗號分隔 export ENDPOINTS=10.10.10.45:2379,10.10.10.46:2379,10.10.10.47:2379
1)查看版本微信
查看版本的命令運維
輸入:etcdctl versionide
2)獲取etcd成員列表工具
輸入:etcdctl member list測試
其中輸出信息的格式有fields, json, protobuf, simple, table這幾種,經過--write-out指定,這裏我試下table格式
輸入:etcdctl member list --write-out="table"
3)向etcd中寫入kv
etcdctl put key value
例如:etcdctl --endpoints=$ENDPOINTS put web3 'hello world3'
4)向etcd查詢數據
#精確查詢某個key爲web3的數據 etcdctl get web3 #模糊查詢匹配到前綴爲web的數據 etcdctl get --prefix web #模糊查詢匹配到前綴爲web的key(不返回value) ./etcdctl --prefix --keys-only=true get web
5)刪除某個key
etcdctl del key
例如:etcdctl del web1
命令執行後打印的是實際刪除的key的數量。
6)租約(ttl,過時時間)
a)查看租約列表
執行:etcdctl lease list
b) 建立必定時間的租約,單位爲s:etcdctl lease grant n
執行:etcdctl lease grant 4000
c)爲某個KV授予租約(即過時時間):etcdctl put --lease=name key value
執行:etcdctl put web3 'hello world' --lease=1255775c01ff5f28
d)查看租約信息
執行:etcdctl lease timetolive 1255775c01ff5f28
e)重置租約(至關於重置了剩餘過時時間,全部綁定租約的key的剩餘過時時間又變成了4000s)
執行:etcdctl lease keep-alive 1255775c01ff5f28
f)撤銷租約(租約撤銷的同時,被授予租約的KV會被刪除)
執行:etcdctl lease revoke 1255775c01ff5f28
以上就是etcdctl的簡單實用,有問題能夠在後面留言~
博主:測試生財(一個不爲996而996的測開碼農)
座右銘:專一測試開發與自動化運維,努力讀書思考寫做,爲內卷的人生奠基財務自由。
內容範疇:技術提高,職場雜談,事業發展,閱讀寫做,投資理財,健康人生。
csdn:https://blog.csdn.net/ccgshigao
博客園:https://www.cnblogs.com/qa-freeroad/
51cto:https://blog.51cto.com/14900374
微信公衆號:測試生財(按期分享獨家內容和資源)