CNCF 全家桶里唯一一张选择题 cert — 给"还没碰过 k8s 但想入门"的人当踏脚石,已经会写 Deployment YAML 的人请直接去考 CKA。
先把考试形式、适合人群、备考时长和学习范围讲清楚,再决定要不要投入时间。
Kubernetes and Cloud Native Associate(KCNA)是 CNCF 在 2021 年 11 月推出的入门级认证,定位非常清晰:为那些想进云原生圈子但还没准备好直接面对 CKA/CKAD/CKS 三小时实操的人,提供一个低门槛的"概念入门证"。这是 CNCF 全部 6 张认证里唯一一张多选题考试(其他全是 hands-on),所以也是 CNCF 圈子里最容易过的一张。
考试 60 题、90 分钟、$250 USD(含一次免费补考),75% 通过线(即至少答对 45 题)。考纲分 5 大块:Kubernetes Fundamentals 46%、Container Orchestration 22%、Cloud Native Architecture 16%、Cloud Native Observability 8%、Cloud Native Application Delivery 8%。注意 K8s 基础占了将近一半 — 不要被"Cloud Native Associate"这个名字误导以为考的是 CNCF landscape 全家桶。
KCNA 真正考的东西包括:Pod 和 Container 区别、Deployment / StatefulSet / DaemonSet 用途差异、Service 类型(ClusterIP / NodePort / LoadBalancer)、Ingress vs Service、ConfigMap / Secret 用法、kubectl 基本命令、容器运行时(containerd / CRI-O)、CNI / CSI / CRI 三大接口是什么、Prometheus 和 Grafana 在 observability 里的角色、SLO / SLI / SLA 定义、GitOps(ArgoCD / Flux)vs 传统 CI/CD 的差别、Helm 和 Kustomize 在 packaging 上的区别。基本不考 YAML 写法、不考 troubleshooting、不考 RBAC 细节 — 这些都是 CKA 的地盘。
证书有效期 2 年(注意比 CKA 的 3 年短一年),到期需要重考。Linux Foundation 官方数据显示 KCNA 推出至今全球持证人数约 1.5-2 万,体量比 CKA 还小,因为很多有经验的工程师会跳过它直接考 CKA。
KCNA 持证人的薪资区间、对应岗位、以及真实的职业影响。
KCNA 的真实定位
KCNA 不是一张能直接帮你拿到 offer 的证 — 招聘 JD 里几乎不会出现 "KCNA preferred",但 "CKA preferred" 经常出现。它的真实价值是给学习路径打卡:当你在简历上写 "学习 Kubernetes 6 个月" 缺乏证据时,KCNA 是一个 $250 + 90 分钟就能拿到的客观证明,告诉招聘方"我至少把核心概念过了一遍"。
两类人考 KCNA 是赚的
两类人考 KCNA 是浪费
和 AWS / Azure 路线的对比
如果你的目标是云原生 + DevOps,路线是:KCNA → CKA → CKS(安全方向)或 CKAD(开发方向)。如果你的目标是云架构师 / 解决方案,路线是:AWS CLF-C02 → AWS SAA-C03 → AWS SAP-C02。两条路线都通往 DevOps,但 KCNA 路线更聚焦容器和编排,AWS 路线更全面但 K8s 部分浅。两边都不冲突,预算够的话先 AWS SAA + KCNA 组合性价比最高。
这里不是装饰信息,它决定你应该先把时间砸在哪些知识域上。
Kubernetes Fundamentals
Container Orchestration
Cloud Native Architecture
Cloud Native Observability
Cloud Native Application Delivery
过来人总结的分阶段备考节奏,按周拆分,不是空话。
先把 K8s 的"零件清单"理清:Pod / ReplicaSet / Deployment / StatefulSet / DaemonSet / Job / CronJob 各自解决什么问题。建议读 kubernetes.io/docs/concepts 整个 Concepts 章节一遍(不用记 YAML 字段,理解用途即可)。配套看 KodeKloud 免费的 KCNA 课程或 TechWorld with Nana 的 YouTube 4 小时入门视频。这一阶段的目标是回答:为什么不能直接跑 Container 而要包一层 Pod?Deployment 和 StatefulSet 的本质区别是什么?
用 minikube 或 kind 在自己电脑上起一个单节点集群。**不需要 kubeadm 手搭** — KCNA 不考集群运维。重点是体验完整流程:kubectl run / kubectl create deployment / kubectl expose / kubectl get pods / kubectl describe / kubectl logs。然后用 ConfigMap 和 Secret 给 Pod 注入配置,看一下 Service 类型 ClusterIP/NodePort 实际怎么访问。一周下来对 kubectl 有手感即可。
KCNA 有 16% 的题考的是 Cloud Native Architecture 和生态项目,必须扫一遍 CNCF Landscape(landscape.cncf.io)。重点搞清楚这几组对比:containerd vs CRI-O vs Docker(容器运行时)、Helm vs Kustomize(包管理)、Prometheus vs Grafana(监控 vs 可视化)、ArgoCD vs Flux(GitOps)、Istio vs Linkerd(Service Mesh)、OpenTelemetry / Jaeger / Zipkin(tracing)。每个项目知道"是什么、解决什么问题"就够了,不需要会用。
这块只占 8%,但概念题密集。必须背清楚:SLI(Service Level Indicator,可测量的指标如延迟)、SLO(Objective,目标如 99.9% 请求 < 200ms)、SLA(Agreement,跟客户的合同)。Observability 三大支柱:Metrics(Prometheus)、Logs(Loki / ELK)、Traces(Jaeger / Zipkin)。Pull vs Push 模型差异(Prometheus 是 pull,传统 monitoring 是 push)。
KCNA 没有官方 killer.sh 模拟器,但 KodeKloud、Whizlabs、ExamPro 都有付费模拟题($15-30)。做 2-3 套,每错一题都回头查 CNCF 官方 KCNA Curriculum PDF 对应的章节。考前一天最后看一遍 5 大领域权重,确认 Kubernetes Fundamentals(46%)这块不能丢分 — 这是大头。
过来人的备考时长、分数、以及踩过的坑。
我考 KCNA 是为了证明给招聘方看我"真的在学 k8s"。最大的收获是搞清楚了 Pod 跟 Container 的区别 — 之前一直以为 Pod = Container 别名。考完后投了 3 个 junior DevOps 岗,2 个 HR 在初筛时主动提到看到 KCNA 觉得"至少不是嘴炮"。一个月后拿到了第一个 offer,薪水 78k AUD。但我的看法是:KCNA 帮你拿面试,CKA 才能帮你过技术面。
我准备 KCNA 完全用免费资源:KodeKloud YouTube + kubernetes.io 官方文档 + ChatGPT 解释概念。最坑的是 SLO/SLI/SLA 那几道题 — 我以为可以靠常识推,结果 3 道全错。建议:考前一定专门复习 observability 模块,3-5 个核心定义必须能脱口而出。考试本身不难,60 题我 50 分钟就做完了,剩下 40 分钟检查标记题。
说实话我不应该考 KCNA,我应该直接考 CKA — 但公司报销 CNCF 认证我就顺手刷了一张。1 周准备主要是熟悉考试形式,没刷任何题库,60 题 35 分钟做完。如果你已经会写 Deployment YAML、知道 RBAC 怎么配,**不要浪费 $250 考 KCNA**,直接 CKA。我后悔的不是钱,是 1 周的时间应该花在 CKA 备考上。
| KCNA | CKA | CKAD | |
|---|---|---|---|
| 机构 | CNCF | CNCF | CNCF |
| 级别 | 基础级 | 助理级 | 专业级 |
| 考试费 | $250 | $395 | $395 |
| 时长 | 90 min | 120 min | 120 min |
| 题量 | 60 | 17 | 16 |
| 有效期 | 3 年 | 3 年 | 3 年 |
**Kubernetes Fundamentals 占 46% 必须保住** — 这块拿满意味着 28 题,已经离 45 题及格只差 17 题。重点是 Pod / Deployment / Service / ConfigMap / Secret / Volume 这些核心对象的概念题。
**多选题会明确告诉你选几个** — KCNA 大部分是单选,但也有"select TWO"或"select THREE"的多选。看到 select N 这种字样必须严格选 N 个,多选少选都算错。
**90 分钟做 60 题时间充裕** — 平均 1.5 分钟一题。不要慌,遇到不确定的标记跳过,先把会的全做完再回头。统计上大部分人 60 分钟内做完。
**用 PSI 在线监考考试环境提前测试** — 考前 30 分钟会做系统检查(摄像头、麦克风、桌面整洁)。建议提前一天用 PSI 提供的 system check 工具测一遍,避免考试当天才发现摄像头驱动有问题。
**免费补考一次 — 别浪费** — 第一次没过直接预约补考,时间间隔 14 天即可。统计上第二次通过率比第一次高 20%+,因为你已经知道考试侧重哪些点。
**英语原版考试,不要等中文版** — KCNA 目前只有英文版。如果英文阅读速度慢,提前练习 CNCF KCNA 官方 sample questions(GitHub 上有公开的几十道)。
**CNCF Landscape 不需要全背** — 1700+ 项目你不可能都熟。考的是核心几个:Prometheus、Grafana、Helm、Istio、Envoy、ArgoCD、containerd、Falco、OpenTelemetry。其他冷门项目最多出现 1-2 题。
**把 Pod 等同于 Container** — KCNA 反复考这点。Pod 是 K8s 最小调度单位,可以包含 1 个或多个共享网络/存储的 Container。Sidecar 模式(如 Istio 注入 envoy proxy)就是典型的多容器 Pod。考试题经常给你一个场景问"应该如何组织",选错就是基础不牢。
**混淆 Helm vs Kustomize** — Helm 是模板化打包工具(用 Go template + values.yaml),Kustomize 是声明式 patch 工具(用 overlay 修改 base YAML,无模板语言)。它们解决类似问题但哲学完全不同。考题会问"哪个工具不需要模板语言"这种细节。
**CRD 和 Operator 分不清** — CRD(Custom Resource Definition)只是定义新的 K8s API 对象类型,本身不做事。Operator 是 CRD + Controller,负责响应 CRD 变化执行业务逻辑(如 Prometheus Operator 自动管理 Prometheus 实例)。考试会用"哪个引入了自定义资源类型"这种问法。
**Service Mesh 以为是 Service 的升级版** — 不是。Service 是 K8s 内置的负载均衡 + DNS(4 层)。Service Mesh(Istio / Linkerd)是在 Pod 注入 sidecar proxy,提供 mTLS、流量分发、可观测性等 7 层能力。一个集群可以同时用 Service 和 Service Mesh,它们不互斥。
**GitOps 和传统 CI/CD 的核心差异** — 传统 CI/CD 是 push 模式(CI 流水线 push 到集群)。GitOps 是 pull 模式(集群里的 ArgoCD/Flux 持续 pull Git 仓库,自动 reconcile 到目标状态)。考题会问"哪种方式集群是 single source of truth in Git"。
**SLO 和 SLA 颠倒** — SLO 是内部目标(工程团队对自己的承诺),SLA 是合同(公司对客户的承诺,违反要赔钱)。SLI 是用来测量 SLO 的具体指标。三者关系是:SLI 测量 → SLO 制定目标 → SLA 对外承诺。