http://192.168.0.210:2379我写了一个连接到etcd主机的小 Go 程序http://192.168.0.211:2379,设置一个密钥/foo,bar然后读取它并打印结果。那部分工作正常:bar &{get {Key: /foo, CreatedIndex: 6, ModifiedIndex: 6, TTL: 0} <nil> 6 67b31bc85ffd6d2b} <nil>也可以使用 HTTP GET 请求读取密钥{ "action": "get", "node": { "key": "/foo", "value": "bar", "modifiedIndex": 6, "createdIndex": 6 }}但是当我使用 ectdctl 时,它什么都不返回,就好像密钥不存在一样./etcdctl --endpoints=192.168.0.210:2379,192.168.0.211:2379 get /foo如果我改为/foo使用 etcdctl 进行设置,那么它可以正常工作并正确读取密钥。看起来 etcdctl 正在处理它自己的工作空间。任何想法为什么会这样?
1 回答
慕神8447489
TA贡献1780条经验 获得超1个赞
问题是我对客户端使用 API v2,对 etcdctl 使用 v3。不同的 API 版本具有不同的键命名空间。在 Go 导入中使用客户端 v3go.etcd.io/etcd/clientv3
- 1 回答
- 0 关注
- 86 浏览
添加回答
举报
0/150
提交
取消