Kubernetes

CKA 합격 후기 - 2025년 유형 변경 이후

sooondubu 2025. 10. 23. 11:57

 

 

2025년 10월 21일에 CKA 시험을 응시하였고 합격하였습니다. 인턴과 병행하여 약 3달 정도 공부하였습니다. 

19시 30분에 시험을 봤고 다음날 19시 51분에 합격 메일이 왔습니다.

 

총 16문제가 출제되었으며 Troubleshooting 제외하고 모든 문제를 해결하였습니다. 

 

유형 변경 이후 많이 어려워젔다는 이야기를 많이 접했는데, 덤프 기반 시험인 것은 동일했습니다.


2025년 2월부터 CKA의 출제 유형이 변경되었습니다.

  • 기존에 출시되었던 ETCD Backup & Restore, 클러스터 업그레이드 등과 관련된 내용들은 출시되지 않았습니다.
  • 트러블슈팅의 난이도가 올랐습니다.
  • Gateway Api, StorageClass 에 대한 이해가 필요합니다.
  • helm, kustomize 에 대한 이해가 필요합니다. (251021 시험 기준으로는 helm 만 나옴)

시험을 위해 공부한 자료들

따배쿠와 Udemy를 통해 쿠버네티스를 학습하였습니다. Udemy는 실습 환경이 주어집니다.

Udemy의 Mock Exam을 3번 이상 풀었습니다.

 

위 두 재생목록은 시험 문제와 매우 유사합니다. 3번 이상 반복하여 풀었습니다.

 

  • Killer.sh

실제 시험보다 어렵습니다. 시험 보다 더 넓고 깊은 지식을 요구합니다. 따라서 저는 거의 풀지 않았습니다. 하지만, 시험 환경과 매우 유사하기 때문에 시험 환경에 적응하는 데에 큰 도움이 됩니다.

 

  • killercoda

쿠버네티스를 웹에서 실습할 수 있는 환경을 제공합니다. 트러블슈팅 관련 문제를 풀고 가면 좋을 것 같습니다.


시험 환경

  • https://docs.linuxfoundation.org/tc-docs/certification/tips-cka-and-ckad
  • 터미널에서 복붙은 ctrl+shift+c ctrl+shift+v , 터미널 밖에서의 복붙은 ctrl+c ctrl+v 입니다.
  • Pod 이름, Namespace 이름 등 변수들은 클릭을 통해 복사가 가능합니다. 이를 활용해 오타를 방지합니다.
  • 각 문제마다 ssh로 환경을 변경합니다. 문제 상단에 ssh 000054 가 주어집니다.

TIP

리소스를 명령형으로 생성하는 연습이 필요합니다.
  • -h 옵션을 활용하면 좋습니다. 실행에 필요한 인수들을 확인 할 수 있고, 명령 예시도 주어집니다.
  • 이를 yaml 로 출력하여 전체 yaml의 구조를 빠르게 파악할 수 있습니다.
$ k create ingress -h

Create an ingress with the specified name.

Examples:
  kubectl create ingress catch-all --class=otheringress --rule="/path=svc:port"
  
----------------------

$ kubectl create ingress catch-all --class=otheringress --rule="/path=svc:port" --dry-run=client -o yaml
$ k autoscale -h

Creates an autoscaler that automatically chooses and sets the number of pods that run in a Kubernetes cluster.

Examples:
  kubectl autoscale deployment foo --min=2 --max=10
  
----------------------

$ kubectl autoscale deployment foo --min=2 --max=10 --dry-run=client -o yaml

 

 

공식 문서를 활용해야 합니다
  • PV, PVC, StorageClass, Gateway, HTTPRoute 등 고급 리소스는 명령형으로 생성이 불가합니다.
  • 따라서 위 리소스들은 검색 키워드, yaml 위치 등을 숙지하여 공식 문서에서 빠르게 찾을 수 있어야 합니다.

 

k explain 명령어를 활용해야 합니다.
  • 리소스의 특정 필드에 필요한 값을 빠르게 확인할 수 있습니다.
  • 특정 필드의 explain의 결과를 파일로 저장하는 문제가 출시됩니다.
$ kubectl explain certificate.spec.subject

 

  • Gateway 에 TLS 인증서를 설정해야 하는 문제가 출시됩니다. 필드를 빠르게 확인할 수 있습니다.
$ k explain gateway.spec.listeners.tls --recursive
GROUP:      gateway.networking.k8s.io
KIND:       Gateway
VERSION:    v1

FIELD: tls <Object>

FIELDS:
  certificateRefs       <[]Object>
    group       <string>
    kind        <string>
    name        <string> -required-
    namespace   <string>
  mode  <string>
  enum: Terminate, Passthrough
  options       <map[string]string>