하드웨어 기초 #8 클라우드 — 소유에서 임대로, 온프레미스부터 IaaS / PaaS / SaaS까지
#7에서 가상화가 한 대를 여러 대로 나눠 클라우드의 토대가 됐다고 했습니다. 이제 그 위의 그림, 클라우드 자체를 정리합니다. 클라우드를 “남의 컴퓨터"라고 한 줄로 말하기도 하지만, 이 시리즈의 관점에서는 더 정확한 표현이 있습니다. 지금까지 본 하드웨어를 소유에서 임대로 바꾼 것입니다. 누가 어디서 소유하는지, 그리고 어디까지 빌리는지로 나눠 보겠습니다.
하드웨어 기초 시리즈에서 이번 글의 위치입니다.
- #1 컴퓨터를 움직이는 네 가지 자원 — CPU / 메모리 / 스토리지 / 네트워크
- #2 CPU — 코어 / 스레드 / 클럭 / 캐시, 그리고 vCPU의 정체
- #3 메모리 — RAM과 계층 구조, 스왑이 시작되면 벌어지는 일
- #4 스토리지 ① 장치 — HDD / SSD / NVMe와 IOPS / 처리량 / 지연시간
- #5 스토리지 ② 구성과 연결 — RAID와 DAS / NAS / SAN
- #6 네트워크 — 대역폭과 지연시간, NIC에서 데이터센터까지
- #7 가상화와 컨테이너 — 물리 서버 한 대가 여러 대가 되는 원리
- #8 클라우드 — 소유에서 임대로, 온프레미스부터 IaaS / PaaS / SaaS까지 ← 이번 글
- #9 클라우드 인스턴스 사양 읽는 법 — 워크로드에 맞춰 고르기
클라우드란 무엇인가 — 소유에서 임대로 #
예전에는 서비스를 운영하려면 하드웨어를 사야 했습니다. 서버를 발주하고, 배송받아 설치하고, 전원과 네트워크와 냉방을 마련하고, 고장에 대비했습니다. 자원은 미리 넉넉히 사둬야 했고, 남는 만큼 돈이 묶였습니다.
클라우드는 이 하드웨어를 빌려 쓰는 것으로 바꿉니다. 필요한 순간에 만들고, 쓴 만큼 내고, 필요 없어지면 지웁니다. #7의 가상화 덕분에 물리 서버를 통째로 빌리지 않고도 필요한 크기만큼 잘라 쓸 수 있습니다. 비개발자 눈높이의 개념은 IT 상식 #3에서도 다룬 적이 있는데, 이번 글은 그 개념을 하드웨어 소유,임대의 관점에서 한 층 깊이 들어갑니다.
누가, 어디서 소유하는가 #
하드웨어를 소유하고 두는 방식은 한 줄로 나뉘지 않습니다. 세 단계로 보면 클라우드의 위치가 분명해집니다.
| 방식 | 하드웨어 소유 | 두는 장소 | 운영 부담 |
|---|---|---|---|
| 온프레미스 | 내가 소유 | 내 건물,전산실 | 전원,냉방,하드웨어까지 전부 내가 |
| 코로케이션 | 내가 소유 | 남의 데이터센터를 임대 | 하드웨어는 내가, 건물,전원은 사업자 |
| 클라우드 | 사업자 소유 | 사업자 데이터센터 | 하드웨어 운영은 사업자 |
온프레미스는 모든 것을 직접 가지므로 통제가 강한 대신 부담이 큽니다. 코로케이션은 건물과 전원만 빌리고 하드웨어는 직접 둡니다. 클라우드는 하드웨어 자체를 빌리므로, 사용자는 그 위에 무엇을 올릴지에만 집중합니다.
추상화 계층 — IaaS / PaaS / SaaS #
클라우드를 빌릴 때 핵심 질문은 “하드웨어가 어디까지 보이는가"입니다. 빌리는 층이 높아질수록 #1의 네 자원은 점점 감춰지고, 사용자가 관리할 범위도 줄어듭니다.
- IaaS(Infrastructure as a Service) — 가상 서버, 스토리지, 네트워크를 빌립니다. #9의 인스턴스 타입을 직접 고르고 OS부터 올립니다. EC2가 여기입니다. 네 자원이 사양표로 그대로 보입니다.
- PaaS(Platform as a Service) — 애플리케이션을 올릴 실행 환경을 빌립니다. OS와 하드웨어는 사업자가 관리하고, 사용자는 코드만 올립니다. 하드웨어는 거의 보이지 않습니다.
- SaaS(Software as a Service) — 완성된 소프트웨어를 빌려 씁니다. 사용자는 기능만 쓰고, 그 아래 모든 층은 감춰집니다. Gmail이나 Slack이 여기입니다.
IaaS PaaS SaaS
앱 나 나 사업자
런타임 나 사업자 사업자
OS 나 사업자 사업자
하드웨어 사업자 사업자 사업자
(네 자원) (사양표로 보임) (감춰짐)위로 갈수록 편하지만 통제력은 줄고, 아래로 갈수록 자유롭지만 직접 관리할 것이 늘어납니다. 이 시리즈가 다룬 하드웨어 지식이 가장 직접 쓰이는 곳은 네 자원이 사양표로 드러나는 IaaS입니다.
배포 모델 — 퍼블릭 / 프라이빗 / 하이브리드 #
클라우드를 누가 쓰느냐로도 나뉩니다.
| 모델 | 뜻 | 쓰는 곳 |
|---|---|---|
| 퍼블릭 | 사업자의 자원을 여러 고객이 나눠 씀 | 대부분의 일반 서비스 |
| 프라이빗 | 한 조직이 전용으로 쓰는 클라우드 | 규제,보안이 엄격한 곳 |
| 하이브리드 | 온프레미스와 퍼블릭을 함께 | 민감 데이터는 안에, 나머지는 클라우드 |
| 멀티클라우드 | 여러 사업자를 함께 | 특정 사업자 종속을 피함 |
규제로 데이터를 외부에 둘 수 없는 영역은 프라이빗이나 하이브리드로 갑니다. AWS 기초 #1에서 본 데이터 주권 규제가 이 선택과 이어집니다.
클라우드가 항상 싼 것은 아니다 #
클라우드의 장점은 미리 사두지 않고 쓴 만큼 낸다는 점입니다. 시작 비용이 거의 없고, 갑작스러운 트래픽에도 빠르게 늘릴 수 있습니다.
하지만 자원이 항상 가득 찬 워크로드를 오래 돌린다면, 빌리는 값이 사는 값보다 비싸질 수 있습니다. 게다가 #6에서 본 egress 비용처럼 눈에 잘 안 띄는 과금도 쌓입니다. 클라우드는 “항상 싸다"가 아니라 “필요한 만큼만 내고 빠르게 바꿀 수 있다"가 본질입니다.
자주 만나는 함정 #
“클라우드는 무조건 싸다” #
꾸준히 가득 쓰는 워크로드는 직접 사는 편이 쌀 수 있습니다. 트래픽이 들쭉날쭉하거나 빠른 확장이 필요한 경우에 클라우드의 비용 구조가 유리합니다.
“클라우드면 하드웨어는 몰라도 된다” #
IaaS를 쓰는 한 인스턴스 타입을 직접 골라야 하고, 그것은 곧 네 자원을 고르는 일입니다. 하드웨어를 모르면 과대,과소 프로비저닝으로 이어집니다.
“PaaS,SaaS면 통제권도 그대로다” #
위층을 빌릴수록 세밀한 통제는 사업자에게 넘어갑니다. 편의와 통제력은 맞바꾸는 관계입니다.
“egress는 신경 안 써도 된다” #
클라우드 밖으로 나가는 트래픽은 과금되고, 사업자를 옮길 때 데이터를 빼내는 비용도 만만치 않습니다. 멀티클라우드와 종속 회피를 이야기할 때 빠지지 않는 부분입니다.
정리 #
이번 글에서 잡은 그림입니다.
- 클라우드는 하드웨어를 소유에서 임대로 바꾼 것입니다. #7의 가상화가 그 토대입니다.
- 소유,장소로 보면 온프레미스 → 코로케이션 → 클라우드 순으로 운영 부담이 줄어듭니다.
- IaaS,PaaS,SaaS는 하드웨어가 어디까지 보이는지로 갈립니다. 네 자원이 가장 직접 드러나는 곳은 IaaS입니다.
- 배포 모델은 퍼블릭,프라이빗,하이브리드,멀티클라우드로 나뉘고, 규제와 종속 회피가 선택을 가릅니다.
- 클라우드는 항상 싼 것이 아니라 필요한 만큼 내고 빠르게 바꿀 수 있는 모델입니다.
다음 — 인스턴스 사양 읽는 법 #
클라우드를 IaaS로 쓰면 결국 인스턴스 타입을 골라야 합니다. 그것이 이 시리즈가 쌓아온 네 자원 지식이 한곳에서 쓰이는 대목입니다. 마지막 글 #9 클라우드 인스턴스 사양 읽는 법 — 워크로드에 맞춰 고르기에서는 c5.xlarge 같은 이름을 해부하고, vCPU,메모리,스토리지,네트워크로 사양표를 읽어 워크로드에 맞는 타입을 고르는 순서를 정리하겠습니다.