Consul集群K/V数据(3)

Admin 2022-10-25 09:46:07 Linux服务

Consul 提供了一个简单的键值存储(KV store)。它可以用于保存动态配置、辅助服务间协作、建立领导选举以及其他开发者想要实现的功能。

有两种方法可以访问 Consul KV 存储:通过 HTTP API 或者 Consul KV CLI。下面通过 Consul KV CLI 的使用方法。

./consul kv get nginx/worker_connections
Error! No key exists at: nginx/worker_connections

查询没有此key,我们插入一个键值:

# 插入
./consul kv put nginx/worker_connections 65536
Success! Data written to: nginx/worker_connections

# 查询
./consul kv get nginx/worker_connections
65536

# 查看键值对元数据
./consul kv get -detailed nginx/worker_connections
CreateIndex      41706
Flags            0
Key              nginx/worker_connections
LockIndex        0
ModifyIndex      41714
Session          -
Value            65535

# 支持一个 64 位整数的标志位,它不用于 Consul 内部处理,但可以被客户端读取并赋予新的涵义。默认是0
./consul kv put -flags=12 nginx/worker_rlimit_nofile 65535

# 递归查询
./consul kv get -recurse
nginx/worker_connections:65535
nginx/worker_rlimit_nofile:65535

# 递归删除
./consul kv delete -recurse nginx

# 删除一个键值对
./consul kv delete nginx/worker_connections

Consul 可以原子性地进行检查并设置(Check-And-Set)操作,用 -cas 标识:

./consul kv put -cas -modify-index=123 foo bar
Success! Data written to: foo

./consul kv put -cas -modify-index=123 foo bar
Error! Did not write to foo: CAS failed

参考:

https://www.consul.io/api/kv.html

https://www.consul.io/docs/commands/kv.html

相关文章
最新推荐