안녕하세요. 보안 플랫폼 엔지니어 김정우입니다. 저는 사내 프라이빗 클라우드 환경에서 접근 제어의 핵심을 맡고 있는 오픈소스 프로젝 트인 Athenz 제공을 담당하고 있습니다.
Athenz는 현재 CNCF(Cloud Native Computing Foundation)의 샌드박스 프로젝트(참고)에 등록된 서비스 간 인증/인가 시스템입니다. 수많은 마이크로 서비스가 작동하는 복잡한 쿠버네티스 환경에서 '누가 어떤 서비스에 어떤 권한으로 접근할 수 있는가?'라는 중요한 문제를 해결해 주는 '믿음직한 문지기' 같은 존재입니다. LY Corporation은 Athenz를 사내 기술로 적극적으로 활용하고 있으며, 기술 기여, 기능 개선 제안, 운용 노하우 공유 등을 통해 Athenz 커뮤니티 발전에 중요한 역할을 담당하고 있습니다.
그런데 이번 글에서는 Athenz가 아니라 조금 다른 이야기를 해보려고 합니다. 이번 글에서는 CKA, CKAD, CKS, KCSA, KCNA 등 총 다섯 가지 자격증을 취득한 사람에게 부여되는 칭호인 Kubestronaut(참고)가 된 제 경험을 이야기하려고 합니다. Athenz 담당인 제가 쿠버네티스 전문가가 되는 길, 즉 Kubestronaut 인증을 목표로 삼아 이뤄낸 이야기를 들려드리겠습니다.
Kubestronaut이란?
본론으로 들어가기 전에 'Kubestronaut'이 무엇인지 조금 더 자세히 설명하겠습니다. Kubestronaut이란 간단히 말해 '쿠버네티스의 숙련된 항해사'와 같은 의미로 CNCF에서 수여하는 칭호입니다. CNCF는 쿠버네티스나 Prometheus와 같이 현재 클라우드 네이티브 기술의 핵심을 이루는 많은 오픈소스 프로젝트를 호스팅하는 Linux Foundation 산하의 매우 중요한 조직입니다.
이 칭호를 얻기 위해서는 다음 총 5가지 인증 자격을 모두 취득해야 합니다.
- CKA(Certified Kubernetes Administrator)
- CKAD(Certified Kubernetes Application Developer)
- CKS(Certified Kubernetes Security Specialist)
- KCSA(Kubernetes and Cloud Native Security Associate)
- KCNA(Kubernetes and Cloud Native Associate)
여기서 중요한 점은 CKA와 CKAD, CKS, 이 세 자격 시험은 지식을 묻는 객관식 시험이 아니라는 점입니다. 이 세 자격은 실무 스킬을 평가하기 위한 자격으로 실제로 터미널을 이용해서 문제를 해결하는 실습형 시험을 치뤄야 합니다. 즉, 제한 시간 내에 실제와 같은 환경에서 문제를 해결해야 하므로 쿠버네티스 관리와 개발 및 보안에 관한 최고 수준의 전문 지식과 실무 스킬을 갖춘 엔지니어라는 것을 국제적으로 증명할 수 있는 자격이라고 할 수 있습니다. CNCF 공식 웹사이트에는 인증 취득자 명단이 올라가 있기도 한데요. 세계 최고의 엔지니어들과 함께 이곳에 이름을 올리는 것은 매우 영광스러운 일이겠죠.
필요해서 시작해 전문가로 성장하다: 나의 Kubestronaut 도전기
그럼 이제 본격적으로 Athenz 담당인 제가 왜 가치 있지만 험난한 Kubestronaut로의 길을 목표로 삼았는지 그 이유를 소개하고 도전기를 공유하겠습니다.
자격 취득 과정
모든 것의 시작, CKAD
솔직히 말하자면 처음부터 Kubestronaut이 되겠다는 거창한 목표가 있었던 것은 아닙니다. 시작은 사내 KaaS(Kubernetes as a Service) 플랫폼에 Athenz를 도입하기 위한 개발 및 운영을 담당하게 된 것이었습니다. 그동안 늘 쿠버네티스에 관심을 갖고 있기는 했지만 너무 거대하고 어려워 보인다고 생각하고 있었는데요, 업무로 담당하게 되면서 더 이상 단순한 호기심에서 멈춰 있을 수 없었고, 반드시 넘어야 할 벽이 되었습니다.
원래 저는 어학을 좋아해서 매년 하나씩 자격증을 따는 습관이 있었습니다. TOEIC 965점, 중국어 HSK 4급과 5급, 일본어 JLPT N2와 N1 등을 취득하는 과정에서 성취감과 함께 체계적으로 배우는 즐거움을 알게 되었습니다. 그래서 '어차피 할 것이라면 정석대로 깊이 배워보자'라고 결심한 후 CKAD(Certified Kubernetes Application Developer) 취득을 첫 번째 목표로 삼았습니다.
수많은 쿠버네티스 자격증 중에서 CKAD를 첫 번째 목표로 선택한 데에는 분명한 이유가 있었습니다. 제 역할은 Athenz라는 '애플리케이션'을 쿠버네티스에서 안정적이고 효율적으로 제공하는 것입니다. 즉, 우선 애플리케이션 개발자의 관점에서 쿠버네티스를 완벽하게 이해할 필요가 있었습니다.
CKAD는 실전 중심의 실습형 시험으로 제한 시간 내에 문제를 파악하고 해결하는 능력을 평가합니다. 따라서 정확성만큼이나 속도도 중요한데요, 이 시험을 준비하면서 실무에서 문제가 발생했을 때 상황 파악 및 대응 속도가 눈에 띄게 빨라졌습니다. 이 결과는 평소 신속한 업무 진행 방식을 선호하는 제 성격과도 잘 맞아떨어져 매우 만족스러웠습니다.
CKAD를 준비하면서 약 4개월 동안 평일에는 출근 전 매일 5분~1시간, 주말에는 최소 1시간 이상 공부했고, 시험 직전 주말에는 12시간 이상 책상에 앉아 있기도 했습니다. 특히 실제 시험 환경과 유사하면서 훨씬 어려운 문제가 출제되는 killer.sh를 통해서 정말 실력이 늘었습니다.
시야를 넓히기 위한 다음 단계, CKA
CKAD를 통해 애플리케이션 관점에서의 쿠버네티스 기술은 습득했습니다. 하지만 제 역할은 거기서 끝나지 않았습니다. 저희 회사의 인프라 규모에서 업무를 진행하려면 여러 클러스터를 동시에 관리해야 했고, 때로는 다른 팀이 관리하는 매니페스트(manifest) 파일을 깊이 분석해야 하는 상황도 발생했습니다. 더 넓은 시야와 보다 깊은 지식이 필요해진 것입니다. 이에 따라 자연스럽게 CKA(Certified Kubernetes Administrator)에 도전하기로 했습니다.
CKAD가 애플리케이션 문제 해결에 중점을 두는 시험이라면 CKA는 애플리케이션이 구동되는 쿠버네티스 클러스터 자체의 문제를 진단하고 해결하는 데 초점을 맞춘 시험입니다. 저는 CKA를 취득하기 위해 공부하면서 쿠버네티스가 마법처럼 작동하는 시스템이 아니라 수많은 컴포넌트가 유기적으로 연동해서 작동하는 복잡하면서도 정교한 시스템이라는 것을 이해하 게 되었습니다. 특히 내부에 그토록 많은 마이크로서비스가 존재하는데도 전체가 원활하게 운영된다는 점에 놀랐으며, 큰 시스템을 설계할 때에는 책임을 명확하고 단순하게 만들어야 시스템 전체가 원활하게 작동한다는 것을 배웠습니다. 이때 배운 것들은 이후 설계 업무에도 큰 도움이 됐습니다.
마지막 관문, CKS
저의 전문 분야는 보안이므로 마지막 퍼즐 조각은 당연히 CKS(Certified Kubernetes Security Specialist)였고, 결국 CKS를 취득해서 개발, 운영, 보안을 아우르는 전체 그림을 완성할 수 있었습니다.
CKS는 주어진 보안 문제를 해결하는 실전형 시험으로 Kubestronaut이 되기 위한 과정에서 가장 어려운 관문으로 알려져 있습니다. '시스템의 보안 수준은 가장 취약한 부분이 결정짓는다'라는 말이 있습니다. 제가 담당하는 Athenz의 안정성뿐 아니라 Athenz가 구동되는 쿠버네티스 클러스터 자체의 보안에도 책임을 져야 한다고 생각했을 때 CKS 취득은 필수 과정이 되었습니다. 난도가 매우 높기로 유명하지만 이 과정을 통해 쿠버네티스 보안 모범 사례, 취약점 분석, 네트워크 정책 설정 등 실무적인 클러스터 강화 기술을 익힐 수 있었습니다.
KCSA와 KCNA
남은 KCSA와 KCNA는 위 세 가지 자격증을 쟁취한 실력이라면 비교적 수월하게 취득할 수 있는데요. 저는 각각 한 달 정도의 준비 기간을 거쳐 두 자격을 따냈습니다.
성장의 증거: Kubestronaut이 되고 얻은 것
마침내 저는 다섯 가지 자격증을 모두 취득하고 CNCF 공식 사이트에 Kubestronaut으로 등록됐습니다. 제가 아는 한 저희 회사 최초의 Kubestronaut입니다.

자격을 취득하는 과정에서 저는 단순한 자격 이상의 가치를 얻을 수 있었습니다. 그 대표적인 예가 오픈소스 거버넌스를 보다 깊이 이해하게 된 것입니다. 쿠버네티스와 같은 거대한 프로젝트가 SIG(special interest groups)나 PR(pull request) 규칙 등을 기반으로 수많은 기여자와 함께 성장해 나가는 모습을 엿볼 수 있었습니다. 이는 '훌륭한 기술 커뮤니티는 어떻게 운영되고 있는가'와 관련해 깊은 통찰을 주었으며, 저희 팀이 Athenz 프로젝트를 샌드박스에서 인큐베이팅(incubating) 단계로 성장시키기 위한 전략을 구상하는 데 많은 영감을 주었습니다.
자격을 취득하며 이룬 성장은 최근 제가 담당하는 'Athenz를 BMaaS(bare metal as a service) 환경에 제공하는 프로젝트'에서 바로 효과를 발휘하고 있습니다. 자격증 공부를 하면서 아키텍처를 깊이 이해한 덕분에 더 안정적이고 효율적인 구조를 설계하고 팀 멤버들을 설득할 수 있었습니다.
나만의 공부법: 소의 걸음으로 천리를 간다는 '우보천리(牛步千里)'의 자세로
저는 '우보천리(牛步千里)'라는 사자성어를 좋아합니다. 인생은 단거리 달리기가 아니라 마라톤이므로 한 걸음 한 걸음 꾸준히 나아가는 것이 중요하다고 생각합니다. 저는 매일 새벽 4시 반, 때로는 3시에 일어나 운동하고, GitHub에 최소 하나의 커밋을 남기며 단 1분이라도 IT를 공부하는 습관을 들였습니다. 이 습관은 이제 '오늘 열심히 해야지'하고 의식적으로 노력하는 것이 아니라 숨 쉬는 것만큼 자연스러운 일과가 되었습니다. 자격증 하나를 따려면 상상 이상의 노력과 시간이 필요하지만, 매일 조금씩 꾸준히 전진하면 어느새 시험을 볼 수 있는 수준에 도달합니다. 여러분도 하루에 1분 IT를 공부하는 것으로 하루를 시작해 보시면 어떨까요?
성장할 수 있는 환경
물론 이 모든 것이 저 혼자만의 노력으로 이루어진 것은 아닙니다. 회사의 지원과 문화가 없었다면 훨씬 더 어려운 여정이 되었을 것입니다. 저희 회사에는 Udemy Business를 통해 최신 기술 강좌를 언제든지 수강할 수 있는 제도와 하이브리드 근무를 통해 출퇴근 시간을 학습에 활용할 수 있는 환경이 마련돼 있습니다. 조직에 따라 자격 취득 및 인증, 갱신에 드는 비용을 지원하는 제도도 있습니다. 제가 소속된 조직에서는 보안 관련 자격증 취득을 지원하는 제도가 있어서 특정 자격증에 대해 지원을 받을 수 있습니다. 일본 내 수많은 사용자가 이용하는 서비스를 담당하기에 그 책임이 막중하다고 할 수 있지만, 최고의 동료들과 협력해서 문제를 해결해 나가는 과정은 정말 즐겁습니다. 이런 환경 덕분에 건강한 스트레스 수준을 유지하면서 주말도 허비하지 않고 다음 주를 위해 필요한 공부를 하는 등 자기 계발에 전념할 수 있습니다.
무엇보다도 저희 팀은 단순히 주어진 작업을 진행하는 것뿐만 아니라 시스템 전체의 아키텍처를 이해하고 이상적인 모습을 공유하며 개발을 진행해 나가는 것을 중요하게 여깁니다. 벽에 부딪혔을 때 쉽게 타협하는 법 없이 최고의 동료들과 의논해 가며 진정한 답을 찾아나가는 그 과정 자체가 저에게는 가장 큰 동기 부여입니다. 이런 문화를 만들어 주신 분들과 매일 함께 기여하고 있는 동료들에게 항상 진심으로 존경과 감사하며 업무에 임하고 있습니다.
마치며
업무에 필요해서 쿠버네티스 관련 공부를 시작했지만 이제는 Athenz 다음으로 좋아하는 기술이 되었습니다. 이 글을 읽고 쿠버네티스 전문가가 되는 길 앞에서 망설이는 분이 계신다면 주저하지 말고 도전해 보시기를 바랍니다. 자격증 취득 과정에서 얻는 깊은 지식은 단순히 한 가지 기술을 안다는 것 이상의 가치를 선사합니다. 그 경험이 주는 넓은 시야는 분명 여러분을 한 단계 더 성장한 엔지니어로 만들어 줄 것이며, 저 또한 이 경험을 발판으로 삼아 앞으로 더욱 고도화된 아키텍처 설계 및 개선에 기여하고 싶습니다. 끝까지 읽어주셔서 감사합니다.


