k8s CKA 합격 후기 (2021년 9월)

CKA(Certified Kubernetes Administrator)에 응시하였고, 합격 하였다 : )  👏👏

시험을 준비하고 계신 분들께 도움이 될거라 기대하며 시험 후기를 적어본다.

특히나 CKA의 경우 k8s 버전업이 계속 이루어지고 있으며, 유익한 시험 후기들이 응시자들에게 많은 도움이 된다고 생각하고 저 또한  많은 도움을 받았기에! 나도 내 경험을 나누어 본다.

CKA 합격! 이름은 가려보았다 ㅎ

기본 배경

저는 실질적으로 Kubernetes Administrator는 아니며, 업무 상 k8s 유저로서 1년 남짓 사용한 경험이 있었습니다.

그래서 kubectl 커멘드에는 꽤나 익숙해진 편이기는 하나, 클러스터 단위로 큰 작업을 한다거나 기존 네트워크 설정을 변경한다거나 하는 작업에는 익숙치 않은 상태 였습니다. 평소에 자주 하는 작업이 아니기 때문

학습

기본적으로는

으로 초기 개념을 다졌으며

Udemy에 있는 cka 최고의 인기 강의인 갓사드(뭄사드)의 강의를 들었습니다.

강의는 사실 전체를 100% 듣지는 못한 상태이나 (나머지도 천천히 들어보겠습니다...) 시험에 임박해서는 실습 과정을 무한반복 하는 형태로 학습하였습니다.

문제 복기

  • 17문제
  • 120분

시간이 부족하다는 이야기가 많아서 긴장했는데, 생각보다 시간이 부족하진 않았습니다.
하지만 여유를 부릴 정도로 넉넉한 시간은 아니기 때문에, 시간 관리에 전략이 필요하다고 생각합니다.

기억을 되살려보자

만났던 문제들의 기억을 되살려서 나열해보았다.
물론 시험 순서대로는 아니며, 일부는 각각 두개 문항이었던 것을 제가 하나로 기억할지도 모르겠다. 인간인지라 기억이 완전하지 않을 수도 있으니 참고로만...

  • Troubleshooting - Not Ready인 node 고치기
    • 특정 node가 Not Ready 상태로 주어지는데 이를 고치는 문제였습니다.
    • 저는 kubelet 서비스가 내려가 있는 문제였어서, 이를 기동시켜주고 node가 Ready 상태가 된 것을 확인하였습니다.
  • two containers pod 만들기
    • 각기 다른 이미지의 컨테이너를 가진 two containers pod 만들기
  • master node만 upgrade 하기
    • master node만 업그레이드를 해야하며, worder node는 절대 업그레이드 하지 말라는 문제였다.
  • clusterrole, clusterrolebinding 하기
  • pv 만들기 (hostPath)
  • pvc 만들고 pod 연결하기. 그리고 pvc resize 하기
  • ETCD 백업/복구
  • Troubleshooting - deploy scale-out 하고, sacle-out이 안되는 원인 찾아 고치기
  • Pod를 특정 Node에 Schedule 하기
  • CPU 사용률 높은 pod 이름 알아내기
    • kubectl top 커멘드로 cpu 사용률이 높은 것을 뽑아서 답으로 기록했다.
  • 노드 갯수 카운트 하기
    • 정확히는 기억이 안나는데, 어떤 조건의(아마 현재 Ready인?) 노드 수를 카운트해서 답으로 기록하는 문제였다.
  • Ingress 만들기
  • NetworkPolicy 만들기
  • sidecar (Logging)
    • 기존에 파드가 이미 존재하고, sidecar 형태로 pod를 띄워 로깅 아키텍처를 구성하라는 문제였다.
  • Pod Expose 시키기
  • Resource Limit(CPU, Memory) 걸어서 Pod 만들기

시험 후기

사전 준비

  • 여권 준비하여 보여주니 무난히 통과하였습니다.
  • 시험 도중 물을 마시며 시험에 응시할 수는 있으나, 투명한 보틀+투명한 생수여야 합니다.
    • 보리차 들고 들어갔다가 치우라고 함 ㅠㅠ (물이예요 믿어주세요...)
  • 본인이 앉아있는 곳 기준으로 사방을 모두 보여주어야 하고, 특히 책상이 깨끗한지를 확인합니다.
    • 저는 일부러 맥북 하나로 시험 봤습니다.
    • 일부 다른 시험과 달리 외부 모니터/외부 키보드 등을 사용하는 것도 가능합니다.
      • 다른 시험은 외부 모니터 자체를 허용 안하기도 합니다.
    • 저는 그냥 태클걸리는거 귀찮아서 온라인 시험은 다 치우고 노트북 하나도 시험보는 편 입니다.

시험 환경 관련

  • 시험 환경 자체에서 제공하는 메모장은 의외로 유용했음
    • YAML 편집 등
  • 시험 화면 외에 k8s docs 등 화면 하나를 더 띄울 수 있게 해주는데, 탭으로 띄워도 되고 별도 창으로 띄워도 무방
  • 감독관이 화면 전환 자체에 그렇게 예민하진 않은 느낌이었음
  • 시험 환경은 꽤 빠른 편이었음
    • 가끔 창을 왔다갔다 하다보면 쉘이 멈칫 하는 경우는 있었으나 아주 문제가 될 정도는 아니었다.
  • 시험 가이드 해주시는 분은 채팅으로만 대화를 하신다
    • 타 시험은 아예 오디오 열고 이야기 하시는 분들도 있었는데, 이곳은 채팅으로만 하는듯 하다.
  • 간혹 중간에 가이드성으로 하실 말씀이 있어서 말씀을 하시면 꺼진 채팅창도 다시 켜진다
    • ex. 15분 남았어요 / 10분 남았어요 등
  • 보통 명시적으로 '잔여시간: 1시간 10분' 이런식으로 기재된게 있으리라 생각했는데, 특별한 시간 없이 "Time remaining" 이라는 것만 덩그러니 써져있어서 처음에 시간 얼마나 남았냐고 물었더니 대답해주었다.
    • 알고보니 시간이 흐르면 점점 줄어드는 타임바 같은 것이었다 -_-;;
    • PC 시계를 확인하는 것도 크게 개의치 않아하는듯 해서 중간중간 PC 시계를 체크 했다.

시험 문제 출제 관련

  • 관련 북마크를 미리 해두면 좋다
    • k8s cheat sheet는 시험 시작과 함께 켜준다
    • 나는 시험을 보는 도중에도 북마크 추가를 했는데, 이것도 크게 개의치 않아하시는듯 했음
  • 의외로 내가 응시한 시험에선 JSONPATH 문제가 안나왔다 - 이런류의 문제가 시간 많이 뺏을거라 생각 했는데...
  • context 관련한 부분은 매 시험 문항에서 제시를 해주니, 해당 문항 시작 시 항상 context 설정하는 구문을 그대로 실행해주면 부담이 없다. (습관적으로 해주는게 좋다. 이를 놓치고 다른 context에 문제를 풀어버리면 본의아니게 오답을 제출할 수도 있으니...)
  • 각 문항별 난이도가 다르기 마련인데, 나는 난이도가 높은 문항은 애초에 Flag 표시 하고 다 넘어가고 쉬운(weight 4) 것부터 먼저 했다. 그랬더니 어려운 문제(최대 weight 13 까지 봤다)에 시간을 많이 배정하고 편하게 풀 수 있어서 좋았다.
  • 일부러 그런건지 몰라도 난이도 높은 문제가 초반 번호에 몰려있었다. 당황하게 하려고 의도한건가...
    • 쿨하게 어려워보이는 문제 패스하고 쉬운거부터 풀었다.
  • 킹갓제너럴 뭄사드

시험 준비 방법

  • 전반적인 이론 공부는 필수
  • 그 이후 udemy 뭄사드 수강
  • 시험 임박 시 Mock Test, Lightening Lab 무한 반복 - 틀리는 문제 없는 정도 수준으로 올려두기
  • 시험 등록하면 제공되는 Kubernetes Exam Simulator 2회분이 있는데 당연히 풀어봐도 좋을 듯
    • 이게 있다는건 용케 알았지만 다 풀어보진 못하고 시험 봄
    • 시험 환경과 유사한 환경 미리 확인해보는 관점에서 좋음
    • 꼼꼼히 보진 못했지만 가독성의 차이인지, 왠지 Exam Simulator는 잘 눈에 안들어왔음
    • 실제 시험 화면이 더 보기 편하고, 난이도도 쉬웠다고 생각
    • 실제로 해당 샘플 시험의 난이도가 실제 시험 난이도보다 높다는 후기들이 보이는 만큼, 이에 너무 겁먹지 말 것
  • 시험 할인코드는 거의 상시 존재하는듯 하니, 이용하자 (최소 25% 할인 쿠폰은 많은것 같고, 간혹 k8s 행사에선 50% 할인쿠폰도 받을 기회가 있다.)
  • cka 바우처를 구입하면 1년 내로 시험을 응시할 수 있고, 한번 탈락하더라도 무료 retake 1회 기회를 한번 더 제공한다.

뿌-듯

요약

  • CKA 시험은 k8s 직접 커멘드 날려가며 연습하는 것이 중요 (손에 익어야 한다)
  • 완전히 다 알진 못하더라도, 모르면 kubernetes docs에서 빠르게 찾아서 할 수 있는 정도면 시험 응시 가능. 사실 제일 중요한 포인트라고 생각합니다. 오픈북 시험이라는 점을 잘 활용하셔야 합니다.

날짜 내용
2021.09.21 최초 글 작성