CKA 认证笔记 - CKA 认证经验帖

文章目录

      • 一. 报名 & 预约
        • 1. 报名
        • 2. 预约
      • 二. 考试简介 & 备考建议
        • 1. 考纲介绍
        • 2. 考官检查事项
          • 1. 开启摄像头 & 电脑桌面分享
          • 2. 检查办公桌面 & 房间环境
        • 3.考试界面简介
        • 4. 考试建议
          • 【1】准备好 VPN
          • 【2】快速浏览题目
          • 【3】注意题目要求的上下文
          • 【4】启用 kubectl 自动提示
          • 【5】提前整理好文档收藏
      • 三. 考试题目简记
      • 四. 备考资料推荐

CKA 认证笔记 - CKA 认证经验帖_第1张图片

最近把 CKA 认证考过了,简单总结下考试经验,希望对需要的同学有所帮助。

一. 报名 & 预约

1. 报名

报名地址为 https://www.cncf.io/certification/cka/, 可以选择中文或者英文报名,我选的英文。
CKA 认证笔记 - CKA 认证经验帖_第2张图片
英文报名有几个优惠码:KUBERNETES15DEVOPS15,可以打 85 折,亲测可用。

CKA 认证笔记 - CKA 认证经验帖_第3张图片
进入付费界面付费完成即可。

2. 预约

付费完成后会收到邮件,进入
CKA 认证笔记 - CKA 认证经验帖_第4张图片

点击 「View Your Portal」或者直接访问 https://trainingportal.linuxfoundation.org/learn/dashboard 就可以看到考试项目了。

CKA 认证笔记 - CKA 认证经验帖_第5张图片

点击右边按钮进入预约界面,会有一系列的 checklist
包括安装插件,同意协议等操作,都完成后过个几分钟「预约按钮」才会可用,点击后预约即可,这里需要注意预约的默认时区是 UTC,先改为选择北京时间之后在进行预约。

CKA 认证笔记 - CKA 认证经验帖_第6张图片

预约完成后会收到邮件,后面就是坐等考试了。

二. 考试简介 & 备考建议

1. 考纲介绍

CKA 考试主要包括下面几项内容:

CKA 认证笔记 - CKA 认证经验帖_第7张图片

详细考纲考纲参见 CKA_Curriculum。

  • 注:2020 年 9 月 1 号之后,考试集群版本变为 1.19,并且减少了安全相关的内容,将其移到了即将上线的 CKS 考试中,但依然会考察 RBAC 相关的内容。

2. 考官检查事项

考试开始前 15 分钟会有远程考官来做一系列的检查,如果是早上考试建议预留出时间来,避免考试开始太晚可能遇到网络问题或者被人打扰。

检查主要包括下面几项:

1. 开启摄像头 & 电脑桌面分享

首先考官会要求你开启摄像头,关闭无关进程并共享电脑桌面,如果有外接显示器也需要一并分享。

2. 检查办公桌面 & 房间环境

摄像头开启后,考官会指导我们做一系列的操作,比如检查电脑进程、检查浏览器 tab、检查房间环境和办公桌面、桌底,跟着做就好了,要注意一下几点:

  • 考试中途不能有其他人,因此尽量选择不被打扰的时间进行考试。
  • 桌面不能有任何无关的东西,比如书、水杯等。
  • 考试过程中必须始终开启摄像头和桌面分享,摄像头需要一直能看到全脸,不能喝水、捂嘴。

3.考试界面简介

考完检查完成后就可以进入考试界面了。考试界面如下:

CKA 认证笔记 - CKA 认证经验帖_第8张图片

  • 图片来源:https://blog.csdn.net/fly910905/article/details/102966474

左边有时间条、语言选择和题目说明。题目语言可以选择英文、中文和日语,中文翻译可能略微不通顺,可以中英文对照着看。

右上角其他工具中有 notepad,可以用来保存一些命令等。

4. 考试建议

就我考完的感觉,CKA 题目难度不大,但考试面比较广, 会综合考察集群应用的生命周期管理,调度,网络,存储,集群运维,集群排错等内容。

考试时长 2 小时,有 15 ~ 20 道题目。我考的时候是 17 道。每道题目会给出需要的环境、题目要求以及所占权重,权重加起来共 100分,超过 66 分就算过。自己可以根据权重和知识点熟悉程度灵活选择做题顺序。

下面是一些考试建议:

【1】准备好 VPN

毕竟国外的考试,网络问题还是需要考虑的,建议选择早上或者深夜考试,并准备好 VPN。我是早上六点考的试,用上喂批恩敲命令行基本没有迟钝感。

【2】快速浏览题目

建议先把所有的题目浏览一遍,做到有的放矢。有的题目比如修改 deployment 的 replica 数只要一条命令几十秒就可以搞定,而集群升级则需要等待相关软件安装、集群组件升级完成才行,因此可以根据考试时间灵活调整做题顺序。

【3】注意题目要求的上下文

考试会给若干的集群,我考试时有 7 个,不同的题目会要求在不同的集群下完成,

每道题目开头都会给出对应的集群名和切换命令,因此在做提前一定要执行一遍以保证做题环境是正确的。

【4】启用 kubectl 自动提示

网上很多资料说考试环境已经配置了自动提示,但我考试时是没有的,需要自己设置:
文档地址为 enabling-shell-autocompletio,可以提前收藏好考试时直接打开复制即可。

【5】提前整理好文档收藏

对于一些简单操作,比如升级 Deployment 的镜像,水平扩展等尽量用命令完成。如果是需要编写 yaml 文件的题目,比如创建 Ingress、Network Policy、PV/PC,RABC 等,手敲太慢了,可以先从官方文档拷贝下来修改,为了节省时间,可将对应的文档地址组织到收藏夹中,用到的时候直接打开就行了。

三. 考试题目简记

下面是是我考完后简单整理的题目,大家可以作为参考。

1 . 创建 ServiceAccount 并赋予创建 Deployment 的权限。

  • 参考文档:Using RBAC Authorization
  • 参考文档:Certificate Signing Requests
    , CSR 可能不考

2 . etcd 数据的备份与恢复

  • 参考文档: kubernetes-the-hard-way

3 . Deployment 的的水平扩展

  • 参考文档Scaling a Deployment

4 . 基于 nodeSelector 调度 Pod

  • 参考文档:Assigning Pods to Nodes

5.查看 log 日志

题目很简单,一般是查看某个 Pod 的指定内容的日志然后输出到某个文件中:

kubectl logs -f PodNmae [containerName]| grep "" > file

6. 查看 Pod 的 CPU 使用

一般已经安装好了 metric server,直接用 kubectl top 命令查看即可。

7 . 根据要求创建一个多容器 Pod

8. 为 Pod 创建 NodeType 类型的 Service

  • 参考文档:Service

9. 根据指定的的路径和 Service 创建 Ingress

  • 参考文档:Ingress

10 . 根据指定规则创建 NetworkPolicy

  • 参考文档:NetworkPolicy

11. 根据指定条件创建 PV、PVC 并挂载到 Pod,之后修改 PVC 的容量

  • 参考文档:Configure a Pod to Use a PersistentVolume for Storage
  • 参考文档:Persistent Volumes

12 . 给已有的 Pod 添加 sidecar 容器来收集日志

  • 参考文档:sing a sidecar container with the logging agent

13. 升级主节点

集群升级目测是必考题,需要看清楚是升级主节点还是 worker 节点,步骤一般都是:

  • 查看升级信息:kubeadm upgrade plan

  • 驱逐对应节点 kubectl drain nodeName

  • 升级 kubeadm apt-get install kubeadm=1.19.0-00

  • 执行集群升级

    • 升级主节点 kubeadm upgrade apply v1.19.3
    • 升级 worker 节点:kubeadm upgrade node
  • 升级 kubelet: apt-get install kubeamd=1.19.0-00

  • 完成后重新启用节点 kubectl uncordon nodeName

  • 参考文档:Upgrading kubeadm clusters

14. 驱逐某个节点并重新调度

15 . 一道 taint 相关的题目,具体细节忘了

  • 参考文档:Taints and Tolerations

16. 集群排错,某个 worker 节点处于 NotReady,找出原因并恢复

这是我考试时候的最后一道题目,权重 13%,但题目不难,原因是 worker 节点的 kubelet 没有启动,ssh 登陆到 worker 节点使用 systemctl 启动就好了。

下面是一些 tip:

  • 节点问题:
    • api-server、etcd、scheduler、controller 是否启动成功,检查 /etc/kubernetes/manifests/ 下的 yaml 文件是否有问题。
    • 检查网络插件是否安装
    • 检查 kube-proxy 是否配置正确
    • 检查 DNS 是否配置正确
    • 检查 kubelet 是否正常启动
  • 应用问题:
    • 应用镜像是否正确
    • 应用配置的 Service、Ingress 等是否正确
    • CPU、内存等配置是否

四. 备考资料推荐

如果是为了考试的话,墙裂推荐 Udemy 的课程 Certified Kubernetes Administrator (CKA) with Practice Tests,这算是针对 CKA 认证量身定制的课程,并且附带了大量的习题,照着课程知识点过一遍做完这些习题考试基本没啥问题。这里需要注意习题练习需要威批恩,要提前准备好。

但就我个人感觉 CKA 考试难度有限,不建议为了考试而考试,重要的还是趁考试的机会系统深入的学习 K8S,下面是我最近集中学习 K8S 的一些材料,大家可以作为学习参考:

  • 《Kubernetes In Action》
  • 《Kubernetes Patterns》
  • 极客时间专栏《深入剖析 Kubernetes》
  • 《kubernetes-best-practices》

当然还有最重要的 官方文档。


老铁都看到这了来一波点赞、评论、关注三连可好

我是 AhriJ邹同学,前后端、小程序、DevOps 都搞的炸栈工程师。博客持续更新,如果觉得写的不错,欢迎来一波老铁三连,不好的话也欢迎指正,互相学习,共同进步。

你可能感兴趣的:(Kubernetes,CKA/CKAD/CKS,认证专栏,kubernetes,CKA)