Kubernetes etcd备份恢复

etcdctl是一个命令行的客户端 ,它提供了一些命令,可以方便我们在对服务进行测试或者手动修改数据库内容。

etcdctl命令需要压缩包导入:tar xf etcd-v3.5.17-linux-amd64.tar.gz

将etcdct命令拖入sbin :cp etcdctl /usr/sbin/

查看连接数据库时的路径端口:kubectl -n kube-system get pod etcd-k8s-master -oyaml

在/root下 vim .bashrc 加入编写(注意IP地址)

alias etcdctl="etcdctl --cert /etc/kubernetes/pki/etcd/peer.crt --key /etc/kubernetes/pki/etcd/peer.key --endpoints=https://192.168.11.160:2379 --insecure-skip-tls-verify"

让环境变量永久生效、不用每次都手动 export:source .bashrc

查看 etcd 客户端 + 服务端 的版本号:etcdctl version

查看 etcd 集群有哪些节点 + 节点状态 ,用表格形式 展示:etcdctl member list -w table

查看 etcd 集群每个节点的状态 + 健康情况 + 是否是主节点:etcdctl endpoint status -w table

查看警告事件:etcdctl alarm list

解除所有警告:etcdctl alarm disarm

单节点部署的etcd无法直接扩容

备份恢复指令

etcd的备份统一放在/var/lib/etcd/member/wal下

做备份防止数据库崩溃,etcd挂,k8s集群挂

数据库升级前一定要备份

数据库扩容前一定要备份

给 etcd 做一个完整备份:etcdctl snapshot save etcd-snapshot.db

查看刚才备份的 etcd 快照文件信息,用表格展示:

etcdctl snapshot status etcd-snapshot.db -w table

数据库恢复前要删除rm -rf /var/lib/etcd/*

恢复备份: etcdctl snapshot restore /opt/etcd-snapshot.db (命令执行后当前目录下会生成一个default.etcd的目录)

将default.etcd目录下的member目录 cp -r member/ /var/lib/etcd/member/

相关推荐
Cicada1283 小时前
定时任务方案选择指南:crontab、K8s CronJob、Airflow、XXL-JOB
云原生·容器·kubernetes
虎王物联4 小时前
Docker WASM 边缘计算:12ms 冷启动如何重塑 IoT 网关部署
物联网·docker·容器·边缘计算·wasm
猫吃了源码4 小时前
Ubuntu24系统安装部署最新版K8s(Kubernetes)1.36保姆级详细教程
云原生·容器·kubernetes
2401_834636995 小时前
Docker 容器化技术全解:从镜像构建到容器编排的完整教案1
java·docker·容器
秋风点枝5 小时前
第二篇:安装 Argo CD + 第一次部署应用
kubernetes·github·argocd
青 春 记 忆14 小时前
Dify Docker Compose 通用无损升级指南:从备份、双版本预演到切换与回滚
运维·人工智能·python·docker·容器
Java王小怪15 小时前
Docker环境Redis没挂载保存数据
运维·docker·容器
AKCJDJ17 小时前
k8s的管理及控制器管理
云原生·容器·kubernetes
SCandL15217 小时前
k8s service
linux·容器·kubernetes
众人皆醒我独醉19 小时前
InferenceGraph:把多个推理服务编排成 DAG
面试·kubernetes·gpu