본문 바로가기

book

모두를 위한 클라우드 컴퓨팅

보통 클라우드의 기술에 대한 내용이 요즘은 AWS의 사용기술과 사용기법에 대한 책이 출간됩니다.

하지만 클라우드 ≒ AWS 를 의미 하지는 않습니다.

추가로 Docker, Kubernetes등도 마찬가지 입니다. 클라우드 ≒ Docker, Kubernetes 입니다.

이러한 다양한 클라우드의 기본적인 원리 및 동작방식을 설명해주는 책이 이번에 출간되었습니다.

 

책을 통해서 클라우드의 기본 개념을 바탕으로 우리가 흔히 접하는 가상화, 컨테이너, 도커, 쿠버네티스의 기술을 순차적으로 설명합니다.

 

 

처음 책을 받아들면, "와. 엄청 두껍다" 라는 감탄사가 나옵니다.

글자 폰트도 크지 않으며, 675Page에 두꺼운 책입니다.

외국 번역도서도 아닌 국내 저자분의 저서인 점이 눈에 들어옵니다.

 

 

 

■ 용어

· 책의 목차를 보면, HTC라는 단어가 많이 나타납니다.

책에서 정의하고 있는 HTC용어는 아래와 같습니다.

HTC :High Throughput computing의 약어 입니니다.

우리가 보통 사용하고 있는 클라우드 서비스는 ( 가상화기술 + 그리드 컴퓨팅기술)이 혼합된 방식으로 구성됩니다.

다양한 인스턴스를 자유롭게 구성하기 위해서 가상화 기술을 사용하고, 이렇게 구성된 사항을 

자유롭게 자원을 분배하고 관리하기 위해서 그리드 기술이 사용됩니다.

 

이러한 것을 표한하는 단어가 HTC이고 (P.14 번역을 하지면 대용량 처리 컴퓨팅)으로 해석할수 있지만 영어 그대로 사용된다고 적혀있습니다. 특별한 거부감 없이 단어들 받아들이면 될거 같습니다.

아래 그림표를 통해서 그리드, 클라우드, HTC의 관계를 조금 더 명확히 이해 하실수 있습니다.

 

■ HTCondor 이론 및 실습

· 우리가 편하게 사용하는 클라우드 시스템을 구축해보는 실습을 해보실수 있습니다.

유후한 컴퓨팅 자원을 클러스터링 하기 위한 이론 및 실습을 합니다.

클러스터링 하기 위해서 HTCondor (HTC + Condor) 를 이용해서 구성합니다. 

https://htcondor.org/ 이며 아파치 라이센스로 구성되어 있습니다. 

 

Virtualbox를 통해서 ubunbu 기반 vm을 3개 구성하고, CentOS기반에 HTCondor를 설치합니다.

다양한 레드햇 계열에 대한 경험을 전달하기 위해서 다양한 OS기반 구성으로 실습 환경을 구성하였다고 합니다.

 

이렇게 구성한 vm들간에 상호 네트워크 통신 확인 작업을 경험합니다.

여러 서버들에 동일한 명령어 작업도 수행, 실습합니다.

Vagrant를 사용하여서, 여러 가상머신을 스크립트 기반으로 컨트롤 하는 실습을 확인합니다.

 

■ AWS환경에서 HTCondor환경 구축해보기

이전 장에서는 개인 PC에서 virtualbox로 해당 환경을 구축하였다면, 이제는 AWS에서 vm환경을 EC2 인스턴스를 생성을하고

HTCondor repository를 등록하여서 EC2환경에서 HTCondor 마스터, 슬래이브 환경을 구성해봅니다.

 

 

■ 클라우드의 핵심 기술인 가상화 기술

· Docker를 처음 배우면 전가상화, 반가상화, 하이퍼바이저와 같은 keyword를 접하는것 같습니다. 그러면서 컨테이너 개념이 도입되고

  편하게 사용하는 SW에 이론적인 설명 및 동작방식에 대해서 상세히 설명합니다.

 

이러한 이론적인 원리를 알게 되면서, 자신의 알고 있는 시야 및 생각의 범주가 점차 넒어지는 경험을 하게되는 좋은 이론적인

내용들로 구성되어 있습니다. 

가상화의 종류도 세분화 되어 있습니다.

① CPU 가상화
ⓩ 메모리 가상화 
③ I/O 가상화
등에 대해서도 상세하 다루어 집니다.

 

가상머신으로 오픈스택 구성을 실습해 봅니다.

이것을 통해서 추후 확장가능한 관리를 위한, 쿠버네티스, 테라폼등과 같은 외부 서비스와 연계를 하기 위함입니다.

 

■ 자연스럽게 컨테이너 기술 및 Docker의 이야기가 구성됩니다.

우리는 컨터이너와 가상머신의 차이를 쉽게 정의하고 설명할수 있을까요?

해당 책 P.399에서 "Not exactly"라고 정의하고 있고, 참고해주시면 좋을거 같습니다.

 

 

■ 도커, 쿠버네티스 환경을 구성해보기

· VirtualBox로 VM구성하여서 모든 실습을 진행합니다. 

Docker의 이론적인 부분부터 실습까지 함께 구성되어 집니다.

도커를 관리하기 위한 오케스트레이션 툴 (쿠버네티스, 도커 스윔, 아피치 메소드)에 대한 부분도 있고

도커 Chapter에서는 도커 쉬윔을 상세히 설명하고, 다음 Chapter에서는 별도로 쿠버네티스에 설명하는것으로 구성되어 있습니다.

 

젠킼스를 이용해서 CI/CD구성을 github 소스를 반영하여서 구성하는 실습 구성을 추가로 설명합니다.

 

■ 대상독자

· 클라우드를 구성하는 다양한 기술요소를 이론적으로 학습하고 싶은 독자분들에게 좋을거 같습니다.

· 가상화 기술에 대해서 직접 hands-on설치해보고 동작방식을 이해하고 싶으신 독자분들에게 좋은 지침서가 될거 같습니다.

· 클라우드 기술의 1Cycle을 전반적으로 경험해보면서 가상화, docker, k8s등을 설치 경험 및 이론을 조금더 알고 싶은 분들에게 좋은 가르침이 되어주실거 같습니다.

 

<해당 서평은 제이펍의 도서지원을 받았습니다.>