ETCD数据迁移

ETCD数据迁移

背景:由于k8s集群数据迁移,集群的网关数据库Etcd也随之迁移,因此涉及到Etcd数据的导出导入

1、源库导出:

bash 复制代码
etcdctl snapshot save snapshot-2026.db --endpoints=10.100.100.15:12379
# 数据库端口修改为自己的

2、当目标库为单机时:

bash 复制代码
直接在目标库机器上执行:
etcdctl snapshot restore snapshot-2026.db --data-dir=/var/lib/etcd-new

然后使用这个新目录etcd-new作为Etcd的数据目录重启Etcd服务

3、当目标库为集群但是只有一节点时:

bash 复制代码
etcdctl snapshot restore snapshot-2026.db \
  --name etcd-1 \
  --initial-cluster-token etcd-cluster \
  --initial-advertise-peer-urls http://10.10.10.1:12380 \
  --data-dir /var/lib/etcd-new
参数解释:
--initial-cluster-token 为整个 etcd 集群设置一个唯一标识令牌
--initial-advertise-peer-urls 告诉其他 etcd 节点如何访问本节点

4、当目标库为集群多节点时:

在节点1 (名为 node1) 上执行

bash 复制代码
etcdctl snapshot restore ssnapshot-2026.db \
  --name node1 \
  --initial-cluster-token etcd-cluster \
  --initial-advertise-peer-urls http://192.168.1.101:12380 \
  --initial-cluster "node1=http://192.168.1.101:12380,node2=http://192.168.1.102:12380 \
  --data-dir=/var/lib/etcd-new

在节点2 (名为 node2) 上执行

bash 复制代码
etcdctl snapshot restore snapshot-2026.db \
  --name node2 \
  --initial-cluster-token etcd-cluster \
  --initial-advertise-peer-urls http://192.168.1.102:2380 \
  --initial-cluster "node1=http://192.168.1.101:12380,node2=http://192.168.1.102:12380 \
  --data-dir=/var/lib/etcd-new

然后分别使用新的数据目录重启Etcd数据库

相关推荐
流星白龙14 小时前
【MySQL高阶】0.MySQL的安装
数据库·mysql·adb
Rick199315 小时前
联合索引是按顺序排好序的
数据库·mysql
步十人15 小时前
【Redis】网络高并发模型
网络·数据库·redis
我是一颗柠檬15 小时前
【Redis】列表与集合Day4(2026年)
数据库·redis·后端·缓存
AOwhisky15 小时前
Ceph系列第三期:Ceph 集群核心配置与管理
linux·运维·数据库·笔记·ceph
陈天伟教授15 小时前
安装 AutoCAD 时,“可选工具“ 的详细说明。
数据库
zcn12615 小时前
举一反三思路思考形如(列=参数 or decode函数)
数据库·sql优化改写
Xzh042315 小时前
Redis黑马点评 实战复盘与面试高频考点详解
java·数据库·redis·面试
林的快手16 小时前
MySQL
数据库·oracle
身如柳絮随风扬16 小时前
MySQL 存储引擎深度解析:InnoDB vs MyISAM vs Memory,行锁实现与索引奥秘
数据库·mysql