laplanc***
2024-05-26

이번에 리뷰할 서적은 한빛미디어에서 출판된 "한 권으로 배우는 도커 & 쿠버네티스" 입니다.
도커 및 쿠버네티스의 원리를 이해하고, 기본 개념을 실무 환경에서에서 구축 및 관리 사용방법을 단계별로 익힐 수 있도록
구성된 최신의 도서 입니다.
아래는 각 파트의 주요 내용을 간략하게 정리한 것입니다.
Chapter 1: 실습 환경 구축하기
책의 시작은 도커와 쿠버네티스 실습에 필요한 환경을 직접 구축하는 것입니다.
우분투 이미지를 다운받고 VirtualBox에서 새 가상머신을 만듭니다.
이 가상머신에 우분투를 설치하고 네트워크를 NAT 모드로 설정하여 인터넷 연결이 가능하도록 합니다.
이후 PuTTY 프로그램으로 가상 머신에 원격 접속하는 방법도 배웁니다.
마지막으로 vim 에디터에서 리눅스 기초 명령어를 연습해볼 수 있습니다.
Chapter 2-3: 도커 개념 및 설치
2장에서는 도커가 무엇이고, 왜 필요한지에 대한 기본 개념을 다룹니다.
도커의 등장 배경과 역사, 컨테이너와 이미지의 정의, 도커 아키텍처, 가상머신 vs 컨테이너 차이, 도커의 장점 등을 상세히 설명합니다.
3장에서는 직접 도커를 설치해보고 Hello World 컨테이너를 실행해봅니다.
설치 전 리눅스 커널과 패키지들을 미리 설정하고, 공식 문서를 통해 안전한 방법으로 도커를 설치합니다.
Chapter 4: 도커 기초
이번 챕터에서는 도커 사용을 위한 기초 명령어와 핵심 개념들을 배웁니다.
이미지 생성, 컨테이너 실행/중지/삭제, 볼륨 마운트, 포트 포워딩 등 자주 사용되는 기본 명령어를 익힙니다.
또한 도커 컨테이너 네트워크의 종류와 작동 원리, 스토리지 드라이버와 데이터 영구화 방법 등 운영 관점에서 중요한 내용도 깊이 있게 다룹니다.
Chapter 5-6: Django, Flask 도커 실행
5장에서는 실전 예제로 Django 웹 애플리케이션을 도커 컨테이너로 실행해봅니다.
YAML 문법을 익히고 Dockerfile을 작성하는 법을 배운 후, Django 프로젝트와 Nginx 웹서버, PostgreSQL DB를 모두 도커로 실행해볼 수 있습니다.
6장에서는 Flask 웹앱을 도커로 실행해보고, 여기에도 Nginx를 연동하는 실습을 진행합니다.
두 장에서 Docker Compose를 사용해 여러 컨테이너를 한번에 관리하는 방법도 다룹니다.
Chapter 7: 쿠버네티스 기본 구조
본격적으로 쿠버네티스를 배우기 전, 7장에서는 쿠버네티스가 무엇이고 어떻게 구성되어 있는지 기본 구조를 익힙니다.
쿠버네티스의 개념과 필요성, 마스터와 노드 역할, 파드와 레플리카셋 등 핵심 용어를 정의합니다.
쿠버네티스 API 서버, 컨트롤러, scheduler 등 클러스터 전체 아키텍처를 이해할 수 있습니다.
Chapter 8-9: 쿠버네티스 실습 및 기초
8장에서는 실제로 마스터 노드와 워커 노드를 직접 설치하며 쿠버네티스 클러스터를 구축해봅니다.
9장에서는 구축한 클러스터에서 디플로이먼트, 서비스, 볼륨, 인그레스 등의 주요 리소스를 생성하고 실습합니다.
간단한 웹앱을 배포하고 서비스로 노출하는 기본 작업을 하나씩 실습해볼 수 있습니다.
Chapter 10: 쿠버네티스 웹앱 배포
10장에서는 앞서 도커로 실행했던 Django, Flask 웹앱을 이번에는 쿠버네티스 클러스터에 배포해봅니다.
인그레스를 설정해 웹서비스를 외부에 노출시키고, 실제로 접속하여 정상 작동하는지 확인합니다.
두 개 웹앱을 함께 배포하고 로드밸런싱까지 해보는 실습을 진행합니다.
Chapter 11: CI/CD 배포 파이프라인
11장에서는 지속적인 통합(CI)과 배포(CD)에 대해 배웁니다.
GitHub Actions을 이용해 소스코드 변경 시 자동 빌드/테스트를 수행하는 CI 파이프라인을 구축합니다.
그리고 ArgoCD를 사용해 새 버전이 빌드되면 쿠버네티스에 자동 배포되도록 CD를 구현합니다.
Chapter 12: 쿠버네티스 모니터링
마지막으로 12장에서는 운영 환경에서 필수적인 쿠버네티스 클러스터 모니터링 기법을 다룹니다.
메트릭 서버를 통해 노드/파드 리소스 사용량을 확인하고, 프로메테우스로 다양한 메트릭 데이터를 수집하고 그라파나로 시각화하는 방법을 익힙니다.
또한 로키로 클러스터 전체 로그를 수집하고 관리하는 법도 실습해봅니다.
이 책은 도커와 쿠버네티스 기초 이론에서 시작해 실제 웹앱 배포, CI/CD 파이프라인 구축, 모니터링까지 단계적으로 다루고 있습니다.
친절한 설명과 다양한 실습 예제가 가미되어 있어 개념 이해와 실전 활용 능력을 모두 기를 수 있습니다.
"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."