이전 포스팅에서는 클라우드 컴퓨팅의 기본 개념과 흥미로운 사실들을 소개해 드렸습니다. 하지만 새로운 기술을 제대로 활용하려면 그것만으로는 충분하지 않습니다. 클라우드 컴퓨팅은 언뜻 보면 '개인 저장 공간을 확보하고, 데이터를 저장한 뒤, 다른 사람들과 손쉽게 공유하는 것'처럼 단순해 보입니다.
그러나 클라우드 컴퓨팅은 단순히 새로운 기술이라기보다는 컴퓨터 자원을 전달하는 방식의 혁신입니다. 조직이 정보와 서비스를 제공하는 방식에 큰 변화를 가져왔으며, 그 유연성은 수요에 따른 자원 할당에서 비롯됩니다. 덕분에 특정 작업에 별도의 하드웨어를 배정할 필요 없이 시스템의 누적 자원을 효율적으로 사용할 수 있습니다. 클라우드 컴퓨팅의 등장 이후, 자원은 특정 시스템에서 실행되는 웹사이트나 서버 기반 애플리케이션이 아닌 하나로 통합된 가상 컴퓨터처럼 활용됩니다.
클라우드 컴퓨팅은 초기 IT 메인프레임과 유사한 면이 있지만 여러 면에서 다르며, 모든 신기술에는 고유한 언어가 존재합니다. 새로운 기술을 다룰 때는 해당 분야의 용어와 개념을 정확히 이해하는 것이 무엇보다 중요합니다.
클라우드 컴퓨팅 핵심 용어 정리
1. SaaS (Software as a Service)
SaaS는 서비스형 소프트웨어를 의미하는 소프트웨어 배포 모델입니다. 제3자 공급업체가 애플리케이션을 호스팅하고 인터넷을 통해 고객에게 제공하는 방식으로, 소프트웨어를 구독(subscription) 기반으로 라이선스하고 중앙에서 호스팅하는 라이선스 및 전달 모델입니다. 대표적인 예로 구글 워크스페이스(Google Workspace), 마이크로소프트 365(Microsoft 365), 세일즈포스(Salesforce) 등을 들 수 있습니다.
2. PaaS (Platform as a Service)
PaaS는 인터넷을 통해 애플리케이션 개발 및 실행 환경을 제공하는 클라우드 컴퓨팅 모델입니다. 이미 배포되고 구성된 IT 자원으로 이루어진 '바로 사용 가능한(ready-to-use)' 환경을 의미합니다. PaaS 공급자는 자체 인프라에 하드웨어와 소프트웨어를 호스팅하며, 미리 패키징된 제품과 도구들의 집합을 통해 사용자 지정 애플리케이션의 전체 개발 라이프사이클을 지원합니다. 대표적인 예로 헤로쿠(Heroku), 구글 앱 엔진(Google App Engine) 등이 있습니다.
3. IaaS (Infrastructure as a Service)
IaaS는 인터넷을 통해 가상화된 컴퓨팅 자원을 제공하는 클라우드 컴퓨팅 형태입니다. IaaS 모델에서는 제3자 공급자가 하드웨어, 소프트웨어, 서버, 스토리지 등 인프라 구성 요소를 대신 호스팅합니다. 또한 사용자의 애플리케이션을 호스팅하고 시스템 유지보수, 백업, 재해복구 계획 같은 작업까지 처리해 줍니다. AWS EC2, Microsoft Azure 등이 대표적인 사례입니다.
4. 퍼블릭 클라우드 (Public Cloud)
퍼블릭 클라우드는 표준 클라우드 컴퓨팅 모델을 기반으로 하는 형태로, 서비스 공급자가 애플리케이션과 스토리지 같은 자원을 인터넷을 통해 일반 대중에게 제공합니다. 우리가 흔히 말하는 '클라우드'가 바로 이 퍼블릭 클라우드를 의미합니다. 즉, 오프사이트(off-site)의 제3자 공급자가 웹 애플리케이션을 통해 공유 자원을 동적으로 프로비저닝하고, 유틸리티 컴퓨팅 방식으로 과금하는 서비스입니다.
5. 프라이빗 클라우드 (Private Cloud)
프라이빗 클라우드는 기업의 방화벽 내부에 존재하며 조직이 직접 관리하는 클라우드입니다. 기업 내부에서 직접 만들고 통제하는 클라우드 서비스로, 조직의 여러 부서, 위치, 부문들이 IT 자원에 접근할 수 있도록 중앙화하는 수단으로 활용됩니다. 프라이빗 클라우드는 독점적으로 사용할 수 있는 전용 인스턴스를 제공하기 때문에 보안과 접근 통제가 용이합니다.
6. 하이브리드 클라우드 (Hybrid Cloud)
하이브리드 클라우드는 온프레미스(on-premises), 프라이빗 클라우드, 제3자 퍼블릭 클라우드 서비스를 결합하고 두 플랫폼 간 오케스트레이션(orchestration)을 적용한 클라우드 환경입니다. 관리 책임은 퍼블릭 클라우드 공급자와 기업 자체로 나뉘며, 조직은 생성하려는 서비스의 목표와 요구사항에 따라 가장 적합한 대안을 선택하여 활용할 수 있습니다.
7. 커뮤니티 클라우드 (Community Cloud)
커뮤니티 클라우드는 접근 권한이 특정 커뮤니티의 클라우드 소비자들로 제한된다는 점을 제외하면 퍼블릭 클라우드와 유사합니다. 커뮤니티 회원들이 공동으로 소유하거나, 제한된 접근 권한의 퍼블릭 클라우드를 제공하는 제3자 클라우드 공급자가 운영할 수 있습니다. 커뮤니티의 클라우드 소비자들은 일반적으로 커뮤니티 클라우드의 정의와 발전에 대한 책임을 함께 공유합니다.
8. 개인용 클라우드 스토리지 (Personal Cloud Storage)
개인용 클라우드 스토리지는 개인이 데이터, 사진, 영상 등 각종 파일을 저장할 수 있는 서버 공간을 제공하는 온라인 웹 서비스입니다. 많은 서비스 제공업체들이 무료로 제한된 용량의 저장 공간을 제공하고, 사용자가 서비스에 익숙해지면 백업이나 아카이빙을 위해 추가 용량을 구매하도록 유도하는 전략을 사용합니다. 드롭박스(Dropbox), 구글 드라이브(Google Drive) 등이 대표적입니다.
9. 익스터널 클라우드 (External Cloud)
익스터널 클라우드는 조직의 물리적 경계 외부에 존재하는 클라우드 솔루션입니다. 조직의 자산 내부에 위치하지 않기만 하면 프라이빗, 퍼블릭, 커뮤니티 기반 어떤 형태든 가능하며, 퍼블릭 클라우드와 유사하지만 구현 방식에서 차이가 있습니다.
익스터널 클라우드는 내부 클라우드나 IT 인프라 자원과 연계하여 거의 모든 비즈니스 요구에 활용할 수 있는 클라우드 솔루션을 조달하는 방식을 말합니다. 전송 형태도 다양해서, 예를 들어 조직이 자체 물리 서버를 클라우드 벤더의 코로케이션(co-location) 시설에 설치하고 호스팅하는 형태도 가능합니다.
10. 버티컬 클라우드 (Vertical Cloud)
버티컬 클라우드는 특정 산업 분야(vertical)나 특정 애플리케이션 용도에 맞춰 클라우드 컴퓨팅과 클라우드 서비스를 최적화한 것을 의미합니다. 클라우드 공급자는 해당 산업의 사용 사례와 규격에 가장 적합한 전문 기능과 옵션을 제공합니다. 현재 헬스케어 클라우드가 가장 잘 정립된 버티컬 클라우드 중 하나입니다. 버티컬 클라우드를 활용하면 조직의 요구에 맞는 기능, 자원, 애플리케이션별 요건을 갖춘 애플리케이션을 구축할 수 있습니다.
11. 가상 프라이빗 클라우드 (Virtual Private Cloud)
VPC는 퍼블릭 클라우드 환경 안에 할당된, 주문형으로 구성 가능한 공유 컴퓨팅 자원 풀(pool)입니다. 자원을 사용하는 여러 조직 간에 일정 수준의 격리(isolation)를 제공합니다.
VPN(가상 사설망)이 공용 인터넷을 통해 안전한 데이터 전송을 보장하듯이, VPC는 사설 기업과 퍼블릭 클라우드 공급자 간의 안전한 데이터 전송을 보장합니다. 전송 중인 데이터와 클라우드 공급자 네트워크 내부의 데이터 모두 각 고객의 데이터가 다른 고객의 데이터와 격리되도록 합니다.
12. 클라우드 버스트 (Cloud Bursting)
클라우드 버스팅은 하이브리드 클라우드에서 필요에 따라 프라이빗 클라우드에 추가 자원을 제공하는 기법입니다. 프라이빗 클라우드가 자체 처리 능력으로 워크로드를 감당할 수 있다면 하이브리드 클라우드는 사용되지 않습니다. 참고로 '클라우드버스트(cloudburst)'라는 용어는 부정적 의미와 긍정적 의미 두 가지로 사용됩니다.
- 클라우드버스트 (부정적): 급증하는 수요를 감당하지 못해 클라우드 컴퓨팅 환경이 실패하는 경우
- 클라우드버스트 (긍정적): 수요 급증에 대응하기 위해 조직 내부 컴퓨팅 자원에서 실행 중인 애플리케이션을 퍼블릭 클라우드로 동적으로 배포하는 것
마무리하며
이번 글에서는 클라우드 컴퓨팅의 가장 기본적인 용어들을 살펴보았습니다. 클라우드 컴퓨팅은 조직에 재무적 안정성과 고품질 서비스를 보장하는 수단과 방법을 제공할 수 있습니다. 그리고 그러한 혜택을 온전히 누리기 위해서는 이 새로운 언어, 즉 용어 체계를 정확히 이해하는 것이 매우 중요합니다. 다음 포스팅에서는 더욱 심화된 클라우드 컴퓨팅 기술 용어들을 소개해 드리겠습니다.