Technology

Cloud-Barista

‘멀티 클라우드 서비스 공통 프레임워크(Cloud-Barista)’ 기술은 다수의 퍼블릭 클라우드의 인프라 서비스를 통합 운용하고, 멀티 클라우드 인프라 상에서 클라우드 애플리케이션의 유연한 배치, 운용 및 제공을 가능하게하는, 멀티 클라우드 서비스를 위하여 공통적으로 요구되는 소프트웨어 스택을 말합니다.

Cloud-Barista는 단일 클라우드 활용 한계를 극복하고, 최근 트렌드로 급부상한 멀티 클라우드 서비스의 운용·관리에 필요한 필수 공통 기능을 제공하는 핵심 기술을 개발하기 위한 목적으로 만들어졌습니다.

전세계 다양한 이종 클라우드 인프라를 연동하여 멀티 클라우드 컴퓨팅 인프라를 구성하고, 멀티 클라우드 인프라 기반으로 다양한 응용 서비스를 전세계 어디나 원하는 위치로 배치, 관리, 제공하기 위한 클라우드 기반 기술입니다.

Cloud-Barista의 주요 기술로는 멀티 클라우드 인프라 연동, 멀티 클라우드 인프라 서비스 통합 운용 및 관리, 멀티 클라우드 애플리케이션 통합 운용·관리, 멀티클라우드 통합 모니터링, 멀티 클라우드 개방형API 및 멀티 클라우드 서비스 공통 프레임워크 런타임 기술 등으로 구성되어 있습니다.


Cloud-Barista Frameworks and Incubator

Cloud-Barista의 프레임워크로서 '멀티 클라우드 인프라 연동 프레임워크(CB-Spider)', '멀티 클라우드 인프라 서비스 프레임워크(CB-Tumblebug)', '멀티 클라우드 쿠버네티스 서비스 운용 관리 프레임워크(CB-MCKS)', '멀티 클라우드 애플리케이션 통합관리 프레임워크(CB-Ladybug)', '멀티 클라우드 통합 모니터링 프레임워크(CB-Dragonfly)', '개방형 API(CB-Waterstrider)', '멀티 클라우드 공통 프레임워크 아키텍처 및 런타임(CB-Bridge)' 6개의 주요 기술과 관련 부가기술 개발을 진행하고 있습니다. 또한, 기술 인큐베이터로서 '멀티 클라우드 기술 인큐베이터(CB-Larva)'는 멀티 클라우드의 도전과제를 연구 개발하고 있습니다.

CB-Spider : 멀티 클라우드 인프라 연동 프레임워크

멀티 클라우드 인프라 연동 기술은 전세계에 지역적으로 분산되어 운용되고 있는 다양한 이종 사업자의 퍼블릭 클라우드를 동일한 방식, 동일한 인터페이스로 활용가능하도록 개별 퍼블릭 클라우드를 연계하는 기술입니다.

본 기술은 다양한 퍼블릭 클라우드를 위한 공통 인터페이스의 범위 및 연동 구조, 신규 퍼블릭 클라우드의 추가 용이성, 퍼블릭 클라우드의 연동의 최적화를 위한 자동화 기술 등이 주요 이슈로 인식되고 있습니다.

CB-Spider는 다양한 이종 클라우드 인프라 서비스를 연동하여 사용자에게 동일한 제어 방식과 인터페이스를 제공하는 소프트웨어 스택이며, CB-Spider를 통해 글로벌 클라우드 인프라를 먼저 연동하고, 국내 주요 클라우드 인프라를 연동하는 전략으로 개발을 진행하고 있습니다.

현재 OpenStack, AWS EC2, MS Azure, GCE, Alibaba Cloud, 이노그리드의 Cloudit 등의 인프라 연동이 가능하도록 연동 드라이버가 개발되었으며, 국내외 다양한 클라우드 인프라 연동 드라이버를 추가로 개발하고 있습니다.

CB-Tumblebug : 멀티 클라우드 인프라 서비스 통합 관리 프레임워크

단일 클라우드 서비스 공급자 (CSP) 를 통한 클라우드 인프라 서비스는 규모와 서비스의 종류가 한정적이므로 CSP를 통한 인프라 관리가 가능합니다. 하지만 멀티 클라우드 환경에서는 서비스의 종류가 더욱 다양해지므로 최적의 멀티 클라우드 인프라 구축이 필수적 입니다. 또한, 광범위한 지역을 아우르는 서비스 제공을 위해서는 다수의 인프라 서비스를 효율적으로 통합 관리할 수 있는 기술이 필요합니다.

멀티 클라우드 인프라 서비스 (Multi-Cloud Infrastructure Service, MCIS) 통합 관리 기술은 멀티 클라우드 환경에서 사용자 요구사항에 따라, 멀티 클라우드의 인프라 서비스를 조합 및 프로비저닝하고, MCIS를 통합 관리하여 사용자의 인프라 운영을 지원하는 기술입니다.

CB-Tumblebug는 MCIS 통합 관리 프레임워크로서 1) 네임스페이스 및 멀티 클라우드 인프라 리소스 (Multi-Cloud Infrastructure Service, MCIS) 관리 기능, 2) MCIS 최적 구성 및 스케줄링 기능, 3) MCIS 프로비저닝 기능, 4) MCIS 라이프사이클 관리 기능, 5) MCIS 자동 제어 기능 등 MCIS 통합 관리를 위한 기능들을 종합적으로 제공합니다.

CB-Ladybug : 멀티 클라우드 애플리케이션 실행환경 통합 관리 프레임워크

멀티 클라우드 애플리케이션 실행환경 통합 관리 기술은 멀티 클라우드 인프라 상에 실행되는 멀티 클라우드 애플리케이션(MC-App, Multi-Cloud Application)의 실행/제어를 위한 애플리케이션 실행환경(쿠버네티스) 클러스터의 배포 및 라이프사이클 관리 기능을 제공하는 기술입니다.

현재 컨테이너 오케스트레이션 플랫폼 중 산업 표준인 쿠버네티스를 멀티 클라우드 환경에 접목한 멀티 클라우드 대상 사용자 관리형 쿠버네티스 서비스(MCKS, Multi-Cloud Kubernetes Service)를 개발하고 있으며, 싱글 클라우드 대상으로도 적용 가능하도록 개발하는 단계입니다.

CB-Dragonfly : 멀티 클라우드 통합 모니터링 프레임워크

멀티 클라우드 통합 모니터링 기술은 대규모 멀티 클라우드 인프라 서비스(e.g. 가상머신, 컨테이너 등)와 멀티 클라우드 상에 배치된 다양한 애플리케이션의 상태 및 성능 정보를 수집, 저장, 관리하는 기술입니다.

다양한 지역에 존재하는 수 많은 클라우드상에 생성되는 실행환경 및 배치된 애플리케이션에 대한 데이터 관리 기술이므로 대규모 데이터에 대한 모니터링 구조 및 방식, 지리적 차이로 발생하는 지연을 극복하는 안정적인 모니터링 성능, 멀티 클라우드에 특화된 신규 모니터링 항목 정의 등이 주요 이슈입니다.

CB-Dragonfly는 Cloud-Barista에 연동된 멀티 클라우드상에 존재하는 인프라 서비스 및 애플리케이션에 대한 대규모, 실시간 모니터링을 제공하는 소프트웨어 스택이며, CB-Tumblebug 및 CB-Ladybug와 연계하여 모니터링이 수행됩니다.

CB-Waterstrider : 개방형 API

멀티 클라우드 개방형 인터페이스 기술은 멀티 클라우드에 포함된 다양한 이종 퍼블릭 클라우드 서비스를 사용자 또는 기술 수요자가 동일 방식으로 하나의 접점에서 활용, 관리, 제어할 수 있도록 하는 인터페이스를 제공하는 기술로서, 주로 Restful API, gRPC 기반 Go API, CLI 및 웹기반 GUI 인터페이스를 지원하는 WebTool을 포함합니다.

상기 개방형 인터페이스 기술은 사용자 편의성, 인터페이스의 제공 범위 및 지원 방식 등이 주요한 이슈입니다.

CB-Waterstrider는 Cloud-Barista의 주요 기능을 사용자가 활용하여 새로운 서비스를 만들어 갈 수 있도록 하는 개방형 API로서, 현재는 Cloud-Barista를 구성하는 개별 프레임워크의 REST API와 gRPC 기반의 Go API, 그리고 멀티 클라우드 관리도구로서 WebTool 기능을 제공하고 있습니다.

CB-Bridge : 멀티 클라우드 공통 프레임워크 아키텍처 및 런타임

CB-Bridge는 개별 프레임워크들의 공통 실행 환경 및 협업 실행 환경을 위한 런타임 기술을 제공하며, 신규 프레임워크의 표준화된 개발 방법과 개발 시간 단축을 위한 프레임워크 개발용 공통 템플릿을 제공합니다.

공통/협업 런타임 기술 측면으로는 각 프레임워크의 MSA(Micro Service Architecture) 구조(모듈화) 실행 환경을 제공하며, Cloud-Barista 사용자 및 개별 프레임워크 간의 유연한 협업 극대화를 위해서 API Gateway 기능을 제공하고 있습니다.

프레임워크 개발용 공통 템플릿 기능으로는 메타데이터 저장 관리(cb-store) 및 로그 기능(cb-log) 등을 제공하며, 지속적인 템플릿화를 추진 중입니다.

또한, Cloud-Barista 배포 측면에서는 손쉬운 설치 및 운영을 위하여 실행 환경을 포함한 컨테이너화된 프레임워크(Containerized Framework)들을 기반으로 컨테이너기반 배포 및 실행 기능을 제공하고 있습니다.

CB-Larva: 멀티 클라우드 기술 인큐베이터

멀티 클라우드 기술 인큐베이터는 Cloud-Barista의 정체성을 잃지않고, 지속적으로 신규 니즈를 수용하기 위하여 신기술, 부족기술 등의 PoC를 수행하며, 이를 Cloud-Barista로 흡수하기 위한 기술 인큐베이터 입니다.

멀티 클라우드를 위한 네트워크 기술을 연구 개발하여 각 클라우드 서비스 제공자(CSP)마다 상이한 네트워크 체계 및 변동 가능성으로 인한 커뮤니케이션 제한 문제를 해결하고, 멀티 클라우드를 위한 스토리지 기술을 연구 개발하여 멀티 클라우드를 기반으로 광범위한 지역에 서비스 제공시 데이터를 언제 어디서나 CRUD(Create, read, update, delete)할 수 있도록 지원할 계획입니다.

마지막으로, Cloud-Barista 커뮤니티의 기술 인큐베이터로서 국내 산업에 꼭 필요한 멀티 클라우드 공통 플랫폼을 만들고자 기초부터 연구 개발하고 있습니다. 또한, “스토리지”, “네트워크”, “보안” 등 멀티 클라우드 관련 당면 Challenges를 국내 전문가들과 함께 해결해 나가기를 희망합니다.

문은 항상 활짝 열려있으니 관심이 있으시거나, 관련 기술을 보유하고 계신다면 언제든 연락 주시기 바랍니다. “전 세계 클라우드를 하나로 엮는 그 날까지”

Framework별 상세 내용은 Cloud-Barista 시스템 설계서 참고 >>

Cloud-Barista 개발 로드맵

Cloud-Barista는 2019년부터 개발이 시작되었으며, 아래와 같은 로드맵으로 개발이 진행되고 있습니다. Cloud-Barista 커뮤니티는 공개소프트웨어 개발방법론에 따라, 분석/설계/개발/시험에 이르는 전과정의 산출물(PoC 분석 결과, 설계/개발 관련 기술문서, 소스 코드 등)을 공유하고 있습니다.

Cloud-Barista Development Roadmap

Contact

Cloud-Barista Community. SINCE 2019
Email - contact-to-cloud-barista@googlegroups.com