27
0 오픈소스 PaaS 분석 종합 2014. 7. 30.() 보국 PM ㈜크로센트

[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

Embed Size (px)

DESCRIPTION

[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

Citation preview

Page 1: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

0

오픈소스 PaaS 분석 종합 2014. 7. 30.(수)

서 보국 PM ㈜크로센트

Page 2: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

발표 순서

1. 개요

2. 기술 분석

• 아키텍처 • 소스코드 • PaaS 설치 • App 설치 • 로드밸런싱 • 멀티테넌시 • 확장성

3. 라이선스 분석

4. 확장·신규 개발 범위 분석

Page 3: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

2

Open PaaS 동향 1. 개요

오픈소스 클라우드 사용 경험 클라우드 서비스 사용 경험

클라우드 서비스 개발을 위해 PaaS 사용 Cloud Foundry, OpenShift 활용률이 높음

58% 52%

47%

PaaS IaaS Cloud Storage

47%

43%

36%

14%

14%

11%

OPENSTACK

CLOUD FOUNDRY

OTHER

CLOUDSTACK

APACHE STRATOS

OPENSHIFT

IT 전문가 600여명 설문 결과, Cloud Foundry와 OpenShift의 활용률이 높음 (Dzone, 2014)

Page 4: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

3

프로토타입

아키텍처

구분

산출물

전자정부 표준프레임워크 개발 프레임워크 클라우드화

비즈니스 아키텍처

7월 8월 9월 10월 11월 12월

서비스 아키텍처

데이터 아키텍처

인터페이스 아키텍처

비기능 아키텍처

전자정부 표준프레임워크 공통 컴포넌트 클라우드화

테스트 케이스 작성

Gap 분석

개방형

클라우드

아키텍처

비즈니스 아키텍처 오픈 플랫폼 분석서

서비스 아키텍처 라이선스 / 운영 시나리오

데이터 아키텍처 e-Gov F/W 방안 수립서

인터페이스 아키텍처

비기능 아키텍처 e-Gov F/W 컴포넌트

방안 수립서

개방형 클라우드 아키텍처

6월 5월 4월

현황분석서 환경분석서

오픈 소스 환경 분석

현황분석 환경분석 라이선스 분석

CloudFoudry 상세기능 분석

OpenShift 상세기능 분석

소스 분석 환경 구성

OpenShift 아키텍처 분석

CloudFoundry 아키텍처 분석

사업계획서

과제 추진 현황 1. 개요

Page 5: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

4

CLOUD FOUNDRY vs. OPENSHIFT 2. 기술분석

구분 CLOUD FOUNDRY OPENSHIFT

아키텍처 • 작은 단위의 여러 개의 컴포넌트로 구성 • 2 개의 주요 컴포넌트로 구성

소스 저장구조 • 하나의 소스 저장 구조로 구성 • 다수의 소스 저장 구조로 구성

PaaS 설치 • BOSH를 통한 설치 • IaaS 환경 필수적임

• 리눅스/가상머신을 통한 설치 • IaaS 환경이 선택적임

App 설치 • 컴파일 형태의(WAR) 저장 및 배포 • 소스코드 형태의 저장 및 배포

로드밸런싱 • 로드밸런싱 기능(Router) 내장 • 서비스(HA Proxy)를 통한 로드밸런싱

멀티테넌시 • DEA 및 데이터 단위 멀티테넌시 • Node 단위 멀티테넌시

확장성 • Buildpack을 통한 서비스 확장 • Cartridge를 통한 서비스 확장

Open Source PaaS 주요 차이점 요약

Page 6: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

5

아키텍처 비교분석 (1/2) 2. 기술분석

OPENSHIFT 아키텍처 CLOUD FOUNDRY 아키텍처

작은 단위의 여러 개의 컴포넌트로 구성 2 개의 주요 컴포넌트로 구성

컴포넌트 컴포넌트

Page 7: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

6

아키텍처 비교분석 (2/2) 2. 기술분석

OPENSHIFT 주요 컴포넌트 CLOUD FOUNDRY 주요 컴포넌트

NODE

BROKER

Message Subscriber

NODE Manager

Deployment Controller

Cartridge Controller

Log Controller

Gear Manager

Cloud Controller

Health Manager

DEA

Development Controller

Cloud Provider Interface

Service Broker

Messaging (NATS)

UAA Authentication Manager

Application Controller

Buildpack

Page 8: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

7

소스 저장구조 비교분석 2. 기술분석

하나의 소스 저장구조로 구성 다수의 소스 저장구조로 구성

OPENSHIFT 소스코드 구조 CLOUD FOUNDRY 소스코드 구조

CLOUD FOUNDRY (GIT)

SERVER (GIT)

GEARD (GIT)

RHC (GIT)

Page 9: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

8

PaaS 설치 비교분석 2. 기술분석

BOSH를 통한 설치 (IaaS 환경 필수) 리눅스/가상머신을 통한 설치 (IaaS 환경 선택)

① IaaS 환경 구성 (필수)

② 설치 환경 구성 (Ruby 환경 설정, Git 설치, DB 설치)

③ Micro BOSH SERVER 설치 (BOSH 설치 / 관리)

④ BOSH SERVER 설치 (IaaS 인터페이스)

⑤ CLOUD FOUNDRY 설치

① IaaS 환경 구성 (선택)

③ 설치 환경 구성 (Ruby 환경 설정, Git 설치, DB 설치)

② RHEL/RHEV 설치 (리눅스/가상머신)

④ OPENSHIFT 설치

OPENSHIFT 설치 순서 CLOUD FOUNDRY 설치 순서

Page 10: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

9

App 설치 비교분석 2. 기술분석

OPENSHIFT App 설치 CLOUD FOUNDRY App 설치

컴파일 형태의(WAR) 저장 및 배포 소스코드 형태의 저장 및 배포

CLOUD FOUNDRY

BLOB Store 저장소

WAR / 바이너리 WAR

DEA

Warden

Container

WAS

OPENSHIFT

NODE

Build Pack 환경구성

업로드

Bosh Push

Gear

GIT

소스 코드

WAS

WAR GIT 소스코드

Cartridge

환경구성

업로드

WAR

Page 11: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

10

로드밸런싱 비교분석 2. 기술분석

로드밸런싱 기능(Router) 내장 서비스(HA Proxy)를 통한 로드밸런싱

OPENSHIFT 로드밸런싱 CLOUD FOUNDRY 로드밸런싱

HA Proxy Cartridge 구성을 통한 서비스 방식의 로드밸런싱

Router Router NODE 자체 Router를

통한 로드밸런싱 Gear

HA Proxy

DEA

Waden Waden Waden

Waden Waden Waden

WAS WAS WAS

E-Gov F/W E-Gov F/W E-Gov F/W

DEA

Waden Waden Waden

Waden Waden Waden

WAS WAS WAS

E-Gov F/W E-Gov F/W E-Gov F/W

DEA NODE

Gear Gear Gear

Gear Gear Gear

WAS WAS WAS

E-Gov F/W E-Gov F/W E-Gov F/W

NODE

Gear Gear Gear

Gear Gear Gear

WAS WAS WAS

E-Gov F/W E-Gov F/W E-Gov F/W

NODE

Gear Gear Gear

Gear Gear Gear

APP APP APP

WAS WAS WAS

Warden

Container Container Container

WAS WAS WAS

Container Container Container

APP APP APP

Page 12: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

11

멀티테넌시 비교분석 2. 기술분석

DEA 및 데이터 단위 멀티테넌시 Node 단위 멀티테넌시

OPENSHIFT 멀티테넌시 CLOUD FOUNDRY 멀티테넌시

테넌트 테넌트 테넌트 테넌트 테넌트 테넌트

Services

DB

DEA

Service Instance

DB

Waden

WAS

Service Instance

DB

Waden

WAS

DEA

Service Instance

DB

Waden

WAS

Service Instance

DB

Waden

WAS

DEA

DEA

Service Instance

DB

Waden

WAS

Service Instance

DB

Waden

WAS

DEA

Service Instance

DB

Waden

WAS

Service Instance

DB

Waden

WAS

DEA

Node

Gear

WAS

Gear

WAS

DB DB

Gear

WAS

Gear

WAS

DB DB

Node

Gear

WAS

Gear

WAS

DB DB

Gear

WAS

Gear

WAS

DB DB

Node

Gear

WAS

Gear

WAS

DB DB

Gear

WAS

Gear

WAS

DB DB

Node

Gear

WAS

Gear

WAS

DB DB

Gear

WAS

Gear

WAS

DB DB

Node

Gear

WAS

Gear

WAS

DB DB

Gear

WAS

Gear

WAS

DB DB

Node

Gear

WAS

Gear

WAS

DB DB

Gear

WAS

Gear

WAS

DB DB

Warden

Service Instance

DB

Container

WAS

Service Instance

DB

Container

WAS

Warden

Service Instance

DB

Container

WAS

Service Instance

DB

Container

WAS

Page 13: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

12

확장성 비교분석 (1/2) 2. 기술분석

Buildpack을 통한 서비스 확장 Cartridge를 통한 서비스 확장

OPENSHIFT Cartridge CLOUD FOUNDRY Buildpack

Page 14: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

13

확장성 비교분석 (2/2) 2. 기술분석

구분 세부 구분 OpenShift Cloud

Foundry

WAS서버 미들웨어 Jboss, Tomcat,

Zend

Glassfish, Jboss, Jetty, Resin,

Tomcat, Zend

DBMS

MySQL O O

PostgreSQL O O

MongoDB O O

other NoSQL O O

Native Databases

MongoDB, MySQL,

PostGreSQL

MongoDB, MySQL,

PostGreSQL

Control Interface(API)

REST-based API 제공

RESTFul API 제공

Command Line, Graphical User

Interface

API, Command Line

소스코드 저장소

Git O O

개발 도구

Eclipse O O

Codenvy O O

Web Console O O

Command-line Tooling O O

구분 세부 구분 OpenShift Cloud

Foundry

지원언어

Java O O Python O O

C# ×∗ (O) O PHP O O

Javascript O O Node.js O O Ruby O O Perl O O

Ajax O O

기타 Go, Scala

프레임워크

JavaEE6 O O

Spring O O

Rails O O

Django O O

Sinatra O O

Bottle O O

Symfony O O

Zend O O

Grails O O

Seam O O

.Net ×∗ (O) O

기본 프레임워크 Django, Drupal,

Flask, Rails, Vert.x Play

지원되는 미들웨어, 개발도구, 지원언어 및 프레임워크

* OpenShift의 경우, C#, .Net은 올해 지원 예정 (OpenShift Online : http://www.openshift.com)

Page 15: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

14

공개SW 라이선스 개념 3. 라이선스분석

공개SW 라이선스는 개발자와 이용자간에 사용 방법 및 조건의 범위를 명시한 계약으로, 저작권 위반 시에는 이에 대한 처벌을 받게 됨

공개SW 개발자와 이용자간에

사용 방법 및 조건의 범위를 명시한 계약

• 공개SW를 이용하기 위해서는 공개SW 개발자가 만들어놓은 사용 방법 및 조건의 범위에 따라 해당 SW를 사용해야 함

• 위반할 경우에는 라이선스를 위반함과 동시에 저작권 침해로 인해서 이에 대한 처벌을 받게 됨

공개SW 라이선스 정의

공개SW 라이선스 정의와 특징

• 오픈소스 SW 라이선스는 기본적으로 사용자의 자유로운 사용∙수정∙배포를 보장하며 그에 따른 라이선스 별 일정 의무를 준수 해야 함

개발자 이용자

소스코드의 제공

일정 Rule의 준수 의무

사용, 복제, 배포, 수정의 자유

오픈소스 커뮤니티

< 오픈소스SW 라이선스 모델 >

Page 16: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

15

공개SW 라이선스 현황(1/2) 3. 라이선스분석

자주 사용되는 공개SW 라이선스 Top 20

자주 사용되는 상위 10개 공개SW 라이선스는 전체 오픈소스 라이선스 중 약 90%를 차지하고 그 중 GPL과 Apache를 가장 많이 사용함

* 출처: 공개SW 라이선스 가이드(정보통신산업진흥원, 2014)

Rank 라이선스 명 점유율

1. GNU General Public License (GPL) 2.0 33% 2. Apache 2.0 13% 3. GNU General Public License (GPL) 3.0 12% 4. MIT License 11% 5. BSD License 2.0(3-clause, New or Revised) License 7% 6. Artistic License (Perl) 6% 7. GNU Lesser General Public License (LGPL) 2.1 3% 8. GNU Lesser General Public License (LGPL) 3.0 2% 9. Eclipse Public License (EPL) 1% 10. Code Project Open 1.02 License 1% 11. Microsoft Public License (Ms-PL) 1% 12. Mozilla Public License (MPL) 1.1 < 1% 13. Common Development and Distribution License (CDDL) < 1% 14. BSD 2-clause "Simplified" or "FreeBSD" License < 1% 15. Common Public License (CPL) < 1% 16. zlib/libpng License < 1% 17. Academic Free License < 1% 18. GNU Affero GPL 3.0 < 1% 19. Microsoft Reciprocal License (Ms-RL) < 1% 20. Open Software License (OSL) < 1%

주요 특징

• 자주 사용되는 상위 10개 공개SW 라이선스(GPL, LGPL, Apache, MIT, BSD, Perl, EPL, MPL)는 전체 오픈소스 라이선스 중 약 90%를 차지함

• GPL과 Apache 라이선스가 현재 가장 많이 사용됨

1

2

Page 17: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

16

공개SW 라이선스 현황(2/2) 3. 라이선스분석

지적재산권 관점 공개SW 라이선스 분류

공개SW, 비공개SW 모두 SW의 범주 안에 속하는 지적재산권 보호대상이며, 지적재산권의 보호범위와 SW라이선스의 구분은 다음과 같음

[범례] 공개SW

사유 SW Freeware Shareware

소프트웨어

MPL QPL CPL OSL GPL LGPL BSD Apache MIT

제약 무제약

배포불필요 (Permissive)

공개SW라이선스

배포의무 (Reciprocal)

특허조항

비공개SW라이선스

특허 SW 비특허 SW

공유 불가능 SW

공유 가능 SW

원라이선스와 동일한 라이선스 배포 의무 有

원라이선스와 동일 라이선스 배포의무 無

: 개인무료 : 기간제한

이름,상표,상호 사용제한 有

이름,상표,상호 사용제한 無

특허권 행사제한 有

* 출처: 공개SW 라이선스 가이드(정보통신산업진흥원, 2014)

Page 18: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

17

공개SW 라이선스 양립성 3. 라이선스분석

서로 다른 의무사항을 가진 공개SW 라이선스는 의무사항 충돌로 인해 양립(Compatibility)이 불가능한 경우가 발생 할 수 있으므로 공개SW 활용 시 주의가 필요함

공개SW 양립성

GPL 라이선스와 양립성 문제

Page 19: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

18

배포시 소스코드 제공의무와 범위 -소스코드 공개 의무가 없음 -수정 프로그램에 대한 소스코드 공개를 요구하지 않기 때문에 상용SW에 무제한 사용이 가능

복제,배포,수정의 권한 허용

저작권 표시 등 의무사항

1

2

3

-아파치 라이선스로 만들어진 SW를 배포하는 경우에는 저작권 표시와 책임이 없다는 표시 하여야 함

- 소스코드의 자유로운 배포, 수정, 권한이 허용 - 파생저작물의 경우 수정된 파일에 대한 안내문구 첨부, 배포시 “Apache 2.0 라이선스 사본 제공” 표시

이름,상표,상호에 대한 사용제한 4

- “Apache”라는 이름에 대한 상표권을 침해하지 않아야 함

오픈 시프트 (Openshift)

클라우드 파운드리 (CloudFoundry)

Apache 2.0 채택

Apache 2.0 채택

선정 후보 PaaS 라이선스 Apache 2.0

선정된 PaaS는공개 의무가 없고 상업적 이용에 제한이 없는 Apache 2.0 을 채택함

오픈소스 PaaS 라이선스 분석 3. 라이선스분석

Page 20: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

19

오픈 시프트 아키텍처 오픈 시프트 구성 라이선스

구분 공개S/W 라이선스

Broker

DNS Bind ISC

Puma BSD 3-Clause

MCollective Apache 2.0

Open4 BSD

Unicorn GPL 2.0

Capistrano MIT

Nokogiri MIT

MongoDB AGPL, Apache 2.0, CC

Messaging ActiveMQ Apache 2.0

Node

Git GPL 2.0

HAProxy GPL 2.0

Docker Apache 2.0

GEARD Apache 2.0

SELinux GPL 2.0

RPM GPL 2.0

SYSTEMD LGPL 2.1

① 오픈 시프트 라이선스 Apache 2.0은 소스코드 공개 의무가 없으나, 세부 구성 요소가 GPL 2.0 계열을 사용할 때에는 라이선스의 양립성 문제로 상업적 활용이 자유롭지 않음

② GPL라이선스를 대체할 수 있는 공개SW를 채택하거나 신규개발이 필요함

주요 시사점

OpenShift 라이선스 상세 분석 (1/2) 3. 라이선스분석

Page 21: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

20

오픈 시프트 아키텍처 오픈 시프트 구성 라이선스

구분 공개S/W 라이선스

Cartridges (선택가능)

MongoDB GNU AGPL 3.0

MySQL GPL, FOSS

PostgreSQL BSD

JBoss GUN Library, LGPL 2.0

Tomcat Apache 2.0

PHP PHP

Python Python Software

Foundation

Ruby Ruby, BSD

Node.js MIT

Perl GPL, Artistic

Vert.x Apache 2.0

Jenkins MIT

Zend Server Proprietary

SwitchYard Apache 2.0

Cron Apache 2.0

① Cartridge는 DB, WAS, Language, Build tool 등 사용자가 설치하기 원하는 환경 및 라이선스 별로 선택이 가능

주요 시사점

OpenShift 라이선스 상세 분석 (2/2) 3. 라이선스분석

Page 22: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

21

클라우드 파운드리 아키텍처 클라우드 파운드리 구성 라이선스

① 클라우드 파운드리는 대부분 소스코드 의무가 발생되지 않는 공개SW 라이선스 Apache 2.0, BSD, MIT를 채택함으로써 2차 저작물 배포 시 자유로우나, 일부 구성컴포넌트(debian_nfs_server, haproxy)가 GPL 라이선스를 채택하고 있어 소스코드 공개의 제약요건이 발생함

② GPL라이선스를 대체할 수 있는 공개SW를 채택하거나 신규개발이 필요함

주요 시사점

구분 공개S/W 라이선스 Dynamic Router Gorouter Apache 2.0

Cloud Controller

cloud_controller_ng Apache 2.0 common Apache 2.0

nginx_newrelic_plugin BSD Nginx BSD

UAA/Login Servers login Apache 2.0 uaa Apache 2.0

Service Broker Node mysqlclient Apache 2.0

sqlite Public domain Health Manager hm9000 Apache 2.0

DEA Pool(Apps) warden Apache 2.0

dea_next Apache 2.0

DEA Pool(Build Packs)

buildpack_nodejs MIT buildpack_go BSD

buildpack_ruby MIT buildpack_java Apache 2.0

DEA Pool(Logging)

loggregator Apache 2.0 dea_logging_agent Apache 2.0 syslog_aggregator Apache 2.0

loggregator_trafficcontroller Apache 2.0

Cloud Foundry 라이선스 상세 분석 (1/2) 3. 라이선스분석

Page 23: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

22

클라우드 파운드리 아키텍처 클라우드 파운드리 구성 라이선스

① 클라우드 파운드리는 대부분 소스코드 의무가 발생되지 않는 공개SW 라이선스 Apache 2.0, BSD, MIT를 채택함으로써 2차 저작물 배포 시 자유로우나, 일부 구성컴포넌트(debian_nfs_server, haproxy)가 GPL 라이선스를 채택하고 있어 소스코드 공개의 제약요건이 발생함

② GPL라이선스를 대체할 수 있는 공개SW를 채택하거나 신규개발이 필요함

주요 시사점

구분 공개S/W 라이선스

Messaging nats MIT

gnatsd MIT

CloudFoundry BOSH

cli Apache 2.0

postgres BSD, MIT

libpq Library Free

기타 libyam Apache 2.0

etcd Apache 2.0

etcd_metrics_server Apache 2.0

debian_nfs_server GPL

haproxy GPL

Ruby BSD

Collector MIT

Golang BSD

rootfs_lucid64 Apache 2.0

(Choice) tomcat7 Apache 2.0

Cloud Foundry 라이선스 상세 분석 (2/2) 3. 라이선스분석

Page 24: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

23

개방형 클라우드 플랫폼의 관리, 공통, 서비스, 개발도구 및 API, 자원 및 서비스 확장 기능

IaaS Interface

PaaS 공통 관리

Web콘솔, CLI

사용량 측정

개발환경 관리

운영 모니터링

로그수집, 분석

서비스

플랫폼 프로그래밍

언어 별 실행환경

웹/어플리케이션 서버

데이터 저장소

캐쉬

통신, 인터페이스

전자정부

보안, 통합인증

사용자 지원, 협업

통계, 리포팅

디지털 자산관리

시스템 관리

App 수용 능력의 수평적 확장

(서비스 확장 위한 자원 추가)

PaaS 서비스 수평적 확장

(Zone, Region 추가)

PaaS를 위한 자원 확보

(VM, N/W, 등)

클라우드 공통 API

(OpenStack, VMware, AWS, 등)

독립된 실행환경

서비스 라우팅

서비스 등록, 관리

워크플로우

지능형 자원관리

Platform 계정,

그룹 별 권한, 인증 미래플랫폼

BigData 플랫폼 I/F

IoT 플랫폼 I/F

기타 플랫폼 I/F

(Mobile, 등)

OpenStack Based Service Providers Amazon Web Service CloudStack Based Service Providers

개발도구

클라우드

개발 도구

클라우드

생명 주기 관리

개방형 클라우드 플랫폼 아키텍처 4. 확장·신규 개발 범위 분석

Page 25: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

24

CloudFoundry의 경우 개방형 클라우드 플랫폼의 기능을 거의 수용,일부 개발도구 관련해서 취약

Cloud Foundry 플랫폼 4. 확장·신규 개발 범위 분석

PaaS 공통

Cloud Provider Interface (CPI), BOSH CLI

관리

CF CLI

Bosh

개발환경 관리

Metrics Collector

Health Manager

App Log

Aggregator

서비스 플랫폼 Buildpacks

(java,Spring,Node.js,

Ruby , etc)

Application Execution(DEA)

Cloud Controller

Blob Store

Service Brokers

Message Bus

(NATS)

전자정부

보안, 통합인증

사용자 지원, 협업

통계, 리포팅

디지털 자산관리

시스템 관리

App 수용 능력의 수평적 확장

(서비스 확장 위한 자원 추가)

PaaS 서비스 수평적 확장

(Zone, Region 추가)

PaaS를 위한 자원 확보

(VM, N/W, 등)

클라우드 공통 API

(OpenStack, VMware, AWS, 등)

Cloud Controller

(Go)Router

Service Brokers

워크플로우

Bosh

UAA(Oauth2 Server)

Login Server

Cloud Controller

미래플랫폼

BigData 플랫폼 I/F

IoT 플랫폼 I/F

기타 플랫폼 I/F (Mobile, 등)

OpenStack Based Service Providers Amazon Web Service CloudStack Based Service Providers

개발도구

클라우드 개발 도구

클라우드 생명 주기 관리

재사용 및 확장 개발 신규 개발

Page 26: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

25

OpenShift의 경우 개방형 클라우드 플랫폼의 기능을 거의 수용,일부 IaaS와의 연동부분은 취약

IaaS Interface (자체적으로 제공하지 않음)

PaaS 공통 관리

Admin Console, rhc

Node Manager

Cartridge Manager

Log Manager

Cartrideg Manager

서비스 플랫폼

Cartridge Manager

(java,Spring,Node.js,

Ruby , etc)

Cartridge Manager

(tomcat, jboss, etc)

Cartridge Manager

Cartridge Manager

Network Manager

전자정부

보안, 통합인증

사용자 지원, 협업

통계, 리포팅

디지털 자산관리

시스템 관리

App 수용 능력의 수평적 확장

(서비스 확장 위한 자원 추가)

PaaS 서비스 수평적 확장

(Zone, Region 추가)

PaaS를 위한 자원 확보

(VM, N/W, 등)

클라우드 공통 API

(OpenStack, VMware, AWS, 등)

Gear Manager

Node Manager

Broker

OpenShift Workflow

Broker

Broker 미래플랫폼

BigData 플랫폼 I/F

IoT 플랫폼 I/F

기타 플랫폼 I/F

(Mobile, 등)

OpenStack Based Service Providers Amazon Web Service CloudStack Based Service Providers

개발도구

통합 IDE

(eclipse, Cloud9 IDE)

Broker

재사용 및 확장 개발 신규 개발

OpenShift 플랫폼 4. 확장·신규 개발 범위 분석

Page 27: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 4. 종합분석[1]

26

개발도구에 있어서 보완 개발이 필요 IaaS Interface에 대한 보완 개발이 필요

개방형 클라우드 플랫폼 4. 확장·신규 개발 범위 분석

OPENSHIFT 확장·신규 개발 범위 CLOUD FOUNDRY 확장·신규 개발 범위