K8S的CKA考试环境和题目

CKA考试这几年来虽然版本在升级,但题目一直没有大的变化,通过K8S考试的方法就是在模拟环境上反复练习,通过练习熟悉考试环境和考试过程中可能遇到的坑。这里姚远老师详细向大家介绍一下考试的环境和题目,需要详细资料的同学请在文章后面留言。祝大家考试成功。

K8S的考试环境

CKA考试环境由三台虚拟机组成,这三台虚拟机姚远老师已经建好了,需要的同学请在下面留言,主机名分别是k8s-master、k8s-node1、k8s-node2,安装的操作系统是Ubuntu,大家可能猜到了为什么不用红帽,因为版权的问题。这个考试是Linuxfoundation搞的,他们想保证纯正的开源。

1权限控制RBAC

考题概述:

创建名称 deployment-clusterrole 的 ClusterRole,该角色具备创建 Deployment、Statefulset、

Daemonset 的权限,在命名空间 app-team1 中创建名称为 cicd-token 的 ServiceAccount,绑定

ClusterRole 到 ServiceAccount,且限定命名空间为 app-team1。

考题解析:

需要熟悉创建 serviceaccount、clusterrole 和 rolebinding 的方法,需要限定在 ns 级别,因此最好使

用 rolebinding

参考方法:

css 复制代码
kubectl create ns app-team1 (题库练习执行,命名空间考试系统已存在)
kubectl create serviceaccount cicd-token -n app-team1
kubectl create clusterrole deployment-clusterrole --verb=create --
resource=deployments,statefulsets,daemonsets
kubectl -n app-team1 create rolebinding cicd-clusterrole --
clusterrole=deployment-clusterrole --serviceaccount=app-team1:cicd-token

最后可以验证下rolebinding资源

rolebinding后面 的名字cicd-clusterrole随便起的,因为题 中没有要求,如果题 中有要求,就不能随便起了

2 设置节点不可

考题概述:

设置 ek8s-node-1 节点为不可 、重新调度该节点上的所有 pod

考题解析:

cordon节点,drain 节点,需要忽略 daemonsets 并清除 local-data,否则可能 法驱逐 pod

参考 法:

css 复制代码
切换 context
kubectl cordon ek8s-node-1
kubectl drain ek8s-node-1 --ignore-daemonsets --delete-emptydir-data --
force
完成后一定要通过 get nodes加以确认

3 升级 kubeadm

考题概述:

升级 master 节点为1.22.2,升级前确保drain master 节点,不要升级worker node 、容器

manager、 etcd、 CNI插件、DNS 等内容;

考题解析:

首先 cordon、drain master节点,其次升级 kubeadm 并 apply 到1.22.2版本,升级 kubelet 和

kubectl

参考方法:

css 复制代码
切换 context
kubectl get nodes
ssh mk8s-master-0
kubectl cordon mk8s-master-0
kubectl drain mk8s-master-0 --ignore-daemonsets --force
apt-mark unhold kubeadm kubectl kubelet
apt-get update && apt-get install -y kubeadm=1.22.2-00 kubelet=1.22.2-00
kubectl=1.22.2-00
apt-mark hold kubeadm kubectl kubelet
kubeadm upgrade plan
kubeadm upgrade apply v1.22.2 --etcd-upgrade=false
systemctl daemon-reload && systemctl restart kubelet
//kubectl -n kube-system rollout undo deployment coredns 有些朋友建议
rollout coredns,
kubectl uncordon mk8s-master-0
检查master节点状态以及版本
kubectl get node

注意:随着K8S版本的更新,升级的版本号也会有变化,只需根据考题调整升级命令对应的版本号即

可。

需要更多题库请留言。

相关推荐
Star(up up up)15 小时前
Redis Windows 安装教程:使用Windows 的 Redis 压缩包
redis·笔记·学习·程序人生·云原生·学习方法·改行学it
分布式存储与RustFS18 小时前
Terraform 状态文件老在本地丢、并发还撞锁:把 state 锁进 RustFS
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
csdn_aspnet19 小时前
macOS 10 、Docker 玩轉 MySQL
运维·mysql·macos·docker·容器·mac
对象存储与RustFS20 小时前
Jenkins 的构建产物别堆在控制器磁盘:用 RustFS 当它的 S3 工件仓库
后端·docker·云原生
罗小爬EX2 天前
Helm 从概念到实战:以一个普通 Web 应用为例
云原生·helm
java_logo2 天前
Docker 部署 DeepSeek Harness(moelin):轻松搭建带登录的本地 AI Agent 平台
运维·docker·容器·ai agent·deepseek·harness·轩辕镜像
xbzb2 天前
容器 IP 每次重建都变?docker network 五种模式与自定义网桥固定地址
网络·docker·容器·ip·network·固定
打工仔折腾 AI2 天前
Changedetection.io 网页变动监控:Docker 部署、通知配置与公网暴露实践
运维·人工智能·后端·python·docker·容器·性能优化
fengkai45452 天前
Prometheus+K8s弹性伸缩综合项目
运维·kubernetes·k8s·prometheus·hpa·vpa
分布式存储与RustFS2 天前
镜像仓库的层别只堆本地盘:用 RustFS 给 Harbor 当 S3 后端
运维·云原生·开源·对象存储·分布式存储·s3·性能基准