2024 CKA题库+详尽解析| 15、备份还原Etcd

目录

[免费获取题库配套 CKA_v1.31_模拟系统](#免费获取题库配套 CKA_v1.31_模拟系统)

[15、 备份还原Etcd](#15、 备份还原Etcd)

题目:

开始操作:

1)、切换集群

2)、登录master并提权

3)、备份Etcd现有数据

4)、验证备份数据快照

5)、查看节点和Pod状态

6)、创建目录

7)、执行Etcd数据恢复命令

8)、验证恢复情况

9)、更改Etcd配置

10)、将K8S配置文件复制回配置目录

11)、重启kubelet

12)、再次查看验证

13)、退回node01


免费获取题库配套 CKA_v1.31_模拟系统

15、 备份还原Etcd

题目:

您必须在以下Cluster/Node上完成此考题:

Cluster Master node Worker node

wk8s master node01

.

设置配置环境:

candidate@node01$ kubectl config use-context wk8s

.

Context

Etcd数据库备份与还原

.

Task

首先,为运行在https://127.0.0.1:2379上的现有 etcd实例创建快照并将快照保存到

/var/lib/backup/etcd-snapshot.db

.

为给定实例创建快照预计能在几秒钟内完成。 如果该操作似乎挂起,则命令可能有问题。用 CTRL + C 来取消 操作,然后重试.

.

然后还原位于以下位置的现有先前快照。 /data/backup/etcd-snapshot-previous.db

提供了以下TLS证书和密钥,以通过etcdctl连接到服 务器。

.

• CA 证书: /opt/KUIN00601/ca.crt

• 客户端证书: /opt/KUIN00601/etcd-client.crt

• 客户端密钥: /opt/KUIN00601/etcd-client.key

开始操作:

1)、切换集群

bash 复制代码
# 考试时有多套集群环境,以免答题环境相互干扰。
# 所以考试时务必按照题目要求先切换到所对应的集群环境,才是正确答题的前提,非常重要
# 请务必确认现在所处节点为node01,否则无法切换集群而报错
kubectl config use-context wk8s

2)、登录master并提权

有些人较劲说题目没有说让登录master,然后在node01一顿操作,我只能说总得登录master看Etcd配置文件吧,考试的时候千万别较劲

bash 复制代码
ssh master
sudo -i

CKA模拟环境操作截图:

3)、备份Etcd现有数据

bash 复制代码
#执行ETCD备份
ETCDCTL_API=3 etcdctl --endpoints=https://127.0.0.1:2379 \       #备份指定节点服务器
--cacert=/opt/KUIN00601/ca.crt \
--cert=/opt/KUIN00601/etcd-client.crt \
--key=/opt/KUIN00601/etcd-client.key \
snapshot save /var/lib/backup/etcd-snapshot.db                   #备份数据文件存放位置

CKA模拟环境操作截图:

4)、验证备份数据快照

bash 复制代码
ETCDCTL_API=3 etcdctl --write-out=table snapshot status /var/lib/backup/etcd-snapshot.db

CKA模拟系统操作截图可见验证快照命令提示使用etcdutl代替,我们直接使用etcdutl操作,

5)、查看节点和Pod状态

在开始ETCD恢复操作之前,先看一下pod presentation个数,相当于一个状态标记,做为参照,用于恢复完毕的对比,证明数据已成功恢复:

bash 复制代码
kubectl get pod -n default | grep presentation | wc -l

CKA模拟系统操作截图若此时还未操作第14题"扩容deployment数量",那么命令执行完应该得到的数字是"1"如下图所示:

CKA模拟系统操作截图若此时已经做完第14题"扩容deployment数量",那么命令执行完应该得到的数字是"4"如下图所示:

6)、创建目录

数据恢复过程中需要用到的目录

bash 复制代码
#创建系统配置文件备份目录,其实可以不创建,直接将系统配置文件移到已存在的/data/backup
mkdir /opt/backup

#创建Etcd备份将要恢复数据的位置目录                                  
mkdir /var/lib/etcd-restore  

#将系统配置文件移动至此目录,即官网所述停止所有API实例                    
mv /etc/kubernetes/manifests/* /opt/backup/     

CKA模拟环境操作截图:

7)、执行Etcd数据恢复命令

bash 复制代码
#官方说明:
#在恢复集群时,使用 --data-dir 选项来指定集群应被恢复到哪个文件夹。
#其中 <data-dir-location> 是将在恢复过程中创建的目录。
#自 etcd v3.5.x 版本起,使用 etcdctl 进行恢复的功能已被弃用,未来的可能会在 etcd 版本中被移除。
etcdutl --data-dir=/var/lib/etcd-restore snapshot restore /data/backup/etcd-snapshot-previous.db

CKA模拟环境操作截图:

8)、验证恢复情况

bash 复制代码
#查看数据恢复情况
ls /var/lib/etcd-restore

9)、更改Etcd配置

bash 复制代码
#1.31版本环境按照之前方法多次未成功,参考官网所述在原目录恢复方法,直接移除原数据目录,在生成新的配置文件,最后重启所有API接口
#移除原数据目录
mv /var/lib/etcd /opt/backup/

#替换原有配置路径并生成新的etcd.yaml配置文件
sed 's!/var/lib/etcd!/var/lib/etcd-restore!' /opt/backup/etcd.yaml > /etc/kubernetes/manifests/etcd.yaml

#检查搜索是否有为替换配置
cat /etc/kubernetes/manifests/etcd.yaml | grep '/var/lib/etcd'

CKA模拟系统操作截图

10)、将K8S配置文件复制回配置目录

bash 复制代码
cp /opt/backup/kube* /etc/kubernetes/manifests/

11)、重启kubelet

bash 复制代码
#重启 kubelet
systemctl daemon-reload
systemctl restart kubelet

CKA模拟环境操作截图:

12)、再次查看验证

bash 复制代码
#验证集群是否重启完毕
kubectl get node 

#查看pod presentation数量,恢复完成后获取到的数字应该是"2"                                                
kubectl get pod -n default | grep presentation | wc -l            

CKA模拟系统操作截图,执行完毕后得到的数字值是"2",说明我们已经恢复成功。

13)、退回node01

操作完成,然后执行两次exit退出master,检查主机名称进行确认

bash 复制代码
exit                             #退出提权状态
exit                             #退出master主机

CKA高仿真环境简短演示视频

相关推荐
尔染君子1 分钟前
嵌入式Linux驱动开发(按键驱动)
linux·驱动开发
“码”力全开2 分钟前
解耦异构算力:基于 Docker 与边缘计算的 AI 视频管理平台,实现 GB28181/RTSP 统一接入与源码交付深度解析
人工智能·docker·边缘计算
条俐开水喉7 分钟前
液冷服务器与U位资产管理的依存共生关系深度分析
运维·ai算力服务器·u位资产管理·液冷服务器
小马爱打代码8 分钟前
框架 - 组件 - 中间件:生产级参数配置指引
数据库·中间件
kebidaixu14 分钟前
BCU 平台 Modbus 主机功能开发:液冷机组 & 消防传感器
linux
高旭的旭20 分钟前
反向 SSH 隧道远程方案
运维·ssh
元启数宇21 分钟前
机电设计AI不只是消防:给排水、暖通、强弱电如何进入自动化?
运维·人工智能·自动化
vsropy23 分钟前
安装虚拟机VMware
linux·windows
asdfg125896325 分钟前
一文通俗理解JDBC中的核心概念+案例
java·数据库·oracle·jdbc
Jason_chen26 分钟前
Linux 3.0 串口机制深度解析:传统8250驱动与基础RS-232/485支持
linux·前端