k8s1.21.1 etcd服务备份恢复

#此操作为高危操作,需谨慎操作

1、在节点1进行备份操作

#!/bin/bash

cd /etc/etcd/ssl

endpoints=https://127.0.0.1:2379

export ETCDCTL_API=3

/usr/bin/etcdctl --cacert=ca.pem --cert=client.pem --key=client-key.pem --endpoints=$endpoints snapshot save /home/etcd_backup/`hostname`_`date "+%Y%m%d%H%M".db`

2、在节点1创建目录,执行恢复命令

ETCDCTL_API=3 etcdctl --endpoints 127.0.0.1:2379 snapshot restore etcd-snapshot.db --data-dir /root/member-bak

3、将member-bak拷贝到节点2

4、在节点2执行如下操作

a、停止etcd运行

mv /etc/kubernetes/manifests/etcd.yaml /root/bak20241112

b、检查etcd已停止

docker ps |grep etcd

c、移除原来etcd的数据,member目录

mv /var/lib/etcd/member /root/bak

d、恢复之前备份的自定义目录,到/var/lib/etcd/, 确认member新的存在

mv /member-bak /var/lib/etcd/

e、启动etcd

mv ./etcd.yaml /etc/kubernetes/manifests/

f、 此时可以进行验证

相关推荐
东风微鸣4 小时前
Python 脚本最佳实践2025版
docker·云原生·kubernetes·可观察性
Andy杨4 小时前
20250710-2-Kubernetes 集群部署、配置和验证-网络组件存在的意义?_笔记
网络·笔记·kubernetes
不知疲倦的仄仄5 小时前
2025最新版Docker讲解/面试/命令/容器化技术
运维·docker·容器
David爱编程10 小时前
Deployment vs StatefulSet:怎么选?
后端·云原生·kubernetes
code喵喵10 小时前
docker-compose安装常用中间件
docker·中间件·容器
山岚的运维笔记11 小时前
AlpineLinux使用docker部署prometheus
docker·容器·prometheus
咚咚?12 小时前
docker 启动中间件
docker·中间件·容器
乌托邦的逃亡者17 小时前
Docker的/var/lib/docker/目录占用100%的处理方法
运维·docker·容器
OKUNP1 天前
Docker高级管理--容器通信技术与数据持久化
docker·容器·php