Skip to content

CB Tumblebug Architecture

Jihoon Seo edited this page Sep 1, 2021 · 2 revisions

서브시스템 구조

CB-Tumblebug 서브시스템의 전체 구조는 다음 그림과 같으며, 세부 기능은 다음과 같이 정의된다.


MCIS 통합 관리 프레임워크 구조도
  1. 네임스페이스 관리기
    네임스페이스(Namespace)는 객체들이 어떤 이름 공간에 속해 있는지를 지정해 놓는 개념이다. 이름이 같은 객체라도 다른 네임스페이스에 속해 있으면, 네임스페이스를 지정하여 이름이 같은 객체들도 구분할 수 있다. 네임스페이스를 통해서 사용자의 MCIR 및 MCIS에 대한 객체를 논리적으로 분리되므로, 지정된 네임스페이스에 따라서 검색 및 제어할 수 있는 객체들이 달라진다. 예를 들면, 사용자의 프로젝트에 따라 다른 네임스페이스를 지정하여, 각 프로젝트의 MCIR과 MCIS를 격리시킬 수 있다. 네임스페이스 관리기에서는 사용자가 네임스페이스 객체를 생성, 조회, 삭제할 수 있도록 관리 기능을 제공한다.

  2. MCIR 관리기
    CB-Tumblebug 서브시스템은 각 클라우드가 인프라 서비스를 제공하기 위해 사용하는 클라우드 인프라 자원을 중앙에서 관리할 수 있는 기능을 제공한다. 각 클라우드의 인프라 자원은 MCIS의 구성 및 설정에 사용되므로 객체로서 관리가 필요하다. 이를 위해서 클라우드 인프라 자원 관리기는 MCIR의 다양한 자원 종류(VM 이미지, VM 사양, 네트워크, VM 접속을 위한 자원 등)에 대해서 생성, 등록, 조회, 삭제 등의 기능을 제공한다.

  3. MCIS 프로비저닝 관리기
    MCIS 프로비저닝 관리기는 MCIS를 생성하는 모든 절차를 관리한다. MCIS를 생성하기 위해서는 MCIS의 구성 요소가 되는 VM들을 생성해야 하며, 생성된 VM들을 설정하고 MCIS라는 논리적인 객체에 포함시켜야 한다. 개별 VM을 생성하기 위해서 VM을 최적으로 배치 및 스케줄링 하며, MCIS 단위의 서비스 요구 사항에 최적으로 부합하는 VM들을 선택함으로써 사용자에게 최적의 MCIS를 프로비저닝 한다.

  4. MCIS 라이프사이클 관리기
    MCIS 라이프사이클 관리기는 MCIS가 생성되어 사용자에게 프로비저닝 된 이후, 해당 MCIS의 라이프사이클, 즉 MCIS의 상태에 대한, 관리 및 제어 기능을 제공한다. 이 컴포넌트는 각 MCIS 및 포함된 VM에 대해서 MCIS 라이프사이클(Lifecycle)에 대한 상태(동작 상태, 중지 상태, 종료 상태 등)를 관리하며, Cloud-Barista 시스템이 관리하는 MCIS의 라이프사이클 상태와 클라우드 서비스 제공자가 관리하는 실제 VM의 라이프사이클 상태가 동일한지 확인 및 동기화한다. 또한 사용자가 라이프사이클에 관련된 제어 요청을 했을 때, 이를 수행하는 기능 등을 포함한다.

  5. MCIS 자동 제어기
    MCIS 자동 제어기는 MCIS를 사용자가 명시한 규칙에 따라서 자동으로 제어하기 위한 컴포넌트이다. 사용자는 MCIS를 자동으로 제어하기 위한 상태 조건을 제시하며, 해당 상태 조건이 만족 또는 불만족 되는 경우, 특정 액션이 자동적으로 수행되도록 제시할 수 있다. MCIS 자동 제어기는 사용자의 다양한 조건/액션을 수행할 수 있는 기능적 메커니즘을 제공한다.

  6. MCIS 특화 서비스
    MCIS 특화 서비스는 멀티 클라우드 기반으로 지역적으로 떨어진 VM들로 구성된 MCIS 기준으로 분산 애플리케이션 실행 지원을 위해 동일 서브넷 네트워크 환경을 제공하고, 클라우드 간의 부하를 분산하여 MCIS의 가용성을 향상 시키는 것을 목적으로 한다. 이 MCIS 특화 서비스는 MCIS 동일 서브넷 환경 구성 기능, MCIS 로드밸런싱 기능으로 구성되며, 사용자는 MCIS 배치시 동일 서브넷 환경 구성 기능이나 로드밸런싱 기능을 선택하여 배치할 수 있으며, 배치가 완료된 MCIS 기준으로 사용자가 선택한 특화 서비스 환경이 구성된다.

  7. MCIS 통합 관리 개방형 API 런타임
    CB-Tumblebug 서브시스템은 개방형 API 런타임을 통해서 타 프레임워크나 사용자에게 MCIS의 기능을 제공하며 이를 위해 개방형 API 런타임 서버를 포함한다. 또한 타 프레임워크의 기능을 활용하기 위한 개방형 API 클라이언트를 포함한다.

CB-Tumblebug 서브시스템은 VM 및 자원 생성을 위해서 멀티 클라우드 인프라 연동 프레임워크와 통신하며, MCIS의 현황을 공유하기 위해서 멀티 클라우드 통합 모니터링 프레임워크와 통신한다. 이와 같이, 타 프레임워크와 마찬가지로 CB-Tumblebug 서브시스템은 타 프레임워크의 기능을 통신을 통해 사용하며, 그 사이에는 이들의 통신을 중계하기 위한 중계기가 포함될 수 있다.

Clone this wiki locally