2015 oce garuda
TRANSCRIPT
Open Source Alliance
2012-2015 오픈 클라우드 엔진
fastcat
cloudine
BusinessExperts
Operators
Social Portal & SaaS Apps
CLOUD INFRA
BPM / BRE / BI
CLOUD IDE / PaaS ALM
End Users
Developers
소프트웨어 딜리버리 하기
1. 아이디어창출2. 예산확보3. 하드웨어구입요청4. 하드웨어취득5. 하드웨어공간확보및정돈6. OS 설치7. OS 패치및패키지설치8. 계정생성9. 프레임워크디플로이10. 미들웨어디플로이11. 테스팅툴디플로이12. 테스팅툴테스트13. 코딩14. 멀티태넌시처리15. 서버환경설정(필요한시추가구
매)
16. 생산완료17. 런칭18. 서버추가구매요청19. 승인응답대기20. 새로운서버디플로이 etc.
1. 아이디어창출2. 예산확보3. VM 요청4. 프레임워크디플로이5. 미들웨어디플로이6. 테스팅툴디플로이7. 테스팅툴테스트8. 코딩9. 멀티태넌시처리10. VM서버환경설정11. 생산완료12. 런칭13. VM서버추가구매요청14. 승인응답대기15. 새로운 VM서버에디플로이 etc.
1. 아이디어창출2. 예산확보3. 코딩4. 테스트5. 런칭
2000 TODO 2010 TODO 2013 TODO
물리적환경.
By IaaS
By PaaS
DevOps ?
• Continuous Operations (Delivery)
DevOps Process
PaaS Functional Landscape
* 출처: IBM
IBM의 클라우드 도입 가이드라인클라우드 도입의 최종목표인 프로세스 기반 클라우드 서비스는 모든 규모에서 공통적인 방향성임
확장된 SaaS 성숙도 모델과 BPaaS• 진보된 SaaS 는 동적인 구성과 다이내믹한 연동이 가능한 수준을 지
원하여야 함. 이는 BPaaS (BPM As A Service)로 구현 가능함
2015 OCE
• Has own OSS – Docker + Apache Mesos+ OSGi
• Tools for Architects and Developers –Provider Portal, Cloud IDE and Modeling Tools
• Multi-tenant support & Subscription management
• Recently, metering / billing module has been added.
Open Cloud Engine
?
Bahamas: 클라우드 프로비저너/오케스트레이터
• 가상서버 증설시 스냅샷을 이용한 가상서버 인스턴스 생성– 스냅샷 이미지의 크기로 인한 가상서버 생성시 시간
과다 소요
• Software 업데이트 및 OS 변경시 다시 소프트웨어를 설치하는 문제
• 다수의 소프트웨어를 복잡한 과정을 통해 구성해야 하는 경우 대응이 어려움– 예) Apache Web Server > Apache Tomcat > MySQL
설치, 설치 후 환경설정, 연동, 서비스 시작, VM 생성
11
Cloud Orchestrator의 중요성
• 클라우드 관리의 관리비용 절감 및 용이성 확보 필요
• Cloud Orchestrator가 제공해야하는 주요 기능
– 클라우드 자원의 관리 자동화
– Software 설치 및 구성 자동화
– 클라우드 자원 관리와 Software 관리의 통합
– 설치 및 구성을 위한 material의 통합관리 (설치 및 구성 스크립
트)
• Cloud Orchestrator는 IaaS에서 PaaS로 가기 위한 징검다리
12
Bahamas Cloud Orchestrator
13
Bahamas에서 Chef 연동
• Bahamas는 개발자의 역할을 시스템화 하는 것이 목표– Chef Workstation의 주요 기능의 온라인화– Chef Server 관리 통합– Chef Supermart 연동– 다양한 클라우드 지원
14
Cookbook다운로드
Chef Supermarket* Chef Supermarket은 설치 및 구성 스크립트가 공개되어 있는 커뮤니티입
니다.
관리 프로비저닝
CookbookRepository
역할 정의
• 가상/물리서버에 역할(예; MySQL Server)을 배정
15
새로운 역할 정의
하나의 서버는 다수의
역할을 수행할 수 있음
– MySQL, Apache
UI를 통해 이미 정의한
역할을 결합하여 새로
운 역할 작업 가능
생성한 역할을 부트스
트랩시 서버에 적용
이미 정의되어 있는역할 목록
Bootstrap
• 가상서버 및 물리서버에 설치 스크립트를 적용하는 과정(역할 배정)
16
MySQL 설치 자동화
Bootstrap
• KT ucloud와 연계한 bootstrap
17
KT ucloud API 연계를 통한서비스 목록 생성
Chef Supermartet 연동
• 무료로 공개되어 있는 설치 스크립트를 다운로드하여 자산화
18
Chef Supermarket
Chef Supermarket API
연동
Supermarket의 Chef
Cookbook 다운로드
Cookbook 조회
다운로드한 Cookbook
을 자체 관리용
Repository 업로드 및
관리 가능
Chef Supermartet 연동
• 무료로 공개되어 있는 설치 스크립트를 다운로드하여 자산화
19
Supermarket을 통한
Cookbook 다운로드
압축해제
의존성 다운로드의존성
다운로드한
Cookbook
Cookbook
편집기
워크플로우 관리
• 워크플로우 디자이너를 통해 복잡한 처리지원
20
복잡한 처리 과정의단순화
정의한 역할(Role)연계
변수 정의
병렬처리 지원
스크립트를 이용한다양한 작업 가능
essencia: Model-driven SaaS ALM
제공자-운영자-소비자가 참여하여 모델링~개발~앱스토어까지의 생태계사이클을 참여자가 IaaS의 직접적인 핸들링 없이 지원
마이그래
이션 / 모
델링
개발 /
테스트
(이미지)
빌드
가격모형
결정 & 게
시
가입 & 취
득
커스터마
이징
개발자
비즈니스분석가
운영자
소비자
개발커뮤니티
앱스토어
표준프레임워크
셀프서비스
웹에서 개발 모델링
essencia: 방법론 및 ALM 프로세스 정의
essencia:클라우드 ALM 프로세스
essencia: method execution &
monitoring
Tools
garuda-portal: Cloud IDE
Code GeneratorEclipse CheShell
uengine-uml:UML기반 Software Modeling
* 하기 모두 로드맵입니다
웹기반 UML 모델링
XMI 표준 준수(eCore 사용)
자바 클래스 생성, 리버스
클래스 인스턴스 입출력 생성
ERD 모델로의 전환
JPA 모델 생성
uengine-bpm:비즈니스 프로세스 관리
업무 전문가를 위한실행가능 프로세스언어 – BPMN
GUI기반 비즈니스 룰정의
웹서비스 통합 (*CSB)
비즈니스 폼
데이터 매핑• DB 쿼리 자동화• SQL 툴
garuda-portal/bss-monetization:가격 모형 관리 / 시뮬레이션
Plan Settings
garuda: OSS support core
Garuda master
Master Node
DockerRegistry
DB
Garuda console
Load balancer
ProxyDMZ
REST API
Web UI
Firewall
Internet
Master
Slave
Master Master
Slave Slave ...
Cluster
ZK
Internal Firewall
Admin
http://<appId>.mydomain.com
* 색이 칠해진 박스는 하나의 VM Instance를 나타낸다.
Developer Portal Zone
BPM Server
Operation Time Support (Integration via MSA / CSB)
Application Instance Zone
Router (HA Proxy
Provisioning
Agent
Docker 1(Tomca
t)
App-A.war
Docker 2(Tomca
t)
AppB.war
Provisioning
Agent
Docker 1(Tomca
t)
App-A.war
Docker 2(Tomca
t)
AppB.war
Provisioning
Agent
Docker 1(Tomca
t)
App-A.war
Docker 2(Tomca
t)
AppB.war
Provisioning
Agent
Docker 1(Tomca
t)
App-A.war
Docker 2(Tomca
t)
AppB.war
MQ
Cloud Controller
External Cloud Services
REST Service of AppA
SOA ServiceOf AppB
REST/SOA ServiceOf External Apps
Cloud IDE’s BPMN
Modeler
Multi-tenancy Support
Developer Portal Zone
Metadata Server
Application Instance Zone
Router (HA Proxy
Provisioning Agent
Docker 1
(Tomcat)App-A.war
Docker 2
(Tomcat)AppB.war
Provisioning Agent
Docker 1
(Tomcat)App-A.war
Docker 2
(Tomcat)AppB.war
Provisioning Agent
Docker 1
(Tomcat)App-A.war
Docker 2
(Tomcat)AppB.war
Provisioning Agent
Docker 1
(Tomcat)App-A.war
Docker 2
(Tomcat)AppB.war
MQ
Cloud Controller
Brand for TID
Self Service Portal
Client
(Web Browser
TID.service.com
Logic for TID
Metadata per tenant
TID in ThreadLocal
Business Supporting Service: Metering / Billing
Developer Portal Zone
Billing / Metering Server
Application Instance Zone
Router (HA Proxy
Provisioning Agent
Docker 1
(Tomcat)App-A.war
Docker 2
(Tomcat)AppB.war
Provisioning Agent
Docker 1
(Tomcat)App-A.war
Docker 2
(Tomcat)AppB.war
Provisioning Agent
Docker 1
(Tomcat)App-A.war
Docker 2
(Tomcat)AppB.war
Provisioning Agent
Docker 1
(Tomcat)App-A.war
Docker 2
(Tomcat)AppB.war
MQ
Cloud Controller
Application Log
Plan Menagment /
Self Service
Client
(Web Browser
TID.service.com
serviceAserviceAserviceB….
Billing data per tenant
Aggregate and filter out Billing Logs
Supporting Full Lifecycle of Model-driven, DevOps
클라우드
마이그래이
션
모델링/개
발/테스트
가격모형
관리 정산
클라우드
운영
멀티태넌트
가입 운영
Case: KIAT’s R&D Cloud
IT 개발 부서
표준 프레임워크 개발 환
경
샌드박스
개발자 포탈
운영자 포탈
프로세스 엔진 (uEngine BPM)(개발, 배포, VM생성, Scale-out, 소멸 프로세스)
Apache DeltaCloud /JCloud (IaaS 접근 추상화)
형상관리서버(SVN/Git)
빌드서버(Jenkins)
개발기 인스턴스 운영기 인스턴스
다종 IaaS : 엔키아 / 오픈스택*
모델서버(메타데이터 서
버)
템플릿
마켓플레이스
가입자 포탈
(임차)사용기관
IT 운영
R&D Cloud PaaS엔진부
OCE Umbrella
Developers Operators
Differentiators
SaaS 성숙도 Level 3
• 멀티태넌시-싱글인스
턴스 프레임워크와
동적 확장 기능
• 셀프서비스 포탈을
통한 가입자 별 커스
터마이징
클라우드 IDE
• 공통서비스(오픈 API)
들을 웹상에서 직접
테스트
• 모델링 플랫폼을 통
한 프로세스, 룰, 브
랜드 관리 기능
프로세스 기반
• BPM기반의 가입, 자
원요청, 앱 등록 프로
세스 지원
• 웹 2.0 기반 소셜 개
발자 협업 환경 제공
• 어플리케이션 개발
운영 프로세스 변경
용이
표준 기반
• IaaS표준
인터페이스로 아파치
델타클라우드 및
JCloud를 기반하여
이기종 IaaS를
사용가능
Thank you