도커, 쿠버네티스를 위한 이론 교과서
컴퓨터 공부를 하다 보면 종종 가상화, 컨테이너, 도커, 쿠버네티스란 단어를 들어볼 수 있습니다. 이 단어들은 무엇을 뜻하는 것일까요? 간단한 예시를 하나 들어 설명해 보겠습니다.
여러분은 서버 관리자입니다. 평소와 다름없던 어느 날, 서버를 관리하던 컴퓨터가 고장이 나버렸습니다. 이를 복구하기 위해선 컴퓨터의 고장 원인을 찾고, 부품을 수리해야 하기에 시간이 걸립니다. 설령 여분의 컴퓨터가 있더라도 기존 컴퓨터에서 데이터를 복구하여 사용해야 하기에 서버는 여전히 다운된 상태입니다.
하지만 가상화를 통해 가상 서버를 구축할 경우, 여러 대의 컴퓨터로 하나의 가상 서버를 구현하는 것이 가능하여, 컴퓨터가 고장 나도 다른 컴퓨터로 전환하여 가동할 수 있기에 빠르게 서버를 정상화할 수 있습니다. 이것이 가상화 개념이자 장점입니다.
하지만 가상화에도 한계가 있었는데, 바로 호스트 서버 안에서도 가상 머신이나 게스트 OS를 이용해서 구현해야 한다는 것이었습니다. 이를 해결하기 위해 게스트 OS 없이 사용할 수 있게 만든 것이 컨테이너입니다. 이 컨테이너들을 자바의 객체처럼 활용할 수 있게 해주는 것이 도커이고, 도커의 사용량이 증가함에 따라 많아진 도커들을 통합해서 관리할 수 있게 하는 것이 바로 쿠버네티스입니다.
사실 앞의 내용은 전부 책에서 나온 내용을 요약한 것이며 앞서 보신 것과 같이 가상화부터 쿠버네티스까지 연관해서 엮어 이를 차례대로 배울 수 있습니다.
책의 장점은 제목에서도 나왔듯이 이론적인 부분을 글로 설명하면서도, 이를 이해하기 쉽도록 그림을 통해 시각적으로 자세하게 표현한 점과 소주제 한 장이 끝날 때마다 해당 주제의 핵심 부분을 요약해 기억하기 쉽게 만든 것이 마음에 들었습니다.
또한, 이론 부분과 현실에서 사용하는 프로세스를 설명하는 부분이 적절하게 섞여 있어 해당 이론을 활용한 프로세스가 어떤 종류가 있는지 간단한 명령어와 함께 확인할 수 있었고, 배울수록 생기는 궁금증을 해결해주듯 내용 연결이 자연스럽다는 것이 매력적이였습니다.
일례로 컨테이너에 대해 배우는 부분에서 컨테이너는 가상서버와 달리 데이터를 물리적 서버에 저장할 필요가 없다는 것을 보고. 컨테이너와 가상서버와 무엇이 다른지 궁금했는데, 바로 다음 장에서 컨테이너는 가상서버와는 달리 프로세스와 운영체제를 공유하기 때문에 특수한 프로세서로 이해하는 편이 낫다고 설명합니다.
여기에 꼬리를 물어 그렇다면 가상화가 필요 없지 않냐는 또 다른 질문 또한 컨테이너가 운영체제의 차이에 따라 동작하지 않는 경우가 있어 상황에 맞게 사용하는 것이 좋다고 설명하고 있습니다. 이렇듯 읽으면서 의문점이 생길 때마다 명쾌한 해답을 통해 배울 수 있어서 더 좋았습니다.
평소에 클라우드의 개념이 정확히 무엇인지 궁금했던 분들이나 도커와 쿠버네티스를 접하여 기초이론을 다지고 싶은 개발자분들에게 추천해 드립니다.
<< 이 글은 YES24 리뷰어클럽 서평단 자격으로 작성한 리뷰입니다. >>
'책을 읽읍시다' 카테고리의 다른 글
[서평] Do it! 깡샘의 안드로이드 앱 프로그래밍 with 코틀린 (0) | 2022.12.29 |
---|---|
[서평] 개미나라 경제툰 (0) | 2022.12.28 |
[서평] 치매의 모든 것 (0) | 2022.11.29 |
[서평] 소프트스킬 개정 2판 (0) | 2022.11.27 |
[서평] 파이썬 딥러닝 케라스 (0) | 2022.11.21 |