IaaS, Paas, SaaS 란?
간단히 설명하면 클라우드 서비스 컴퓨팅의 종류를 말합니다.
IaaS (Infrastructure as a Service)
- 서버를 운영하기 위해서는 서버 자원, IP, Network, Storage, 전력 등등 인프라를 구축하기 위해 여러가지가 필요합니다. Iaas는 이러한 것들을 가상의 환경에서 쉽고 편하게 이용할 수 있게 서비스 형태로 제공합니다.
- 컴퓨터로 비유하자면 하드웨어만 제공해주는 서비스.
운영체제부터 상위의 모든 플랫폼이나 어플리케이션을 사용자가 직접 올릴 수 있습니다.
고객은 여전히 직접 OS와 어플리케이션을 직접 관리해야 합니다.
앱을 개발하여 제공하기에 앞서 먼저 인프라를 설정할 필요가 없으므로 IaaS를 사용할 경우 사용자에게 앱을 더 빠르게 제공할 수 있습니다.
IaaS를 사용하면 소프트웨어와 하드웨어를 유지 관리하고 업그레이드하거나 장비 문제를 해결할 필요가 없습니다.
ex) AWS, ASURE, UCloud
PaaS(Platform as a Service)
- 컴퓨터, 운영체제, 플랫폼까지 제공합니다.
- 서버, 저장소, 네트워킹 등의 인프라뿐만 아니라 미들웨어, 개발 도구, BI(비즈니스 인텔리전스) 서비스, 데이터베이스 관리 시스템 등도 포함되어 있습니다. PaaS는 빌드, 테스트, 배포, 관리, 업데이트의 완전한 웹 응용 프로그램 수명 주기를 지원하도록 디자인되었습니다.
- 네트워크 연결 인프라부터 어플리케이션 실행을 위한 런타임까지 제공되며, 사용자는 어플리케이션과 데이터만 관리합니다.
- 개발자와 개발사에게 인프라나 OS, 플랫폼관리에 대한 부담을 거의 대부분 경감시킵니다.
- 사용자는 필요한 플랫폼을 제공하고 어플리케이션을 제작하면 됩니다. 서비스를 개발할 수 있는 안정적인 환경과 필요한 API를 제공해 주기 때문에 사용자가 신경써야 하는 부분이 많이 줄어듭니다. 가장 이상적인 서비스라고 합니다.
- 실제 google app engine을 사용한 있는 Khan Academy 벤 카멘스, 리드 개발자는 서버셋업, 라우터설정 등에 시간을 쏟지 않고 실 서비스에 집중 할 수 있다는 장점을 들었다고 합니다.
- 그렇지만 IaaS를 사용하는 것보다는 비용이 더 든다고 합니다.
- 인터넷을 통해 개발 환경에 액세스하므로 개발 팀은 팀 멤버가 원격 위치에 있는 경우에도 프로젝트에 대해 함께 작업할 수 있습니다.
- PaaS는 같은 통합 환경 내에서 빌드, 테스트, 배포, 관리, 업데이트의 완전한 웹 응용 프로그램 수명 주기를 지원하는 데 필요한 모든 기능을 제공합니다.
ex) google app engine
SaaS(Software as a Service)
- Cloud환경에서 동작하는 응용프로그램을 서비스 형태로 제공하는 것을 Saas라고 합니다. 온라인에 거의 모든 서비스들이 해당됩니다.
- 노트북, PC, 스마트폰 등에 응용 소프트웨어가 설치되어 있지 않아도 인터넷을 통해 접속하여 응용소프트웨어를 사용할 수 있는 환경입니다.
- 사용자는 이 시스템이 무엇으로 이루어져 있고 어떻게 동작 하고 있는지 알 필요가 없습니다.
- 서비스 제공의 관점에서 볼때 철저한 소비를 목적으로 합니다.
- 서비스 사용자에게 추가적인 개발이나 데이터에 대한 추가적인 부담을 씌우지 않습니다.
- 각 고객 사이트가 아닌 중앙의 위치에서 활동을 관리하고, 고객이 웹을 통해 애플리케이션에 접근하도록 하는 특징이 있습니다.
- 사용자에게 SaaS 앱을 제공하기 위해 하드웨어, 미들웨어 또는 소프트웨어를 구매, 설치, 업데이트 또는 유지 관리할 필요가 없습니다. SaaS를 사용할 경우 필요한 인프라 및 소프트웨어를 구입, 배포 및 관리하는 리소스가 부족한 조직에서도 경제적 부담 없이 정교한 엔터프라이즈 응용 프로그램(예: ERP 및 CRM)을 사용할 수 있습니다.
ex) gmail, naver mail, google drive, dropbox
'note' 카테고리의 다른 글
g++: command not found 에러 (0) | 2019.09.05 |
---|---|
node.js version 관리 n 버전 변경 안되는 현상 (2) | 2019.09.04 |
Cent OS 7에 MySql 설치하기 (0) | 2017.04.09 |
AWS에 Cent OS7 셋팅하기 (0) | 2017.04.09 |
객체지향설계 5대 원칙(SOLID) 중 인터페이스 분리 원칙(ISP) (0) | 2017.02.12 |