The KCNA Exam — A quick guide to kicking off your K8S and Cloud Native Journey

The KCNA Exam — A quick guide to kicking off your K8S and Cloud Native Journey

Just a few months ago, the Kubernetes and Cloud Native Associate Exam (KCNA) was launched. After some thought, I figured I’d give it a shot. I took the exam and passed!

This exam was released after the CKA, CKAD, and CKS (all hands-on exams) but is meant to provide an entry into K8S and Cloud Native. As a result, this exam is MUCH easier in comparison to the others, while setting the stage to take those exams in the future.

What is the KCNA?

In a nutshell, the KCNA is a multiple choice exam, consisting of 60 questions, and has a time-limit of 90-minutes. It is remotely proctored and is done from the comfort of your own home! The exam focuses on the fundamentals and building blocks of Kubernetes and associated Cloud Native technologies. More specifically, you run Kubernetes in an environment and you need associated tooling to be able to run, manage, observe, monitor, scale, secure, connect, and protect containerized (and non-containerized) applications.

Here is the specific definition according to the Cloud Native Computing Foundation:

The KCNA is a pre-professional certification designed for candidates interested in advancing to the professional level through a demonstrated understanding of kubernetes foundational knowledge and skills. This certification is ideal for students learning about or candidates interested in working with cloud native technologies.

A certified KCNA will confirm conceptual knowledge of the entire cloud native ecosystem, particularly focusing on Kubernetes. The KCNA exam is intended to prepare candidates to work with cloud native technologies and pursue further CNCF credentials, including CKA, CKAD, and CKS.

KCNA will demonstrate a candidate’s basic knowledge of Kubernetes and cloud-native technologies, including how to deploy an application using basic kubectl commands, the architecture of Kubernetes (containers, pods, nodes, clusters), understanding the cloud-native landscape and projects (storage, networking, GitOps, service mesh), and understanding the principles of cloud-native security.

The Exam Blueprint

There are 5 key domains in the blueprint (You can find the expanded blueprint here). Let’s get into some details about it to help direct your studies:

  • Kubernetes Fundamentals, 46% — The exam has an expectation that you’ve dabbled into Kubernetes and have a good understanding of all the moving parts. This means, it’s extremely important to review the Kubernetes architecture and components that work together to enable such a powerful container orchestration system. CoreDNS, Kube-API, Kube-Scheduler, and Kube-controller are critical to the control plane, while Kube-proxy, Kubelet, and a CRI are critical to the worker-node. There is also the expectation that you have played on a non-production K8S cluster.
    At this point, you might be wondering how you can accomplish this. Most home-consumer PCs can run Kubernetes locally using Minikube or KinD. I strongly recommend playing with either and familiarizing yourself with the kubectl command line.
    Within a Kubernetes cluster, there are a number of resources like Pods, Deployments, DaemonSets, StatefulSets and Services to allow an application to run and be accessible. For example, ZooKeeper is a Headless Service that uses StatefulSets to operate.
    You may want to dig into what constructs a Pod YAML, and also dig into why a Pod is immutable. Consider looking into the various Deployment strategies that exist, like RollingUpdates. Services act as a way to enable inbound or east-west communications within a cluster. There are a few main types, NodePort, ClusterIP, LoadBalancer, and ExternalName. It’s definitely worth digging into what each of these do and a few use-cases associated.
    This is where the hands-on component really comes in handy because you can expect the exam to test you on your knowledge of working with these things. Note, this is a not a production-focused exam.
    With such a huge weight on the exam, consider going through a quick-start K8S course (I’ll link some below).
    Remember, Kubernetes can be extended with Custom Resource DefinitionsWhile security isn’t the main focus of this exam, know the 4Cs: Code, Container, Cluster, Cloud.
  • Container Orchestration, 22% — This section is a bit more generic compared to the previous section because K8S is not the only container orchestration platform out there. That being said, this section focusses more on the pieces that work together to make container orchestration possible. Application platforms will have a container runtime, networking, security, storage, and extended proxies and observability to enhance the experience of managing, maintaining, and scaling applications. Think about things like a Container Networking Interface (CNI), Container Storage Interface (CSI), or Container Runtime Interface (CRI). Look into Istio and LinkerD, Service Mesh technologies, which provide a side-car proxy to the application container, and services connection requests on it’s behalf.
    Spend time looking into CRIs like Containerd and CRI-O.
    Authentication and Authorization are other areas that is worth reviewing as OpenID-Connect and Open Policy Agent (OPA) are being used more frequently.
  • Cloud Native Architecture, 16% — This part of the exam focusses on addressing how technologies like Autoscaling and Serverless aim to provide a mechanism to control costs, and provide a much more flexible approach to managing and deploying applications. Furthermore, it’s worth digging into how the the CNCF is built, from the community to work-groups to SIGs. It’s worth a mention that a variety of job roles will use cloud-native technologies and have decisions to make. For example, Site Reliability Engineers are often tasked with establishing SLIs/SLOs/SLAs.
    Finally, there are a number of open standards that exist in the CNCF. The Open-Container Initiative (OCI)is one of them.
  • Cloud Native Observability, 8% — While this section isn’t massive, there are a number of observability and logging tools that are used to help pin-point issues in applications in a K8S cluster. Most environments leveraging K8S might make use of tools like Prometheus and Grafana for metrics, data visualization and heat-map graphs. Other tools like Jaegar and Zipkin might be used for Tracing and reviewing Spans within that trace.
    Furthermore, managing costs in Kubernetes and Cloud Native become an important business problem to solve. This can be around efficient utilization of compute resources (Scale up and scale back down to zero), and using CronJobs to establish a schedule for when workloads need to run.
  • Cloud Native Application Delivery, 8% — This small section focusses on principles of application delivery. More specifically, it focusses on topics like GitOps, blue-greens, canary deployments, and some of the tools you may use in a cloud native environment. Spend time reviewing tools like ArgoCD and FluxCD to understand how they help with Continous Integration and Continuous Delivery (CICD) in Kubernetes

Handy Study Resources

The list of KCNA resources will grow over time but for now, here are some that’ll get you started.

  • The Cloud Native Computing Foundation Landscape — Every CNCF project and technology!
  • Civo.com/academy — Approximately 6 hours of video training to get you completely familiar with the foundational aspects of Kubernetes. There is even a $250 credit to use Civo for your studies if you sign up!
  • Kube.academy — Another amazing set of courses which cover Containers, Kubernetes, CKA, CKAD and a variety of other cloud native technologies.
  • Books — There are SOOO many books on Kubernetes and Cloud Native. I compiled a list in this tweet, (and threadreaderapp version for easier reading)
  • KataKoda Kubernetes playground — If you don’t want to install K8S locally and just want a quick-start environment
  • Kubernetes Docs— Literally ALL the Kubernetes information straight from the source!
  • Kubernetes Tutorials — Once you have a playground or minikube/KinD up and running, run through these tutorials.
  • Kubectl cheat sheet — While the KCNA exam isn’t a hands-on exam, it’s worth reviewing this cheat sheet to familiarize yourself with common commands you would run with kubectl and why.
  • YouTube — Saiyam Pathak made an awesome 10-minute video on the KCNA exam. Check it out!

Tips for the exam

  • To book the exam, head over here and click Enroll Today
  • Review the Linux Foundation Candidate Handbook
  • Review the important instructions for the KCNA exam here
  • Official KCNA FAQ
  • The exam is remotely proctored, ensure you run through the system compatibility checks well before your exam time slot.
  • Sign into your exam at least 15-minutes before your start time; it will take some time for the proctor to review your ID, and your work-surface/room.
  • The exam is 60 questions, all multiple-choice (no multiple-selections), and you have 90-minutes to complete. It took me approximately 30-minutes to run through them all, skipping a few and marking a bunch for review and another 25–30-minutes to make changes. BUT PLEASE USE EVERY MINUTE.
  • The passing score is 75%, which means you need to get 45 questions correct in order to pass.
  • Read every question carefully; there is a strong possibility that one question might answer another. Check for any “negation” or lack-of.
  • Process of elimination is important; you may find non-sensical answers, cross them out!
  • Review all your questions again (if you have time)
  • Results show up approximately 24-hours after you begin the exam. I started at 10:30AM, received my results the next day at 10:25AM. Which means, you won’t get immediate results.
  • YOU GET TWO ATTEMPTS!!! =D. If you don’t succeed on first attempt, you get one more!

Final words

The KCNA is a great exam to test your knowledge of foundational aspects of Kubernetes along with the larger Cloud Native eco-system. On a scale of 1–10, 1 being easy, 10 being extremely difficult, I’d say this exam was a 6/10. I’d recommend having at least a year’s worth of experience in and around K8S and Cloud Native.

Thank you so much for reading, Happy Holidays, Happy New Year, and Good Luck on your KCNA Exam!