CKA

[CKA] 자격증 취득 후기 (2023.05.22)

테런 2023. 5. 24. 00:24

 

2023년 5월 22일, CKA 시험 합격!

 

  • 준비 기간
* 약 2달

 

  • Kubernetes 사용 기간 및 배경
저는 3년차 백엔드 개발자이며, 현 회사에서 Kubernetes를 처음 사용하면서 접하게 되었습니다. 약 3개월 정도 기본적인 기능을 사용하면서 더 깊게 공부해보고 싶은 마음이 들어서 CKA를 준비하며 공부를 시작하게 되었습니다.

 

  • CKA란
CKA에 대한 설명은 다른 좋은 글들이 많으니 생략하도록 하겠습니다. 제가 이전에 쓴 글도 참고하시면 좋을 것 같습니다. CKA 자격증이란?

 

  • 공부 방법
1. Udemy - Certified Kubernetes Administrator (CKA) with Practice Tests, TTABAE-LEARN - 이성미 강사 강의를 들었습니다. 두 강의 모두 다 듣진 않았고, 시험에 필요한 부분만 들었습니다. Udemy 강의는 실습 환경을 제공해주기 때문에 꼭 필요합니다. 할인율 높을 때 구매하면 저렴하게 강의를 구매할 수 있으니 참고바랍니다. 저는 저 컴퓨터(Mac)에도 실습 환경을 구성했는데 Udemy 강의에서 제공해주는 실습 환경으로도 충분히 시험에 합격할 수 있습니다.

2. 강의들은 개념 이해만 하고 빠르게 넘어가시길 바랍니다. 실습을 최대한 많이 해보시면서 연습하는게 도움이 많이 됐습니다. 특히, 시험 1, 2주일 전부터는 Mock Exam, Lightning Lab을 직접 문제없이 풀 수 있을 정도로 반복적으로 실습해보길 권장합니다. 총 40문제 정도 됩니다. 실제 문제 유형과 매우 유사한 문제들이 많이 때문에 완벽히 풀 수 있도록 연습해야 합니다.

3. Kubernetes Documentation는 시험칠 때 북마크 기능을 사용할 수 없으니 원하는 부분을 검색해서 찾는 연습을 많이 해야합니다.

4. CKA 시험 신청(결제)을 하면 killer.sh를 2번 응시할 기회를 줍니다. 실제 시험 문제에 비해 엄청 어렵다고 하는데 꼭 응시해보시길 바랍니다. 이유는 제공해주는 문제보다 시험 환경에 있습니다. killer.sh는 실제 시험 환경과 매우 유사하다고 합니다. 저는 안했다가 실제 시험 환경에서 굉장히 당황을 많이 했습니다. 예를 들어, 저는 실제 시험에서 메모장을 사용 못했고, 복사/붙이기도 다 마우스로 했습니다. 그리고 그 외의 기능들도 익숙하지 않아서 날려먹은 시간이 15 ~ 20분 정도 됩니다. 감독관한테 어떻게 쓰냐고 문의를 했지만 help의 어느 부분을 참고하라고만 말해서 찾다가 조바심에 찾는 것을 포기하고 사용 안했습니다. 엄청 손해를 봤습니다. 결론은 killer.sh는 문제는 안풀어도 상관없고, 실제 시험 환경에 익숙해지자 입니다.

 

  • 실제 시험
1. 모든 시험은 영어로 이루어집니다.

2. 시험 시간은 총 2시간이며, 원하는 시간을 선택해서 시험을 볼 수 있습니다. 시험보기 하루, 이틀 정도 전에 신청하시면 됩니다. 저는 오전 4시 30분에 시험 봤습니다..!

3. 시험 시작 30분 전에 시험 입장이 가능합니다. 시험 입장을 하면 비로소 시험에 필요한 환경 세팅, 본인 확인을 하게 되는데 늦어지면 늦어질수록 시험 시작 시간이 밀립니다. 시험 시간(2시간)이 줄어드는 것은 아니니 충분한 시간(총 3 ~ 4시간 정도)을 가지고 시험에 임하시길 바랍니다.

4. 환경 세팅
시험은 가상 데스크톱 인프라(VDI)에서 치뤄집니다. 시험 입장 후, 컴퓨터 환경 체크 (카메라, 마이크), 각종 동의서를 확인하고 넘어가면 가상 데스크톱 인프라(VDI)를 설치 파일을 줍니다. 저는 Mac으로 시험을 봤는데, 설치 파일을 다 다운로드 받고, 보안 설정도 변경했는데 설치 중 에러가 발생해서 엄청 당황했습니다. 종료하고 재시도하니 해결됐습니다.

듀얼 모니터는 허용되지 않습니다. 화면이 크면 클수록 좋기 때문에 데스크탑 PC로 시험을 본다면 더 좋을 것 같지만 노트북으로 해도 충분히 합격 가능합니다.

5. 본인 확인
환경 세팅이 완료되고, 가상 데스크톱 인프라(VDI)에 접속하면 비로소 시험이 가능한 상태가 됩니다. 본인 확인 절차가 시작됩니다. 감독관은 외국인이고 모든 대화는 Live 채팅(영어)으로 이루어집니다. 우선, ID를 확인하는데 여권을 준비하시면 별탈없이 넘어갈 수 있습니다. 다음으로, 시험 장소를 확인하는데 매우 엄격하게 확인하니 사전에 필수적인 물건은 제외하고 다 치워두는 것이 좋습니다. 웹캠으로 책상 위/밑을 포함한 주변 모든 것을 확인합니다. 환경 세팅 및 본인 확인이 끝나면 시험을 시작할 수 있습니다.

 

  • 시험 Tip
1. 저뿐만 아니라 다른 글들도 참고했을때, 시간이 오래 걸리고 어려운 문제(ETCD Back up & Restore, Cluster Upgrade 등)들이 초반에 배치되어 있습니다. 문제 하단에 Flag 기능이 있으니 체크해두고 넘어가서 쉬운 문제부터 빠르게 해결하시길 바랍니다.

2. 문제마다 context가 다릅니다. 문제 시작하면 kubectl config use-context {Context Name}을 무조건 입력하시길 바랍니다. 각 문제마다 빨간 박스로 표시를 해줍니다.

3. Udemy의 Mock Exam, Lightning Lab을 충분히 연습했고, killer.sh를 통해 환경에 적응이 된 상태라면 시험 전체 17 문제를 해결하는데는 아무리 길어도 1시간 30분이면 해결이 가능하니 시간에 너무 조바심을 느끼지 않아도 됩니다.

4. 부분 점수가 있으니 한 문제 한 문제 끝까지 최선을 다해서 푸시길 바랍니다.

 

  • 기출 문제
* Pod에서 특정 log만 추출하여 파일로 저장
* ServiceAccount 생성, Role 생성, Role Binding 생성 후 확인
* ETCD snapshot save & restore
* Cluster Upgrade (Controlplane Node만 진행)
* Pod에 nodeSelector (disktype=ssd) 추가
* Pod를 생성하고 포트는 80, NodePort는 30020인 서비스를 배포
* Taint가 없는 Node의 개수를 파일로 저장
* Node의 상태가 ready 개수를 파일로 저장
* 사용률이 가장 높은 Pod를 특정 label로만 조회해서 파일로 저장
* 특정 Node를 Pod를 다른 Node로 Reschedule하고 해당 Node는 SchedulingDisabled
* 특정 Node가 NotReady 상태인데 Ready가 되도록 TroubleShooting
* 특정 Deployment에 대해 replicas 수정
* Ingress를 생성해서 이미 생성 되어 있는 서비스와 연결하고 확인
* Networkpolicy를 생성해서 특정 namespace의 Pod만 특정 경로로 연결
* PVC 생성 후 Pod와 PVC 연동 (PV는 이미 존재), PVC 용량 수정
* 기존에 배포된 Pod에 새로운 Container 추가 (Sidecar 패턴)
* 이미지 nginx 1.16으로 Deployment 생성 후 이미지를 nginx 1.17로 업그레이드 하기

 

  • 시험 후기
저의 경우에는 실습은 충분히 연습을 했지만 환경에 적응이 안된 상태로 시험을 봤기 때문에 15 ~ 20분을 허비했고, 초반 문제(어려운 문제)를 계속 붙잡고 있어서 조바심이 엄청 심했습니다. 더군다나, 에러가 발생하면서 Flag 설정하고 넘어갔습니다. 결과적으로 1번 문제만 해결된 채로 50분 정도가 지났습니다. 여기서, '이번 시험은 망했구나'라고 직감했습니다. 포기하지 않고 이후의 문제(5번 정도부터)는 초반 문제들 보다 쉬워서 마지막 문제까지 빠르게 풀었습니다. 이쯤, 시험이 30분 정도 남았었습니다. Flag 해두었던 초반 문제로 돌아와서 시험이 종료될 때까지 최선을 다했고 결과는 79점으로 합격했습니다.

한 문제 한 문제 해결할 때마다 시간 부족으로 확인을 제대로 못했기 때문에 계속 너무 불안했습니다. 결과가 나오기 전까지 통과 못했다고 생각했습니다.

시험에 대해 꼼꼼하게 더 많은 정보를 알아보고, 좋은 전략을 구상했더라면 포기 직전까지 가지않고 훨씬 수월하게 시험을 볼 수 있었을텐데라는 아쉬움이 남습니다. 

이제 CKA 시험을 준비하고, 보시는 분들이 저와 같은 시행착오를 겪지 않고 좋은 시험 경험을 가질 수 있도록 이 글을 남깁니다.

이 글을 읽어주신 분들 모두 조금이나마 도움을 얻으셨길 바랍니다. 읽어주셔서 감사합니다.

'CKA' 카테고리의 다른 글

[CKA] Storage  (2) 2023.05.14
[CKA] Workloads & Scheduling  (0) 2023.05.14
[CKA] Cluster Architecture, Installation & Configuration (2)  (0) 2023.05.14
[CKA] Cluster Architecture, Installation & Configuration (1)  (0) 2023.05.13
[CKA] Troubleshooting  (0) 2023.05.13