[Udemy X 글또] | DevOps (데브옵스) : Kubernetes 완전 정복 리뷰
뒤늦은 강의 리뷰를 올려 봅니다. 2024-04-21

머릿말

안녕하세요? 박민재입니다. 이번 포스팅은 제가 활동하고 있는 개발자 커뮤니티인 글또에서 Udemy 강의를 무료로 지원받아 작성하는 후기글을 올리고자 합니다.

지원 받은 강의는 DevOps (데브옵스) : Kubernetes 완전 정복입니다. 당시 회사에서 K8S 관련 Task를 하고 있었기 때문에, Kubernetes 전반적인 생태계에 대해서 깊게 알 필요가 있었는데요, 그 때 마침 글또에서 유데미 강의를 지원 받을 수 있는 기회가 있어, 이 강의를 지원 받게 되었습니다. 다시 한 번, 글또 운영진 여러분들에게 감사드립니다.

어떤 사람이 듣기 좋을까요?

해당 강의는 DevOps 개발자를 지망하는 개발자분들에게도 당연히 도움이 되겠지만, 개인적으로 Data Engineer 업무를 하고 있는 저의 입장에서, Backend, Data Engineering 업무를 수행 하시는 분들에게도 큰 도움이 될 수 있을 것이라고 생각합니다. 실제로 운영을 하다 보면, DevOps 분들의 입장에서 컨트롤 할 수 있는 영역이 있고, 실제 로직을 개발하는 Backend, Data Engineering 분들의 입장에서 컨트롤 할 수 있는 영역이 있는데요, Kubernetes의 이해도를 높여 DevOps 분들이 컨트롤 하기 힘든 사각시대를 컨트롤 할 수 있다면, 더 안정적인 Component 운영으로, 더 적은 Resource의 사용으로 이어 질 수 있습니다.

일단 기본적으로 Docker에 대한 전반적인 이해가 있으신 분들이 들으시는 것이 좋습니다. Kubernetes 또한, Docker Engine을 기반으로 작동하는 오케스트레이션 시스템이다 보니, Docker Image, Process, Volume Mount, Network에 대한 개념을 충분히 이해 하시고 가는 것이 좋을 것 같아요. 강의 초반에 다루긴 하지만, 너무 얕게 다루기 때문에 복습 느낌이 너무 큽니다. 못해도 Docker Compose를 이용해서 로컬 개발 환경 구축할 수 있는 정도의 숙련도를 가졌다면, 해당 강의를 들으셔도 될 것 같다는 판단이 드네요.

구체적으로 어떤 것들을 강의에서 다루나요?

해당 강의에서는 로컬 (Docker Desktop, Minikube를 이용) 혹은 AWS 환경에서 Kubernetes Cluster를 구축 하는 법을 먼저 가르친 이후에, Kubernetes에서 사용하는 기본적인 Concept (Pod, Node, Deploy, Service 등의 개념)들을 이용하여 간단한 배포 프로세스를 수행 해 봅니다. 그 다음 DNS, Volume, Configmap, Secret 등의 Concept 들을 추가하여 배포 해 보는 방식으로, 점진적으로 다양한 Concept들을 추가하며 Kubernetes를 학습합니다.

후반부에는 Affinity, Namespace 등의 단일 클러스터 내에서 논리적으로 리소스를 분리하여, Cluster를 효율적으로 관리 하는 방법에 대해서 학습하고, 고가용성을 위해서 내부적으로 어떤 아키텍처로 구성 하는지도 학습 합니다. 추가적으로 여러 가지 Kubernetes Concept 들을 Packaging 하여 배포하는 Helm에 대해서도 학습을 진행 합니다.

후기

개인적으로 점진적으로 Kuberenetes Concept 들을 추가하는 방식으로 학습을 직행 한 덕에, Concept들에 대한 이해를 수월하게 진행 할 수 있었던 것 같아 만족스러운 강의였습니다. 실사용 사례로 있을 법 할만한 예제를 통해, 이 개념이 나중에 실제로 프로덕트를 Kubernetes로 배포할 때, 어떻게 쓸 수 있을지 감을 잡을 수 있게 된거 같습니다. Kubernetes를 프로덕트에 적용 하려고 하는 분들에게 강추 합니다.