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/

相关推荐
少司府3 小时前
C++基础入门:深挖list的那些事
开发语言·数据结构·c++·容器·list·类型转换·类和对象
东北甜妹3 小时前
K8s etdc备份恢复 和 集群升级 证书更新
云原生·容器·kubernetes
念恒123063 小时前
Docker基础--CGroups资源控制实战(包含部分指令)
运维·docker·容器
万里侯4 小时前
户外露营攻略:远离城市喧嚣的完美周末
微服务·容器·k8s
万里侯4 小时前
云原生安全最佳实践:守护容器化应用的安全防线
微服务·容器·k8s
万里侯4 小时前
云原生存储方案对比:选择适合你的存储策略
微服务·容器·k8s
Benszen4 小时前
docker简介
运维·docker·容器
木雷坞4 小时前
K8s v1.36 AI 任务启动失败排查:PodGroup、DRA、ImagePullBackOff
人工智能·容器·kubernetes
MAVER1CK13 小时前
Docker容器创建好后修改容器配置
运维·docker·容器