18
0 Open PaaS 비즈니스 아키텍처 2014. 7. 30.() 기현 대표 ㈜클라우드포유

[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 1.비즈니스 아키텍처

Embed Size (px)

DESCRIPTION

[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 1.비즈니스 아키텍처

Citation preview

Page 1: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 1.비즈니스 아키텍처

0

Open PaaS 비즈니스 아키텍처 2014. 7. 30.(수)

김 기현 대표

㈜클라우드포유

Page 2: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 1.비즈니스 아키텍처

발표 순서

1-1. 개방형 클라우드 플랫폼 및 아키텍처의 목적 1-2. 아키텍처 설계 절차 1-3. 비즈니스 아키텍처 정의

2. 비즈니스 아키텍처 2-1. 플랫폼 개발,운영 참여자 정의 2-2. 플랫폼 유즈케이스 2-3. 활용 시나리오 2-4. 플랫폼 활용 방식 사례

3. 오픈소스 비즈니스 아키텍처 3-1. CloudFoundry 3-2. OpenShift

1. 개요

Page 3: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 1.비즈니스 아키텍처

2

1-1. 개방형 클라우드 플랫폼 및 아키텍처의 목적 1. 개요

클라우드 상에서 특정 기업·기술 종속없이 응용 서비스(SaaS)와 SW를 개발·운영·관리토록

지원하며, 공개SW로 배포되어 누구나 활용·개량 가능한 플랫폼

개방형 클라우드 플랫폼

아키텍처 정의 목적

• 개발하고 하는 시스템에 해결하고자 하는 문제를 정의

• 개발활동에 참여하는 참여자 간 정보를 공유하기 위한 기반

• 개발 및 확장에 필요한 시스템의 구조를 정의

• 정보 공개를 통해 개발이전에 필요한 의견을 수용

Page 4: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 1.비즈니스 아키텍처

3

1-2. 아키텍처 설계 절차 1. 개요

1.비즈니스

아키텍처 정의

2. 서비스

아키텍처 정의

3. 데이터

아키텍처 정의

4. 인터페이스

아키텍처 정의

5. 비기능

아키텍처 정의

- 유즈케이스 - 참여자 정의 - 시나리오 모델정의를 통한 요구사항 도출

- 기능요소정의 - 주요기능관계 - 세부기능요소 - 세부기능흐름 모델정의을 통한 PaaS 구조정의

- 실행정보정의 - 관리정보정의 - 연계정보정의 - 설정정보정의 모델정의를 통한 정 보 구 조 정 의

- 내부 I/F 정의 - 외부 I/F 정의 - 확장 I/F 정의 모델정의를 통한 연계구조 정의

- 보안모델정의 - 확장모델정의 - 운영모델정의 모델정의를 통한 비기능 요건정의

Cross Checking

Page 5: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 1.비즈니스 아키텍처

4

1-3. 비즈니스 아키텍처 정의 1. 개요

비즈니스 아키텍처는 플랫폼의 개발·운영 활동에 참여하는 참여자들이 수행하는 예상

행동을 바탕으로 플랫폼의 요구사항을 도출함으로써, 이후 아키텍처 정의 활동에 필요한

정보를 제공

• 플랫폼 개발, 운영 활동에 참여하는 참여자들의 정의

• 플랫폼 개발, 운영 활동의 전반적인 프로세스를 나타내는 시나리오

• 시나리오를 상세 기술하는 유즈케이스

• 유즈케이스를 기반으로 도출되는 플랫폼의 요구사항

비즈니스 아키텍처 정의

비즈니스 아키텍처 내용

Page 6: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 1.비즈니스 아키텍처

5

2-1. 플랫폼 개발·운영 참여자 정의 2. 비즈니스 아키텍처

• 플랫폼 서비스에 필요한 S/W를 개발

• 플랫폼에 사용되는 S/W결함 제거 및 기능 추가

• 플랫폼의 확장에 필요한 OS이미지를 개발

플랫폼 개발자 (ex. 클라우드 플랫폼 개발팀)

• 플랫폼을 설치하고 플랫폼 S/W를 유지 보수(ex.버전업)

• 플랫폼 사용자를 관리하고 기관/사용자 별 사용량을 집계·관리

• 플랫폼이 안정적으로 운영될 수 있도록 모니터링

플랫폼 운영자 (ex. 정부통합전산센터,

기관별 독립 PaaS 운영팀)

• 플랫폼을 활용하여 서비스기관에 필요한 S/W를 개발

• 개발에 필요한 플랫폼 S/W를 선정하고 개발환경을 생성 어플리케이션 개발자 (ex. 기관별 서비스 개발조직)

• 개발된 어플리케이션을 기반으로 서비스를 운영

• 서비스의 사용자를 관리하고 사용자 별 사용량을 집계· 관리

• 서비스가 안정적으로 운영될 수 있도록 모니터링

어플리케이션 운영자 (ex. 기관별 서비스 운영조직)

Page 7: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 1.비즈니스 아키텍처

6

2-2. 플랫폼 유즈케이스 2. 비즈니스 아키텍처

업무 요구에 맞게

커스터마이징 (UC-01)

업무 특성에 맞게

인프라 구성 (UC-02-01)

업무 특성에 맞게

플랫폼 설치 및 구성

(UC-02-02)

사용자의 요구에 맞게

플랫폼 운영 (UC-03)

S/W 패키지

Cloud I/F

OS 템플릿

서비스 요구에 맞게

App 개발 (UC-04)

스토리지

N/W

(Virtual) 서버

S/W package

모니터링

자원 관리

권한 관리

템플릿 관리

S/W 관리

App사용자를 위한

서비스운영 (UC-05)

사용량 관리

공통 서비스

통합 계정

사용자 관리

사용량 측정

모니터링

App 등록

Page 8: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 1.비즈니스 아키텍처

7

2-2. UC-01 커스터마이징 2. 비즈니스 아키텍처

클라우드 I/F

개발

OS 이미지 개발

S/W

패키지화 및

등록

플랫폼 개발자

클라우드 자원 상태정보 관리 I/F

Agent 개발

OS 이미지 패키징

S/W 연계 I/F

클라우드 자원 생성 I/F

S/W 패키징

Page 9: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 1.비즈니스 아키텍처

8

2-2. UC-02 플랫폼 구성 (인프라 구성 및 설치) 2. 비즈니스 모델

클라우드

자원 생성

S/W 패키지

구성

플랫폼 운영자

N/W 자원 생성

스토리지 자원 생성

인스턴스 S/W 설치

서버자원 생성

인스턴스 S/W 구성

Page 10: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 1.비즈니스 아키텍처

9

2-2. UC-03 플랫폼 운영 2. 비즈니스 아키텍처

인스턴스

상태 관리

인스턴스

사용량 관리

사용자

관리

사용자

권한 관리

S/W 패키지

관리

OS 이미지

관리

플랫폼 운영자

사용량 정보 수집

사용자 관리

사용자 권한 관리

S/W 패키지 등록 관리

인스턴스 정보 수집

OS 이미지 등록 관리

인스턴스 실행 및 정지

사용량 조정

그룹 관리

그룹 권한 관리

S/W 패키지 배포 관리

OS 이미지 배포 관리

Page 11: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 1.비즈니스 아키텍처

10

2-2. UC-04 어플리케이션 개발 2. 비즈니스 아키텍처

개발 환경 구성 어플리케이션

인스턴스 구성

어플리케이션 개발자

기본 구성 선정

어플리케이션 배포

언어 선택

S/W 패키지 선택

프레임워크 선택

클라우드 자원 할당

Page 12: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 1.비즈니스 아키텍처

11

2-2. UC-05 어플리케이션 운영 2. 비즈니스 아키텍처

서비스

운영

어플리케이션

인스턴스 관리

어플리케이션 운영자

통합계정

모니터링

어플리케이션 등록

사용량 측정

어플리케이션 백업 및 복구

App 등록

공통서비스

Page 13: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 1.비즈니스 아키텍처

12

2-3. 플랫폼 구성 시나리오

어플리케이션 개발자

플랫폼 운영자

플랫폼 개발자

S/W 패키지 개발

OS 템플릿 개발

클라우드 I/F 개발

개발 산출물 승인

S/W 패키지 관리

OS 템플릿 관리

서버 자원 준비

개발 환경 구성

플랫폼 설치

1-1 1-2 1-3

3-1 3-2 3-3

2

4-2

3-4

S/W 패키지 선택

4-1

2. 비즈니스 아키텍처

Page 14: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 1.비즈니스 아키텍처

13

2-3. 개발자 시나리오

플랫폼 운영자

어플리케이션 개발자

통합 IDE 설치

3-3

개발환경 생성

3-1

개발환경 제공 (소스,빌드 관리)

3-2

개발 플랫폼 사용 승인

2-2

도메인 등록

4-1

개발 플랫폼 사용 요청

2-1

플랫폼 도메인 등록

4-2

어플리케이션 배포

5-1

어플리케이션 승인

5-2

개발환경 배포

5-3

S/W 패키지 선택

1

2. 비즈니스 아키텍처

Page 15: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 1.비즈니스 아키텍처

14

2-3. 운영자 시나리오

어플리케이션 개발자

플랫폼 개발자

플랫폼 운영자

플랫폼 S/W 등록

2-3

플랫폼 S/W 개시

3-1

플랫폼 생성 요청

3-3

개별 실행환경 생성

3-4

개발자 계정 등록

1-2

실행환경 백업,복구

3-6

플랫폼 S/W 등록 요청

2-1

개발 플랫폼 사용 승인

2-2

계정 등록 요청

1-1

개별 실행환경 관리

3-5

플랫폼 S/W 선택

3-2

2. 비즈니스 아키텍처

Page 16: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 1.비즈니스 아키텍처

15

수요기관

1 서비스

1

수요기관

1 서비스

2

수요기관

2 서비스

1

수요기관

2 서비스

2

수요기관

3 서비스

1

수요기관

3 서비스

2

수요기관

서비스

1

수요기관

서비스

2

수요기관

서비스

3

2-4. 플랫폼 활용 방식 사례 2. 비즈니스 아키텍처

수요기관

서비스

1

수요기관

서비스

2

수요기관

서비스

3

수요기관

1 서비스

1

수요기관

1 서비스

2

센터 제공 PaaS

수요기관

2 서비스

1

독자운영 PaaS

독자운영PaaS

독자운영PaaS

수요기관

2 서비스

2

독자운영PaaS

센터 제공 PaaS 독자운영 PaaS

G-Cloud (IaaS)

G-Cloud (IaaS)

G-Cloud (IaaS)

중앙 관리식 PaaS 독립 운영식 PaaS 병행 운영식 PaaS

Page 17: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 1.비즈니스 아키텍처

16

3-1. CloudFoundry 3. 오픈소스 비즈니스 아키텍처

Infrastructure Configuration

Installation System

Operation

Application Deployment

Application Management

System Maintenance

Install Prerequisites Network Configuration Create Store Install Micro BOSH

Create Release Upload Stemcell Generate Manifest Deploy Cloud Foundry

User/Org Administration Service Administration Buildpack Management Domain Management

Collect Performance Info. Edit Deployment Bosh Deploy Delete Deploy

Application Start/Stop Application Scaling Application Monitoring Application Deleting

Application Development Application Packaging Application Push Service Binding

Lifecycle

States :

Lifecycle

States :

Related

Use Cases :

Related

Use Cases :

Page 18: [개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 1.비즈니스 아키텍처

17

3-2. OpenShift 3. 오픈소스 비즈니스 아키텍처

Lifecycle States:

Preparing Hosts

Install Broker Host Install Node Host Install Database Store Install Messaging Bus DNS Configuration

Authentication Management

User Management Account Management Team Management SSH Key Management Domain User Management

Application Creation

Create Gear Set Up Cartridges Create Git Repository Network Configuration

Application Deployment

Develop Application Test Application Build Application Deploy Application

Application Management

Application Status Control Scale Management Application Monitoring Application Alias Management Remove Application

System Management

Cartridge Management Deploy Management Cartridge Development Service Plan Management Environment Variable Management

Related Use Cases:

Lifecycle States:

Related Use Cases: