본문 바로가기

디지털 한국

비전공자 문돌이가 설명해주는 클라우드 개념 총정리!

반응형

클라우드 컴퓨팅이란?

네트워크를 통해 다양한 IT 리소스(서버, 스토리지, 네트워크 등)와 어플리케이션을 온디맨드(on-demand, 요구사항에 따라 즉시 제공/공급 하는 주문형 방식)로 제공하는 서비스를 말합니다. 쉽게 말해, 내 필요에 따라 요청을 하면 클라우드는 즉각 서비스를 제공하고, 제공받은 서비스에 대해서 종량제 방식으로 사용한 만큼만 돈을 지불하면 되는 것이죠. 

코스콤 리포트에 따르면 클라우드 개념을 다음과 같이 정의합니다.

"클라우드는 서버, 스토리지, 소프트웨어 등 필요한 IT 자원을 탄력적으로 제공받아 사용하는 컴퓨팅 환경이다. IT 자원을 이용자가 직접 소유, 관리하는 기존 방식과 달리 이용자가 필요한 IT 자원을 인터넷을 통해 제공받음으로써 소유(클라우드 제공자)와 관리(이용자)를 분리한 방식이다."

이렇게 되면 기업 특히 스타트업의 경우 초기 인프라에 대한 자본 투자의 부담이 적어지겠죠. 또 자원 할당이나 관리도 편해지고 효율적으로 할 수 있을 것입니다. 

퍼블릭 vs 프라이빗

퍼블릭은 일반 사용자를 대상으로 하며, 대표 플랫폼으로는 기본적으로 잘 알고 있는 AWS, GCP, Azure 등이 있습니다. 반대로 프라이빗은 내부 사용자(사내 직원)를 대상으로 하며 대표 플랫폼은 Openstack, Cloudstack이 있습니다. 참고로 이 두 가지를 모두 활용하는 것을 하이브라이드라고 합니다. 당연히 보안이 중요한 시스템의 경우 프라이빗 클라우드에, 그 외 시스템은 퍼블릭 클라우드는 사용하겠죠. 

클라우드 컴퓨팅의 종류

<출처: cloudmoveon>

On-premise : 제공받는 것 없이 스스로 모든 것을 준비해야 하는 방식
IaaS(Infrastructure as a service) : 네트워크, 스토리지, 서버, 가상 환경 등 제공
PaaS(Platform as a service) : IaaS + 시스템 운영체제, 미들웨어(RDBMs 등), 런타임 추가 제공
SaaS(Software as a service) : IaaS + PaaS + 데이터, 애플리케이션 추가 제공

IaaS의 대표적인 예시는 AWS의 EC2 서버를 들 수 있습니다. PaaS에서 OS를 제공하는 형식과 헷갈릴 수 있는데, AWS EC2를 써보신 분들은 알겠지만 다양한 선택지 중에 사용자가 OS 종류(Linux, Ubuntu, CentOS 등)나 스펙(스토리지, ram 등)을 골라야 하기 때문에 IaaS로 분류됩니다.

PaaS는 사용자가 애플리케이션 자체에만 집중할 수 있도록 소스코드만 적어서 빌드하게 한 것입니다. 미들웨어는 오라클이나 MySQL과 같은 DB를 가리키고, 런타임은 Java나 node.js, Python와 같은 프로그램이 작동하는 환경을 의미합니다. PaaS는 이들을 미리 깔아놓고, 소스코드를 넣어 돌리는 구조로 컴파일은 클라우드에서 하고 결과만 가져오는 방식입니다. 대표적인 예시로 Heroku, Google App Engine, 그리고 이번에 슬랙을 인수한 SalesForce가 있습니다. 

SaaS는 이미 일반인들에게 너무 익숙한 서비스라 인지를 미처 못했을 수도 있습니다. 우리가 많이 들어본 구글 애널리틱스, 협업 툴(MS Office, 구글 닥스), 웹 메일, 드롭박스, 네이버 클라우드 등이 모두 SaaS 형태의 서비스입니다. 인터넷이 연결되어 있고, 애플리케이션을 사용할 수 있는 특성 환경만 갖춘다면 언제든 활용할 수 있습니다. 프로젝트를 하다 보면 쉽게 접하는 각종 API 역시 이에 해당합니다. 

클라우드는 요리다!

지금까지 내용이 다소 이해하기 어려우신 분들을 위해 요리를 예시로 설명드리겠습니다. 

On-premise : 가스레인지, 프라이팬 등 각종 요리 도구부터 재료, 조리, 세팅까지 모든 것을 구입 및 관리
Iaas : 가스레인지, 프라이팬 등 기본적인 요리 도구 제공 ex) 펜션, 리조트 
PaaS : 요리 도구 + 각종 재료(소금, 야채, 고기, 쌀 등) 추가 제공 ex) 일반 가정집 에어비엔비
SaaS : 요리 도구 + 각종 재료 + 조리 및 세팅 서비스 추가 제공 ex) 레스토랑 식사, 배달

요리 설명 예시로 클라우드 컴퓨팅 개념에 대해 감을 좀 잡으셨나요?

SaaS는 정말 돈만 지불하면 바로 음식을 먹을 수 있는 상황입니다. 대신 어떤 음식을 먹을지, 어떤 맛을 선택할지 정도는 스스로 알고 있어야겠죠. 반면, PaaS는 재료가 있으면 요리할 수준이 되어야 합니다. 특정 요리 도구와 재료가 있을 때 내가 무엇을 요리할 수 있어야 정해야 하고 실제 요리를 해야 하는 것이죠. 

IaaS는 기본적인 요리 도구들만 있는 상태에서 내가 무엇을 먹고 싶은지, 그걸 요리하기 위해선 어떤 재료가 필요한지 등을 정하고 실제 준비가 완료되면 요리까지 해야 합니다. On-premise는 처음부터 끝까지 내가 계획을 짜고 요리를 하고 세팅까지 해야하겠죠. 

사실 IaaS, PaaS, SaaS 이외에도 XaaS 형태와 같이 X에 어떠한 것이 오느냐에 따라 종류가 다양합니다. BaaS(Backend as a service), FaaS(Function as a service), AIaaS(AI as a service) 등이 있으며 최근에 부상하고 있는 Serverless 역시 존재합니다. 이 부분에 대해선 저도 공부가 필요하기 때문에 기회가 된다면 이후 글에서 소개해드리겠습니다:)

<출처: Sam Solutions>

마지막으로 클라우드 컴퓨팅의 장점과 주의사항을 요약 버전으로 설명드리겠습니다.

- 장점

1. 클라우드 서비스는 사용한 만큼 지불하는 종량제 서비스입니다.
2. 인프라 준비가 늦어져 사업의 시기를 놓치는 경우가 줄어듭니다.
3. 소규모로 갖추기 어려운 용량과 속도, 강화된 보안, 최신 기술(AI)을 이용할 수 있습니다.
4. 물리적인 구성에 얽매이지 않는 논리적 구성을 하고, 변화 관리에 집중합니다.
5. 빠른 속도로 글로벌 서비스를 시작하고, 운영 부담없이 해외 인프라 사용(백업 등)이 가능합니다.

- 주의사항

1. 선택하는 클라우드 서비스의 상품들에 대해 잘 알아야 합니다.
2. 데이터 통제와 보안 설정을 더욱 세밀하게 확인합니다.
3. 클라우드에 맞는 시스템 구성 및 최적화가 필요합니다.
4. 가능한 클라우드 사업자 중립적인 구성으로 시작해야 하며, 최근 Multi-Cloud 전략도 많이 도입되고 있습니다. 

IoT, 빅데이터, AI, 블록체인 기업 환경뿐만 아니라 인간의 삶을 바꾸고 있는 기술들이 모두 클라우드를 기반으로 합니다. 각종 디바이스에서 초단위로 수집되는 수많은 데이터를 빠른 속도로 처리하고, 예상치 못한 트래픽도 유연하게 대처하는 역할을 해주기 때문입니다.

국내, 해외 클라우드 시장 현황을 한눈에 살펴보시려면 다음 글을 참고해주세요!

728x90
반응형