CKA认证经验分享(详细版)

前言

本人在云原生行业就职,关注到CKA (Certified Kubernetes Administrator)考试有段时间了,一直没报考。后来发现 CKA自2024年4月1日起,有效期从3年变为2年声明链接),立马着手准备。备考时长约2个星期,99分顺利通过。

报名&预约

报名

首先注册linuxfoundation 账号,然后选择合适的报名渠道。
考试分两种渠道:

  • 国际——CKA),英文考试,需准备护照/港澳通行证(最好再备个信用卡),考试费用需外币支付 (8折优惠码:20KODE)
  • 国内——CKA-CN,中文考试(可切换语言),准备身份证,考试费用可支付宝
    Tips:一般Cyber Monday(黑五后的第一个星期一)有折扣,据说是5折左右;另外可选择CKA、CKAD、CKS等组合套餐,享受优惠价

预约

报名完成后,留意email,同时linuxfoundation的trainingportal也会有入口,会展示Exam Preparation Checklist。按照要求,确保每一项都通过后再预约。
名字部分需要留意,国际渠道的话,Last Name是姓,First Name是名字,一定要保证和有效证件一致!!!

预约是以时间段为单位,同一时间段能预约的数量有限,建议提前一周预约。很多考生反馈考试用的PSI Secure Browser系统很卡。为获得良好的考试体验,建议避峰考试,听说凌晨和清晨网络质量比较好。

预约需选择国家&时区,因为是线上考试,国家和时区不做严格限制,只要考试时按时出现就好。我本人预约的是Africa/Maputo 1:00PM,能够正常参加考试。

预约完成后,根据邮件指示,做好准备工作。

考试介绍

题型

CKA 考试由15-20个动手操作题组成,多数为17题,权重加起来共 100分,超过 66 分就算过(有一次重考机会),可以根据权重和知识点熟悉程度灵活选择做题顺序。做题时长2小时,开卷考试,仅可访问k8s 官方文档,考试环境PSI Secure Browser(ubuntu远程桌面,有terminal, firefox, mousepad),存在多个cluster,需要根据题目手动切换。

考纲

这一部分以官网展示的为准,可以在报名界面中查看。
截至2024.03.28,考纲如下:
在这里插入图片描述

考试攻略

备考

课程推荐

udemy课程(需梯子+付费):Certified Kubernetes Administrator (CKA) with Practice Tests
我就学了这个课程,视频讲解生动,内容详实,附带KodeKloud模拟环境配套训练。在B站上也找到了很不错的教程,找到适合自己的就行,主要是多动手操作。

模拟考试

报名CKA,免费赠送两次 killer.sh模拟考试机会,每次激活之日起36h内,可以随时重复进入cluster做题。
模拟考试共有25题,题型丰富,每道题的任务数量偏多,难度比真实考试大。做题环境与PSI大同小异,可以感受下不同时刻的网络质量,选择合适的时间段约考。

学习资料

  1. 2023年CKA考试真题及注意事项:
    确实是真题,极为推荐刷一遍,我参加的考题与该博客极其相似。
  2. CKA-StudyGuide:维护者会根据CKA 考纲调整lab的内容,用于扫盲和押题不错。
  3. CKA考试经验总结:博主写的很有参考价值,还有强记下来的真题
  4. CKA Certification SURE SHOT Questions | TOP 10 EXAM Questions Part1 + Part2:
    观看需梯子,知识扫盲

考试平台

开考前30min可以进场,点击开始后要求安装PSI Secure Browser,然后进入系统检查,要求关闭所有无关的服务,且保证录音、监视保持打开,否则无法进入下一步;通过后,核验身份信息和扫描周围环境,期间通过chat box和监考官交流;全部完成后,等待监考官发放试卷。
Tips:笔记本可以外接显示器,但要求仅在外接显示器显示并共享桌面。建议选择24+尺寸显示器,以保证显示效果

PSI考试界面如下:
PSI考试界面

考试建议

考前熟悉:

做题策略

  1. 两小时要做17道动手操作题,时间不是特别宽裕,考试66分即可通过,因此可以适当略过分值不大但操作步骤复杂的题目,对自己拿不准的题目也可以先做一个flag标记,回头有多余的时间再攻略。

  2. 考试会给若干的集群,注意题目要求的上下文切换到目标集群(题干中会给出命令)

  3. 每道题有多个得分点,有些题目不必用k8s official的方法,肉眼瞄一下也能做出来,比如统计满足条件的node数量。

  4. 有两个出现频率高,且分值大的题型,需要额外注意:
    a) ETCD backup和restore类型的题,需要留心下 这个cluster是否为这道题专用,若和其他题共用,则在restore的时候小心,万一失败了,可能影响其他题,所以可先只做backup,restore酌情考虑是否做。
    b) kubeadm 升级cluster题,升级过程往往需要花几分钟,期间终端会阻塞住,可以先浏览下面几题或者另外开终端做下一题,节约时间。

  5. 减少手敲命令,避免出错,多熟悉k8s官方文档,多copy yaml和使用kubectl explain;多使用 imperative 命令,配合使用–dry-client=run -o yaml 快速生成yaml,再按要求修改

  6. 快捷方式设置,减少重复打字,如 alias k=kubectl; do=“–dry-client=run -o yaml”

考题回忆

根据记忆回忆考题,不精确,但题意没有太大偏差

1. 创建一个名字为allow-port-from-namespace的NetworkPolicy,这个NetworkPolicy允许A命名空间下的Pod访问命名空间B下的9000端口

  • 并且不允许不是A命令空间的下的Pod访问
  • 不允许访问没有监听9000端口的Pod

【参考:https://kubernetes.io/zh/docs/concepts/services-networking/network-policies/】

2. 列出Service名为test下的pod 并找出使用CPU使用率最高的一个,将pod名称写入文件中

【参考:https://kubernetes.io/docs/tasks/debug/debug-cluster/resource-usage-monitoring/】

3. 创建一个名为deployment-clusterrole的clusterrole,该clusterrole只允许创建Deployment、Daemonset、Statefulset的create操作;在名字为app-team1的namespace下创建一个名为cicd-token的serviceAccount,并且将上一步创建clusterrole的权限绑定到该serviceAccount,要求仅在app-team1起作用

【参考:https://kubernetes.io/docs/reference/access-authn-authz/rbac/】

4. k8s cluster 升级,要求只升级master节点,且不升级etcd

【参考:https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/】

5. 针对etcd实例https://127.0.0.1:2379创建一个快照,保存到 /srv/data/etcd-snapshot.db。在创建快照的过程中,如果卡住了,就键入ctrl+c终止,然后重试。然后恢复一个已经存在的快照:/var/lib/backup/etcd-snapshot-previous.db
执行etcdctl命令的证书存放在:

  • ca证书:/opt/KUIN00601/ca.crt
  • 客户端证书:/opt/KUIN00601/etcd-client.crt
  • 客户端密钥:/opt/KUIN00601/etcd-client.key

【参考:https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/】

6. 统计状态为ready,且没有NoSchedule taint的node数量

【参考:kubectl get/describe nodes | grep xx 或者jsonpath https://kubernetes.io/pt-br/docs/reference/kubectl/cheatsheet/】

7.创建一个Pod,名字为multi-pod,这个Pod可能包含1-4容器,该题为四个:nginx+redis+memcached+consult
【参考:https://kubernetes.io/docs/concepts/workloads/pods/】

8.创建一个pv,名字为app-config,大小为2Gi,访问权限为ReadWriteMany。Volume的类型为hostPath,路径为/srv/app-config
【参考:https://kubernetes.io/docs/concepts/storage/persistent-volumes/】

9.创建一个名字为pv-volume的pvc,指定storageClass为csi-hostpath-sc,大小为10Mi。然后创建一个Pod,名字为web-server,镜像为nginx,并且挂载该PVC至/usr/share/nginx/html,挂载的权限为ReadWriteOnce。之后通过 kubectl edit或者 kubectl path将pvc改成70Mi,并且记录修改
【参考:https://kubernetes.io/docs/concepts/storage/storage-classes/】

10.在ing-internal 命名空间下创建一个ingress,名字为pong,代理的service hi,端口为5678,配置路径/hi
【参考:https://kubernetes.io/docs/concepts/services-networking/ingress/】

11.创建一个pod,image为nginx,暴露名为http的80端口,并创建一个service引用名为http的端口
【参考:https://kubernetes.io/docs/concepts/services-networking/service/】

12.有一个worker node不是ready状态,kebelet 服务有问题,请排查并修复
【kebelet配置了docker作为runtime,node上并未装docker,需更改为containerd, https://kubernetes.io/docs/reference/command-line-tools-reference/kubelet/】

13.扩容名字为dp-test的deployment的副本数为6,并记录变化
【参考:https://kubernetes.io/docs/concepts/workloads/controllers/deployment/】

14.添加一个名为busybox且镜像为busybox的sidecar到一个已经存在的名为legacy-app的Pod上,这个sidecar的启动命令为 /bin/sh, -c, ‘tail -n+1 -f /var/log/legacy-app.log’。并且这个sidecar和原有的镜像挂载一个名为logs的volume,挂载的目录为/var/log/
【参考:https://kubernetes.io/docs/concepts/storage/volumes/】

15.创建Secret 名为mysecret,内含有password字段,值为bob,然后 在pod1里 使用ENV进行调用,Pod2里使用Volume挂载在/data 下
【参考:https://kubernetes.io/docs/concepts/configuration/secret/】

16.列出指定pod的日志中状态为Error的行,并记录在指定的文件上
【参考:https://kubernetes.io/docs/reference/kubectl/generated/kubectl_logs/】

17.创建一个configmap,key1=val1,key2=val2, 创建一个pod,将configmap中的key1值作为环境变量
【参考:https://kubernetes.io/docs/concepts/configuration/configmap/】

参考文档

证书展示

在这里插入图片描述
在这里插入图片描述

  • 26
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: K8s是一款现代化的容器编排平台,可以帮助企业快速部署和管理他们的容器化应用。而为了证明自己的能力,许多技术人员都希望通过CKA认证课程来获取认证,成为一名合格的K8s管理员。 CKA认证课程是一套针对K8s管理员的全面培训课程,涵盖了K8s集群、网络、存储、安全等各方面的知识。在课程中,学员将学到如何在K8s平台上进行应用管理、集群调整、网络配置等技能。此外,还会介绍如何使用Kubectl、Helm等工具进行操作管理,以及如何在K8s集群中部署安全性策略和控制访问等内容。 对于想要参加CKA认证课程的学员来说,可以通过官网、一些培训机构或相关社区等途径来下载该课程。此外,也可以在一些知名的在线教育平台上找到该课程,并根据自己的需要来进行选择购买。 总之,CKA认证课程是一套非常实用的培训课程,它可以帮助K8s管理员快速掌握相关技能,提高自己的水平,并为未来的职业发展打下坚实的基础。 ### 回答2: K8S CKA认证课程是为了帮助对Kubernetes有兴趣且希望通过CKA认证的人提供的一套学习材料。该课程包含了Kubernetes集群的搭建、管理和优化等方面的内容,以帮助学员更好地掌握Kubernetes的技术和应用。 想要下载K8S CKA认证课程,你可以通过以下几种途径获取: 1. 官方网站:Kubernetes官方网站提供了完整的CKA认证课程材料。你可以在官方网站上注册并登录,选择合适的CKA认证课程,并下载相应的学习材料。 2. 在线教育平台:许多在线教育平台都提供了K8S CKA认证课程的下载服务,如Coursera、Udemy等。你可以在这些平台上搜索并购买相关课程,然后下载学习材料。 3. 社区资源:Kubernetes社区提供了许多免费的学习资源,包括CKA认证课程的学习材料。你可以通过社区论坛、博客、GitHub等途径获取相应的资源,并进行下载。 无论你通过哪种方式获取K8S CKA认证课程,都建议你在下载前仔细了解课程的内容和难度,确保符合自己的学习需求和水平。并且,在学习过程中,建议你按照课程的指导进行系统学习,积极参与练习和实践,以加深对Kubernetes的理解和应用能力。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值