consul-kv-migrate

Consul 集群之间迁移 KV 数据
授权协议 MIT
开发语言 Google Go
所属分类 数据库相关、 数据库管理工具
软件类型 开源软件
地区 国产
投 递 者 齐迪
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

一个简单的小工具,用于在两个独立的 Consul 集群之间迁移 KV 数据和比较 KV 差异。

命令行参数

$ consul-kv-migrate -h
Usage of consul-kv-migrate:
  -action string
    	执行动作:diff-对比源和目标 Consul 配置差异,migrate-迁移源到目标并覆盖目标, 目标服务器的多余的 Key 不会被删除 (default "diff")
  -src-addr string
    	源 Consul 服务地址 (default "source-ip:8500")
  -src-token string
    	源 Consul Token
  -target-addr string
    	目标 Consul 服务地址 (default "target-ip:8500")
  -target-token string
    	目标 Consul Token

使用示例

将 192.168.1.10 的 Consul 集群上的所有 KV 同步到 192.168.2.10 的集群。

consul-kv-migrate \
    -target-addr 192.168.2.10:8500 \
    -target-token xxxxx-xxxxx-xxxxx-xxxx-xxxx \
    -src-addr 192.168.1.10:8500 \
    -src-token yyyy-yyyy-yyyyy-yyyyy-yyyy \
    -action migrate

对比 192.168.1.10 和 192.168.2.10 两个 Consul 集群的 KV 差异。

consul-kv-migrate \
    -target-addr 192.168.2.10:8500 \
    -target-token xxxxx-xxxxx-xxxxx-xxxx-xxxx \
    -src-addr 192.168.1.10:8500 \
    -src-token yyyy-yyyy-yyyyy-yyyyy-yyyy \
    -action diff
 相关资料
  • 名称: txt_to_pika 位置: /pika-tools/txt_to_pika 目的: 将txt文本的kv数据写入pika 使用: Usage: ./txt_to_pika txt pika_ip pika_port -n [thread_num] -t [ttl] -p [password] example: ./txt_to_pika data.txt 127.0.0.1 9921 -

  • Consul相关功能: 根据项目及业务线配置一个ConsulACL(即:Consul权限)。 根据配置好的 Consul token,可配置具体 Key/Value。 Consul相关提示: 支持删除 ACL 删除后不可恢复。 支持删除 Key/Value 具体 字段 及 文件夹,删除后不可恢复。 Key/Value 的增、删、改,都需要用到 token,请妥善保管。 操作步骤 ACL 管理 Co

  • 在很多情况下,日志内容本身都是一个类似于 key-value 的格式,但是格式具体的样式却是多种多样的。logstash 提供 filters/kv 插件,帮助处理不同样式的 key-value 日志,变成实际的 LogStash::Event 数据。 配置示例 filter { ruby { init => "@kname = ['method','uri','verb'

  • Compact 方法压缩在etcd键值存储中的事件历史。 键值存储应该定期压缩,否则事件历史会无限制的持续增长. rpc Compact(CompactionRequest) returns (CompactionResponse) {} 消息体 请求的消息体是 PutRequest: message CompactionRequest { // 用于比较操作的键值存储的修订版本 int6

  • Txn 方法在单个事务中处理多个请求。 一个 txn 请求增加键值存储的修订版本并为每个完成的请求生成带有相同修订版本的事件。 不容许在一个txn中多次修改同一个key。 rpc Txn(TxnRequest) returns (TxnResponse) {} 背景 以下内容翻译来自 proto文件中 TxnRequest 的注释,解释了Txn请求的工作方式. 来自 google paxosdb

  • DeleteRange 方法从键值存储中删除给定范围。 删除请求增加键值存储的修订版本并在事件历史中为每个被删除的key生成一个删除事件. rpc DeleteRange(DeleteRangeRequest) returns (DeleteRangeResponse) 消息体 请求的消息体是 DeleteRangeRequest: message DeleteRangeRequest { /