멀티 클라우드 서비스 공통 프레임워크 기술(Multi-Cloud Service Common Framework)
- 커뮤니티 사이트(Community Site) : https://github.com/cloud-barista
주요 내용 : 이종 멀티 클라우드 인프라 연동 기술 소개 및 개발 현황
- CB-Spider 시스템 및 서비스 개요
- CB-Spider 기술 개발 현황
- CB-Spider 기술 개발 로드맵
Cloud-Barista 제6차 오픈 컨퍼런스 : 클라우드바리스타 활용 사례(Multi-Cloud as a Service, MCaaS)
Cloud-Barista 제1차 오픈세미나 - CB-Spider : 멀티 클라우드 인프라 연동 프레임워크(1st Open Seminar, Multi Cloud Infrastructure Federation Framework)
1. This is not the
Single-Cloud you
are looking for.
멀티 클라우드 인프라 연동 프레임워크
(CB-Spider)
Cloud-Barista Community, 김병섭 T.L. & F.L.
CLOUD
BARISTA 멀티 클라우드 서비스 공통 프레임워크
2. 1
응용/도메인/기관 특화 SW
멀티 클라우드 인프라 연동 기술
멀티 클라우드 애플리케이션
통합관리 프레임워크
멀티 클라우드 특화 서비스
프레임워크
개방형 API
멀티 클라우드 인프라 서비스
프레임워크
멀티클라우드통합
모니터링프레임워크
CB-Spider
3. 2
CB-Spider 시스템 및 서비스 개요
CB-Spider 개발 현황
CB-Spider 개발 로드맵
CB-Spider 시연
I
II
III
IV
6. 5
Users & Apps w/ 3-Cloud Users & Apps w/ 9-Cloud Users & Apps w/ Many-Cloud
멀티 클라우드 인프라 연동 프레임워크
DevWall
#DeveloperWall
. 2019 Cloud State Report(RightScale): 94% of enterprises are using cloud, 84% of organizations have a multi-cloud strategy.
7. 6
TO
BE
이종 API / 이종 연결 / 이종 제어
<기존 멀티 클라우드 서비스 사용자 환경>
Cloud-1 Cloud-2 … Cloud-n
<사용자/응용>
<멀티 클라우드 인프라 연동 프레임워크 사용자 환경>
단일 API / 단일 연결 / 공통 제어
멀티 클라우드 인프라 연동 프레임워크
Cloud-1 Cloud-2 … Cloud-n
<사용자/타프레임워크>
#단일API #공통제어 #클라우드무한확장
8. 7
• 전세계 이종 클라우드를 엮을 수 있게 한다.
• 전세계 클라우드를 하나처럼 쓸 수 있게 한다.
9. 8
주로 사용하는 클라우드는? AWS, Azure, GCP, …
국내 클라우드는? Cloudit, …
급성장하는 ? Alibaba, …
유명 오픈 소스는? OpenStack, …
10. 9
멀티 클라우드 인프라 연동 프레임워크
OpenStack
AWS
EC2
…
국내
클라우드
신규
클라우드
신규 드라이버
개발
공통 제어/관리
[드라이버 기반 플러그인 방식 연동]
이종 API
단일 API
드라이버 인터페이스
멀티 클라우드 인프라 연동 프레임워크
플러그인
플러그인 기반 멀티 클라우드 인프라 연동 구조 및 공통 제어
12. 11
<인터페이스와 드라이버 구현의 상관 관계><드라이버 방식 플러그인 구조>
GCP Cloud
Driver
AWS Cloud
Driver
<<Cloud Driver interface>>
<사용자>
AWS
AWS API
단일API
GCP Cloud
Driver
GCP
…
GCP API
• 드라이버 공통 인터페이스
• 드라이버 플러그인 방식
• 공통 인터페이스 구현
• CSP 전용 API 사용한 구현
• CSP 당 다수 드라이버 지원
#단일API #드라이버 #플러그인
CSP: Cloud Service Provider
+
+
+
13. 12
<신규 클라우드 동적 추가 주요 흐름>
AWS Cloud
Driver Lib.
GCP Cloud
Driver Lib.
<<Cloud Driver interface>>
<사용자>
(5) 드라이버 API 호출
New Cloud
Driver Lib.
AWS GCP New
(1) 드라이버 공유 라이브러리 개발
New Cloud
Driver 객체
* drv=GetCloudDriver(“NewCloudDrv”)
(3) 클라우드 드라이버 선택
<사용자>
드라이버 관리기
(4) 드라이버 동적 적재
(7) 클라우드 API 호출
클라우드 드라이버 정보 관리기
(2) 드라이버 경로 등 정보 등록
#공유LIB
#동적플러그인
#클라우드동적추가
+
-
#개발 #복사 #등록 활용
14. 13
드라이버 정보, 크리델셜정보,
리전정보, 연결 설정 정보 등
클라우드 인프라 연동 정보 통합 관리기
클라우드 드라이버
정보 관리
클라우드 인프라
인증 정보 관리
클라우드 인프라
리젼 정보 관리
클라우드 인프라
연결 설정 정보 관리
멀티 클라우드 인프라 공통 제어 관리기
클라우드
드라이버 관리
클라우드 드라이버 공통 인터페이스
클라우드
연결 관리
클라우드 인프라
자원 제어
가상 머신
라이프사이클 제어
클라우드
연결 관리
클라우드 인프라
자원 제어
가상 머신
라이프사이클 제어
AWS-EC2 클라우드 드라이버
동적 플러그인
단일 API
OpenStackAWS …Cloudit
3rd-party
Cloud
GCP Azure Alibaba
가상 머신 명령
원격 관리
(1) 클라우드 연동 정보 설정
<사용자/타서브시스템>
(2) 클라우드 공통 제어
<사용자/타서브시스템>
#연결설정 #드라이버API #드라이버 #CSP
활
용
15. 14
OpenStackAWS …Cloudit
3rd-party
Cloud
GCP Azure Alibaba
클라우드 드라이버 공통 인터페이스
클라우드 드라이버 인터페이스
클라우드 인프라 자원 제어 인터페이스 가상 머신 라이프사이클 제어 인터페이스
클라우드
연결 관리
클라우드 인프라
자원 제어
가상 머신
라이프사이클 제어
AWS-EC2 클라우드 드라이버
동적 플러그인 단일 API
드라이버
버전 정보
드라이버
제공 기능 목록
클라우드 연결 관리 인터페이스
연결 종료
클라우드 연결
인터페이스 제공
연결 상태
제공
자원 제어
인터페이스 제공
자원 및 가상 머신
제어 인터페이스 제공
이미지
자원 제어
네트워크
자원 제어
접속그룹
자원 제어
PublicIP
자원 제어
키페어
자원 제어
클라우드
드라이버
VM 목록
제공
VM 세부
정보 제공
VM 상태
목록 제공
VM 상태
제공
VM
가동
VM
중지
VM
재개
VM
재시작
VM
종료
대상 객체 생성 및 인터페이스 제공
멀티 클라우드 자원 공통제어
<사용자/타서브시스템> IMG
VNet
Sec
IP
Key
VNic
NIC
자원 제어
VM
16. 15
멀티 클라우드 인프라 공통 제어 관리기
…
가상 머신
명령 실행
AWS Cloud
Driver
GCP Cloud
Driver
AWS GCP
클라우드 드라이버 공통 인터페이스
VM
VM VM
VM
VM VM
…
연동 정보
송신
연동 정보
송신
CB-Spider HisCall
Beat
(1) Cloud Call Info
(2) VM Call Info
Cloud-Barista
<HisCall-Agent> <HisCall-Server> <HisCall-Reporter>
수집 검색 <사용자>제공
#HisCall
#HistoryOfCall
#Design
#OnlyPoC
CB-Spider HisCall
Beat
(1) Cloud Call Info
(2) VM Call Info
Cloud-Barista
<활용 예시>
• 연동 품질 분석
• 스케줄링 반영 등
• 선수집 후활용
<PoC> GetImageInfo(60Regions): 0.5s ~ 1.1s
17. 16
멀티 클라우드 인프라 공통 제어 관리기
…
가상 머신
명령 실행
AWS Cloud
Driver
GCP Cloud
Driver
AWS GCP
클라우드 드라이버 공통 인터페이스
VM
VM VM
VM
VM VM
…
연동 정보
송신
연동 정보
송신
CB-Spider HisCall
Beat
(1) Cloud Call Info
(2) VM Call Info
Cloud-Barista
<HisCall-Agent> <HisCall-Server> <HisCall-Reporter>
수집 검색 <사용자>제공
#HisCall
#HistoryOfCall
#Design
#OnlyPoC
CB-Spider HisCall
Beat
(1) Cloud Call Info
(2) VM Call Info
Cloud-Barista
<활용 예시>
• 연동 품질 분석
• 스케줄링 반영 등
• 선수집 후활용
<PoC> GetImageInfo(60Regions): 0.5s ~ 1.1s
18. 17
(3)
멀티 클라우드
인프라 연동
이력 정보 관리
(1) 클라우드 인프라 연동 정보 통합 관리
클라우드 드라이버
정보 관리
클라우드 인프라
인증 정보 관리
클라우드 인프라
리전 정보 관리
클라우드 인프라
연결 설정 정보 관리
(2) 멀티 클라우드 인프라 공통 제어 관리
클라우드
드라이버 관리
클라우드 드라이버 공통 인터페이스
클라우드
연결 관리
클라우드 인프라
자원 제어
가상 머신
라이프사이클 제어
가상 머신 명령
원격 관리
수집
제공
클라우드
연결 관리
클라우드 인프라
자원 관리
가상 머신
라이프사이클 제어
AWS-EC2 Cloud Driver
플러그인 공통API
Driver Info/
Credential Info/
etc.
주요 기능
CB-Spider 구조
19. 18
(1) 클라우드 인프라
연동 정보 통합 관리
(3) 멀티 클라우드 인프라
연동 이력 정보 관리
(2) 멀티 클라우드 인프라 공통 제어/
클라우드 확장
이력 정보
드라이버 정보,
크리델셜정보,
리전정보 등
Cloud Cloud Cloud
<사용자>
활
용
(1) 인프라 연동 정보 등록
등록
수
집
<타프레임워크>
(2) 인프라 자원/VM 생성 및 제어
제어
(3) 인프라 연결/호출 정보 활용
이력
<사용자> <타프레임워크>
#공통API #드라이버 #동적플러그인 #클라우드동적추가 #K8S연동 #이종멀티클라우드연동 #연동이력제공
+
20. 19
REST API Runtime Server
(1) Restful User Interface
< Pluggable Cloud Driver>
AWS-EC2
Driver
GCP-GCE
Driver
AZURE
Driver
ALIBABA
Driver
OPENSTACK
Driver
CLOUDIT
Driver
…K8S
Driver
CB-Spider Restful Clint
Restful Clint
(2) Cloud Driver Common Interface
CB-Spider API
인터페이스 구조
• Create
• List
• Get
• Delete
• Start
• List
• Get
• ListStatus
• GetStatus
• Suspend
• Resume
• Reboot
• Terminate
22. 21
<참조>
(1) 수정요청 https://github.com/cloud-barista/poc-cb-spider/issues
(2) 반영요청: https://github.com/cloud-barista/poc-cb-spider/pulls
(3) 협의요청.: https://cloud-barista.slack.com/messages/CLFCLNFTJ
드라이버 인터페이스 규격 재정의
드라이버 개발 및 시험
배포/반영
요청
보완/배포
Thin & Fast
Version up
<Thin&Fast 중심의 단계별 깃헙/슬랙 기반 공개 개발>
23. 22
개
발
• 현황: API/Runtime 개발 및 통합 완료
• 계획: 동시성 등 개선 및 보완
(1) 클라우드 인프라 연동 정보 통합 관리
• 현황: Driver REST API/Runtime 개발 통합 완료
• 현황: 가상 머신 명령 원격 관리 개발 통합 완료
• 현황: Driver Common Interface 개정 및 공유 완료
• 현황: 6 + 1종 드라이버 개발 추진
- AWS/Aauzre/GCP: 드라이버 개발 및 통합 완료
- OS/Cloudit: 드라이버 개발 완료, 통합 및 디버깅 중
- Alibaba: 드라이버 개발 마무리 중
- Cloud-Twin(K8S): PoC 개발 및 통합 완료
• 계획: Driver I/F 재검증 및 자원 통합 제어 방법 개선 등
• 상반기: CSP 확장 전 I/F 및 통합 제어 방법 강화
• 하반기: CSP 추가 연동
• 계획: K8S 드라이버 개발 및 연동
(2) 멀티 클라우드 인프라 공통 제어 관리
• 현황: 설계 및 PoC 완료
• 계획: 2차년도 상반기 개발 추진 예정
• 계획: 연동 이력 정보 수집 및 아카이빙
(3) 멀티 클라우드 인프라 연동 이력 정보 관리
#뼈대 #국외4종 국내1종 #공개1종 #선개선후확장
#연동이력 #K8S
27. 26
드라이버 단위시험 (INNO/MEGA) 드라이버 REST Test (INNO/MEGA) Multi Region REST Test (ETRI) Multi Resource REST Test (향후)
AWS
Azure
GCP
Cloudit
OpenStack
Alibaba
Twin(K8S)
VNetImage Key SecP-IP Vnic VM
VNetImage Key SecP-IP
Americano 행사
VNetImage Key SecP-IP
VNetImage Key SecP-IP
관리자원 :
VNetImage Key SecP-IP
CSP
미지원
Private
Image
보완필요
시험대기
시험완료
VNetImage Key SecP-IP VM
VM
VM
VM
VM
방안 필요 publicIP 내부관리
1차: VM 내부관리
- VM 생성/접속
- 향후 점검 필요
자원 생성 흐름 차이 고려
VNic 추가 지원 고려
VM User ID 관리 방법 개선 필요
Vnet 입력 Name
- Case-I: 사용하지 않음.
- Case-II: subnetwork 이름으로 활용
….
publicIP 내부관리
Publicip 관리는 가능
제공정보: IP, ID만 제공,
Tagging 불가
VM PoC for Cappuccino
개발/시험 마무리 중
29. 28
국내외 클라우드 연동
Homo Multi-Cloud
멀티
클라
우드
연동
Hetero Multi-Cloud
연동
이력
연동 이력 정보
관리 시스템 개발
CSP/VM 연동 이력
아카이빙 CSP/VM/CM 연동 이력
아카이빙
드라이버 I/F 등
최적화
국내외 클라우드 선정 및 연동
컨테이너 네이티브 클라우드
선정 및 연동
프레임워크/드라이버
최적화/안정화
(예시)
연동 품질 분석 / 연동 이력 활용 등
30. 29
이종 멀티 클라우드 환경을 요구하는 멀티 계층 App 출현 Hetero-Multi IaaS 실행 환경 제공 시급
…
Homo Multi-IaaS Hetero Multi-IaaS
VM
VM CM
VM
VM VM
31. 30
CB-Spider 상세 규격 및 설치 가이드
규격 및 설계 등
사용자 인터페이스 (REST)
소스 및 설치 가이드
드라이버 인터페이스 (Go)