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版本的更新,升级的版本号也会有变化,只需根据考题调整升级命令对应的版本号即

可。

需要更多题库请留言。

相关推荐
斯普信专业组1 小时前
K8s环境下基于Nginx WebDAV与TLS/SSL的文件上传下载部署指南
nginx·kubernetes·ssl
木头左1 小时前
Windows环境下Docker容器化的安装与设置指南
windows·docker·容器
&如歌的行板&2 小时前
如何在postman中动态请求k8s中的pod ip(基于nacos)
云原生·容器·kubernetes
泡泡_02243 小时前
云原生系统DOCKER中容器系统搭建
docker·云原生·容器
云妙算3 小时前
K8s 弹性伸缩踩坑实录:周末 2 天烧掉 10 万元!?
云原生·kubernetes
Changersh4 小时前
Windows下配置Docker+WSL集成开发环境
windows·docker·容器
lovely_nn4 小时前
Docker 容器资源限制
docker·容器
moppol6 小时前
Serverless 架构入门与实战:AWS Lambda、Azure Functions、Cloudflare Workers 对比
云原生·serverless·aws
IvanCodes7 小时前
一、Docker:一场颠覆应用部署与运维的容器革命
docker·容器
栗子~~7 小时前
Milvus docker-compose 部署
docker·容器·milvus