2019.07.23

“개발자를 위한 풀 서비스 클라우드” PaaS의 이해

Bob Violino | InfoWorld
클라우드를 통해 제공하는 애플리케이션 개발 플랫폼인 PaaS는 개발자가 코딩에만 집중할 수 있도록 더 큰 유연성과 더 적은 오버헤드를 가져다준다.

PaaS(Platform as a Service)는 클라우드 컴퓨팅의 한 종류로, 서비스 업체가 고객에게 플랫폼을 제공한다. 고객은 이 플랫폼을 이용해 비즈니스 애플리케이션을 개발하고 실행하고 관리하며, 전형적인 소프트웨어 개발 프로세스에 필요한 인프라를 구축하고 관리할 필요가 없다.
 
ⓒ GettyImagesBank

PaaS 아키텍처는 개발자나 다른 사용자의 눈에는 보이지 않는 기저의 인프라를 제공하기 때문에 모델은 서버리스 컴퓨팅이나 FaaS(Function as a Service)의 개념과 비슷하다. 클라우드 서비스 업체가 서버를 프로비저닝하고 실행하며, 자원의 할당을 관리한다.

FaaS는 서버리스 컴퓨팅의 한 형태로, 기업이 별도의 이벤트 중심 기능을 개발하고 실행할 수 있다. 역시 애플리케이션개발과 실행에 필요한 복잡한 인프라의 구축과 관리가 필요없다.

PaaS와 서버리스 컴퓨팅은 보통 실제로 소비되는 컴퓨트와 스토리지, 네트워크 자원에만 과금한다. FaaS의 경우는 좀 더 극단적으로, 기능이 실행될 때에만 과금하기 때문에 간헐적인 작업에는 FaaS가 더 자연스러운 선택이다.
 

모두가 클라우드 패밀리

IaaS(Infrastructure as a Service)나 SaaS(Software as a Service)와 마찬가지로 PaaS 역시 클라우드 서비스 업체가 호스팅하는 인프라를 통해 제공된다. 사용자는 보통 웹 브라우저를 통해 PaaS 서비스에 액세스한다.

PaaS는 퍼블릭 클라우드로도 프라이빗 클라우드로도, 아니면 하이브리드 클라우드로도 제공할 수 있다. 퍼블릭 클라우드 PaaS를 이용하면 고객은 소프트웨어 배치만 제어하고 애플리케이션 호스팅에 필요한 나머지 주요 IT 구성요소, 즉 서버와 스토리지 시스템, 네트워크, 운영체제, 데이터베이스는 모두 클라우드 서비스 업체가 맡는다.

프라이빗 클라우드 환경에서 PaaS는 고객 파이어월 내, 즉 기업의 온프레미스 데이터센터 내에서 소프트웨어나 어플라이언스로 제공된다. 하이브리드 클라우드 환경의 PaaS는 이 두 가지 클라우드 서비스가 혼합된 방식으로 제공된다.

PaaS는 소프트웨어 개발에 필요한 기업의 전체 IT 인프라를 대체하기보다는 애플리케이션 호스팅이나 자바 개발과 같은 핵심 서비스를 제공한다. 일부 PaaS 서비스에는 애플리케이션 설계나 개발, 테스트, 배치도 포함되어 있다. PaaS 서비스는 또한 웹 서비스 통합이나 개발팀 협업, 데이터베이스 통합, 정보 보안 등을 함께 제공한다.

다른 클라우드 서비스도 마찬가지로 고객은 사용량을 기반으로 비용을 지급하며, 일부 서비스 업체는 단순한 월간 요금제를 운용하는 경우도 있다.
 

PaaS의 이점

PaaS의 가장 큰 이점 중 하나는 기업이 서버나 데이터베이스 같은 인프라를 새로 구축하고 유지하는 데 돈과 시간을 들이지 않고 새로운 애플리케이션을 개발하고 배치할 환경을 얻을 수 있다는 것이다. 이는 애플리케이션의 신속한 개발과 전달로 이어져 경쟁력을 얻고자 하거나 제품을 신속하게 시장에 출시하고자 하는 기업에 막대한 이점을 가져다준다. 

PaaS는 또한 지원 인프라를 구축할 필요가 없기 때문에 새로운 언어나 운영체제, 데이터베이스, 기타 개발 기술을 신속하게 테스트할 수 있다. 툴을 업그레이드하기도 더 쉽고 빠르다.

기업 개발자가 애플리케이션에서 클라우드 기법을 사용할 수 있다는 부가적인 이점도 있다. 최신 애플리케이션 원칙을 받아들여 추후 IaaS 플랫폼의 이점을 좀 더 잘 활용할 수 있다.

PaaS를 사용하는 기업은 자사의 애플리케이션과 데이터를 관리할 수 있기 때문에 클라우드 인프라나 애플리케이션을 사용할 때 종종 불거지는 통제권 상실 문제도 일어나지 않는다.
 

PaaS 애플리케이션

애플리케이션 개발과 테스트, 배치를 위한 호스팅 환경을 제공하는 것은 PaaS의 가장 일반적인 용도이다. 하지만 기업이 PaaS를 이용하는 유일한 목적은 아니다. 가트너는 PaaS의 사용례를 다음과 같이 제시한다.

API 개발 및 관리. 기업의 API와 마이크로서비스의 개발 및 구동, 관리, 보안에 PaaS를 이용할 수 있다. 엔드 투 엔드 API 관리는 물론, 새로운 API나 기존 API를 위한 새 인터페이스 제작도 포함되어 있다.
비즈니스 분석/인텔리전스. PaaS를 통해 제공되는 툴은 기업이 자사 데이터를 분석해 비즈니스 인사이트와 행동 패턴을 찾을 수 있도록 해준다. 기업은 좀 더 나은 의사결정, 좀 더 정확한 미래 이벤트 예측이 가능하다.
BPM. 기업은 PaaS를 서비스 방식으로 제공되는 BPM 플랫폼으로 이용할 수 있다. BPM 스위트는 데이터부터 비즈니스 규칙, SLA 등 프로세스 관리에 필요한 IT 구성요소를 통합한다.
커뮤니케이션. PaaS는 또한 커뮤니케이션 플랫폼을 위한 전달 메커니즘으로 사용할 수 있다. 개발자는 음성이나 비디오, 메시징 등의 커뮤니케이션 기능을 애플리케이션에 추가할 수 있다.
데이터베이스. PaaS 서비스 업체는 기업의 데이터베이스를 설정하고 관리하는 등의 데이터베이스 관련 서비스를 제공할 수 있다. 포레스터 리서치는 데이터베이스 PaaS를 “온디맨드 방식의 확장 가능한 셀프서비스 데이터베이스 플랫폼으로, 데이터베이스의 프로비저닝과 관리를 자동화하고 개발자는 물론 비기술 인력도 사용할 수 있다”고 정의했다.
IoT. IoT는 조만간 PaaS 활용에서 큰 비중을 차지할 것으로 보인다. IoT 배치에 사용하는 다양한 범위의 애플리케이션 환경과 프로그래밍 언어, 툴을 지원하기 때문이다.
MDM(Master Data Management). 기업이 보유한 핵심 비즈니스 데이터를 관리하는 프로세스와 거버넌스, 정책, 표준, 툴에 관한 것으로, 데이터에 대한 단일 지점 레퍼런스를 제공한다. 이런 데이터에는 고객 트랜잭션에 대한 정보나 데이터 분석부터 의사결정을 지원하는 정보와 같은 레퍼런스 데이터가 포함되어 있다.
 

PaaS 기술

PaaS는 다양한 기반 클라우드 인프라 구성요소로 이루어지는데, 서버부터 네트워킹 장비, 운영체제, 스토리지 서비스, 미들웨어, 데이터베이스 등이다. 이들 기술은 모두 서비스 업체가 보유하고 운영하고 구성하고 유지보수한다. 이런 완전 관리형 인프라 서비스는 고객의 IT 관리 부담을 덜어줄 뿐만 아니라 재무적인 관점에서도 매력적인 요소를 제시한다. 즉 필요하지만 활용도가 높지는 않은 IT 구성요소에 대한 투자를 피할 수 있다.

PaaS에는 또한 개발 툴이나 프로그래밍 언어, 라이브러리, 데이터베이스 관리 시스템, 기타 툴 등을 클라우드 서비스 업체로부터 제공받는다.
 



2019.07.23

“개발자를 위한 풀 서비스 클라우드” PaaS의 이해

Bob Violino | InfoWorld
클라우드를 통해 제공하는 애플리케이션 개발 플랫폼인 PaaS는 개발자가 코딩에만 집중할 수 있도록 더 큰 유연성과 더 적은 오버헤드를 가져다준다.

PaaS(Platform as a Service)는 클라우드 컴퓨팅의 한 종류로, 서비스 업체가 고객에게 플랫폼을 제공한다. 고객은 이 플랫폼을 이용해 비즈니스 애플리케이션을 개발하고 실행하고 관리하며, 전형적인 소프트웨어 개발 프로세스에 필요한 인프라를 구축하고 관리할 필요가 없다.
 
ⓒ GettyImagesBank

PaaS 아키텍처는 개발자나 다른 사용자의 눈에는 보이지 않는 기저의 인프라를 제공하기 때문에 모델은 서버리스 컴퓨팅이나 FaaS(Function as a Service)의 개념과 비슷하다. 클라우드 서비스 업체가 서버를 프로비저닝하고 실행하며, 자원의 할당을 관리한다.

FaaS는 서버리스 컴퓨팅의 한 형태로, 기업이 별도의 이벤트 중심 기능을 개발하고 실행할 수 있다. 역시 애플리케이션개발과 실행에 필요한 복잡한 인프라의 구축과 관리가 필요없다.

PaaS와 서버리스 컴퓨팅은 보통 실제로 소비되는 컴퓨트와 스토리지, 네트워크 자원에만 과금한다. FaaS의 경우는 좀 더 극단적으로, 기능이 실행될 때에만 과금하기 때문에 간헐적인 작업에는 FaaS가 더 자연스러운 선택이다.
 

모두가 클라우드 패밀리

IaaS(Infrastructure as a Service)나 SaaS(Software as a Service)와 마찬가지로 PaaS 역시 클라우드 서비스 업체가 호스팅하는 인프라를 통해 제공된다. 사용자는 보통 웹 브라우저를 통해 PaaS 서비스에 액세스한다.

PaaS는 퍼블릭 클라우드로도 프라이빗 클라우드로도, 아니면 하이브리드 클라우드로도 제공할 수 있다. 퍼블릭 클라우드 PaaS를 이용하면 고객은 소프트웨어 배치만 제어하고 애플리케이션 호스팅에 필요한 나머지 주요 IT 구성요소, 즉 서버와 스토리지 시스템, 네트워크, 운영체제, 데이터베이스는 모두 클라우드 서비스 업체가 맡는다.

프라이빗 클라우드 환경에서 PaaS는 고객 파이어월 내, 즉 기업의 온프레미스 데이터센터 내에서 소프트웨어나 어플라이언스로 제공된다. 하이브리드 클라우드 환경의 PaaS는 이 두 가지 클라우드 서비스가 혼합된 방식으로 제공된다.

PaaS는 소프트웨어 개발에 필요한 기업의 전체 IT 인프라를 대체하기보다는 애플리케이션 호스팅이나 자바 개발과 같은 핵심 서비스를 제공한다. 일부 PaaS 서비스에는 애플리케이션 설계나 개발, 테스트, 배치도 포함되어 있다. PaaS 서비스는 또한 웹 서비스 통합이나 개발팀 협업, 데이터베이스 통합, 정보 보안 등을 함께 제공한다.

다른 클라우드 서비스도 마찬가지로 고객은 사용량을 기반으로 비용을 지급하며, 일부 서비스 업체는 단순한 월간 요금제를 운용하는 경우도 있다.
 

PaaS의 이점

PaaS의 가장 큰 이점 중 하나는 기업이 서버나 데이터베이스 같은 인프라를 새로 구축하고 유지하는 데 돈과 시간을 들이지 않고 새로운 애플리케이션을 개발하고 배치할 환경을 얻을 수 있다는 것이다. 이는 애플리케이션의 신속한 개발과 전달로 이어져 경쟁력을 얻고자 하거나 제품을 신속하게 시장에 출시하고자 하는 기업에 막대한 이점을 가져다준다. 

PaaS는 또한 지원 인프라를 구축할 필요가 없기 때문에 새로운 언어나 운영체제, 데이터베이스, 기타 개발 기술을 신속하게 테스트할 수 있다. 툴을 업그레이드하기도 더 쉽고 빠르다.

기업 개발자가 애플리케이션에서 클라우드 기법을 사용할 수 있다는 부가적인 이점도 있다. 최신 애플리케이션 원칙을 받아들여 추후 IaaS 플랫폼의 이점을 좀 더 잘 활용할 수 있다.

PaaS를 사용하는 기업은 자사의 애플리케이션과 데이터를 관리할 수 있기 때문에 클라우드 인프라나 애플리케이션을 사용할 때 종종 불거지는 통제권 상실 문제도 일어나지 않는다.
 

PaaS 애플리케이션

애플리케이션 개발과 테스트, 배치를 위한 호스팅 환경을 제공하는 것은 PaaS의 가장 일반적인 용도이다. 하지만 기업이 PaaS를 이용하는 유일한 목적은 아니다. 가트너는 PaaS의 사용례를 다음과 같이 제시한다.

API 개발 및 관리. 기업의 API와 마이크로서비스의 개발 및 구동, 관리, 보안에 PaaS를 이용할 수 있다. 엔드 투 엔드 API 관리는 물론, 새로운 API나 기존 API를 위한 새 인터페이스 제작도 포함되어 있다.
비즈니스 분석/인텔리전스. PaaS를 통해 제공되는 툴은 기업이 자사 데이터를 분석해 비즈니스 인사이트와 행동 패턴을 찾을 수 있도록 해준다. 기업은 좀 더 나은 의사결정, 좀 더 정확한 미래 이벤트 예측이 가능하다.
BPM. 기업은 PaaS를 서비스 방식으로 제공되는 BPM 플랫폼으로 이용할 수 있다. BPM 스위트는 데이터부터 비즈니스 규칙, SLA 등 프로세스 관리에 필요한 IT 구성요소를 통합한다.
커뮤니케이션. PaaS는 또한 커뮤니케이션 플랫폼을 위한 전달 메커니즘으로 사용할 수 있다. 개발자는 음성이나 비디오, 메시징 등의 커뮤니케이션 기능을 애플리케이션에 추가할 수 있다.
데이터베이스. PaaS 서비스 업체는 기업의 데이터베이스를 설정하고 관리하는 등의 데이터베이스 관련 서비스를 제공할 수 있다. 포레스터 리서치는 데이터베이스 PaaS를 “온디맨드 방식의 확장 가능한 셀프서비스 데이터베이스 플랫폼으로, 데이터베이스의 프로비저닝과 관리를 자동화하고 개발자는 물론 비기술 인력도 사용할 수 있다”고 정의했다.
IoT. IoT는 조만간 PaaS 활용에서 큰 비중을 차지할 것으로 보인다. IoT 배치에 사용하는 다양한 범위의 애플리케이션 환경과 프로그래밍 언어, 툴을 지원하기 때문이다.
MDM(Master Data Management). 기업이 보유한 핵심 비즈니스 데이터를 관리하는 프로세스와 거버넌스, 정책, 표준, 툴에 관한 것으로, 데이터에 대한 단일 지점 레퍼런스를 제공한다. 이런 데이터에는 고객 트랜잭션에 대한 정보나 데이터 분석부터 의사결정을 지원하는 정보와 같은 레퍼런스 데이터가 포함되어 있다.
 

PaaS 기술

PaaS는 다양한 기반 클라우드 인프라 구성요소로 이루어지는데, 서버부터 네트워킹 장비, 운영체제, 스토리지 서비스, 미들웨어, 데이터베이스 등이다. 이들 기술은 모두 서비스 업체가 보유하고 운영하고 구성하고 유지보수한다. 이런 완전 관리형 인프라 서비스는 고객의 IT 관리 부담을 덜어줄 뿐만 아니라 재무적인 관점에서도 매력적인 요소를 제시한다. 즉 필요하지만 활용도가 높지는 않은 IT 구성요소에 대한 투자를 피할 수 있다.

PaaS에는 또한 개발 툴이나 프로그래밍 언어, 라이브러리, 데이터베이스 관리 시스템, 기타 툴 등을 클라우드 서비스 업체로부터 제공받는다.
 



X