新建一個過時時間爲120s的租約spa
# etcdctl lease grant 120 lease 018f6d7bb11aba0d granted with TTL(120s)
查看新建的租約信息code
# etcdctl lease list found 1 leases 018f6d7bb11aba0d
# etcdctl lease timetolive 018f6d7bb11aba0d --keys
lease 018f6d7bb11aba0d granted with TTL(120s), remaining(99s), attached keys([])blog
新建key,併爲該key指定租約rem
# etcdctl put name alice --lease="018f6d7bb11aba0d" OK # etcdctl put name1 tina --lease="018f6d7bb11aba0d" OK
# etcdctl lease timetolive 018f6d7bb11aba0d --keys
lease 018f6d7bb11aba0d granted with TTL(120s), remaining(60s), attached keys([name name1])
# etcdctl get --prefix ""
name
alice
name1
tinaget
等到租約過時後,再次查看租約已通過期,對應的key也已經被自動刪除it
# etcdctl lease timetolive 018f6d7bb11aba0d --keys
lease 018f6d7bb11aba0d already expired
新建租約並賦予key值class
# etcdctl lease grant 30 lease 018f6d7bd032c117 granted with TTL(30s) # etcdctl put name alice --lease=018f6d7bd032c117 OK
在租約即將過時時進行續約,命令不會自動結束,會一直顯示該窗口keepalived
# etcdctl lease keep-alive 018f6d7bd032c117 lease 018f6d7bd032c117 keepalived with TTL(30) lease 018f6d7bd032c117 keepalived with TTL(30) lease 018f6d7bd032c117 keepalived with TTL(30) ......
從新打開一個窗口,查看該租約續約信息,能夠看到該租約會自動續約,相應key值也不會被刪除im
# etcdctl lease timetolive 018f6d7bd032c117 --keys lease 018f6d7bd032c117 granted with TTL(30s), remaining(23s), attached keys([name]) # etcdctl lease timetolive 018f6d7bd032c117 --keys lease 018f6d7bd032c117 granted with TTL(30s), remaining(22s), attached keys([name]) # etcdctl lease timetolive 018f6d7bd032c117 --keys lease 018f6d7bd032c117 granted with TTL(30s), remaining(21s), attached keys([name]) # etcdctl lease timetolive 018f6d7bd032c117 --keys lease 018f6d7bd032c117 granted with TTL(30s), remaining(20s), attached keys([name]) # etcdctl lease timetolive 018f6d7bd032c117 --keys lease 018f6d7bd032c117 granted with TTL(30s), remaining(29s), attached keys([name]) # etcdctl lease timetolive 018f6d7bd032c117 --keys lease 018f6d7bd032c117 granted with TTL(30s), remaining(28s), attached keys([name]) # etcdctl lease timetolive 018f6d7bd032c117 --keys lease 018f6d7bd032c117 granted with TTL(30s), remaining(27s), attached keys([name]) # etcdctl lease timetolive 018f6d7bd032c117 --keys lease 018f6d7bd032c117 granted with TTL(30s), remaining(27s), attached keys([name]) # etcdctl lease timetolive 018f6d7bd032c117 --keys lease 018f6d7bd032c117 granted with TTL(30s), remaining(26s), attached keys([name]) # etcdctl lease timetolive 018f6d7bd032c117 --keys lease 018f6d7bd032c117 granted with TTL(30s), remaining(25s), attached keys([name]) # etcdctl lease timetolive 018f6d7bd032c117 --keys lease 018f6d7bd032c117 granted with TTL(30s), remaining(25s), attached keys([name]) # etcdctl lease timetolive 018f6d7bd032c117 --keys lease 018f6d7bd032c117 granted with TTL(30s), remaining(24s), attached keys([name]) # etcdctl lease timetolive 018f6d7bd032c117 --keys lease 018f6d7bd032c117 granted with TTL(30s), remaining(23s), attached keys([name]) # etcdctl lease timetolive 018f6d7bd032c117 --keys lease 018f6d7bd032c117 granted with TTL(30s), remaining(22s), attached keys([name]) # etcdctl lease timetolive 018f6d7bd032c117 --keys lease 018f6d7bd032c117 granted with TTL(30s), remaining(22s), attached keys([name]) # etcdctl lease timetolive 018f6d7bd032c117 --keys lease 018f6d7bd032c117 granted with TTL(30s), remaining(20s), attached keys([name]) # etcdctl lease timetolive 018f6d7bd032c117 --keys lease 018f6d7bd032c117 granted with TTL(30s), remaining(29s), attached keys([name])
回收租約會自動刪除與該租約關聯的keydi
# etcdctl lease revoke 018f6d7bd032c117 lease 018f6d7bd032c117 revoked # etcdctl lease timetolive 018f6d7bd032c117 --keys lease 018f6d7bd032c117 already expired # etcdctl get name