Skip to content

CB Waterstrider Features

MZC-CSC edited this page Sep 2, 2021 · 2 revisions

CB-Waterstrider(CB-Webtool) 기능

  멀티 클라우드 서비스 공통 플랫폼 개방형 인터페이스가 제공하는 기능은 다음과 같다.

1. 공통 플랫폼 개방형 API

  공통 플랫폼 개방형 API는 그림 1에서 보는 바와 같이 사용자들이 사용할 수 있는 개방형 API 규격과 개방형 API의 실행환경을 제공하는 개방형 API 런타임으로 구성된다. 개방형 API는 REST 기반 API와 Go 기반 API를 제공하며, 이들 개별 형태의 API 실행환경을 제공 하기 위해서 REST API 런타임과 Go API 런타임을 제공한다. 세부 기능은 다음과 같다.


그림 1: 공통 플랫폼 개방형 API 구성 및 런타임 구조도

  • 공통 플랫폼 개방형 API 규격 제공
    Cloud-Barista 시스템은 Cloud-Barista 시스템 응용 개발과 내부 웹 인터페이스 및 CLI 인터페이스 개발 등을 위하여 개방형 API를 제공한다.

  • REST API 런타임 지원
    사용자는 REST(Representational State Transfer) 규격의 인터페이스를 사용하여 Cloud-Barista 개방형 API를 사용할 수 있으며, CB-Waterstrider 서브시스템은 REST 실행환경 제공을 위한 REST API 런타임을 제공한다. REST API 런타임은 Cloud-Barista 서버 측에서 API 실행 처리를 지원하는 REST API 런타임 서버와 클라이언트 측의 REST 표준 클라이언트 라이브러리로 구성되며, Cloud-Barista 응용 개발자는 REST 표준 프로토콜을 따르는 메시지 처리 또는 REST 프로토콜을 지원하는 라이브러리를 이용하여 개방형 API를 활용한 개발이 가능하다.

  • Go API 런타임 지원 사용자는 Go 인터페이스를 사용하여 Cloud-Barista 기능을 사용할 수 있으며, CB-Waterstrider 서브시스템은 Go 실행환경 제공을 위한 Go API 런타임을 제공한다. Go API 런타임은 Cloud-Barista 서버측 에서 API 실행 처리를 지원하는 Go API 런타임 서버와 클라이언트 측의 Go API 클라이언트 라이브러리로 구성되며, Cloud-Barista 응용 개발자는 Go API 클라이언트 라이브러리를 이용하여 개방형 API를 활용한 개발이 가능하다.


2. 웹 인터페이스

  웹 인터페이스는 웹 기반의 멀티 클라우드 서비스 운용 및 통합 관리를 위한 웹 가시화 도구이며, 멀티 클라우드 서비스 공통 프레임워크의 관리적 측면과 운영적 측면의 인터페이스 기능을 포함한다. 또한, 그림 2에서 보는 바와 같이 웹 인터페이스는 멀티 클라우드 서비스 공통 프레임워크가 제공하는 개방형 API를 활용하여 제공된다.


그림 2: 웹 도구 구성 및 구조도

  웹 인터페이스는 멀티 클라우드 인프라 연동, 멀티 클라우드 네임스페이스, 멀티 클라우드 인프라 서비스, 멀티 클라우드 통합 모니터링의 4가지 기능 영역으로 분리하여 제공된다.


그림 3: 웹 인터페이스 로그인 절차

  웹 인터페이스 로그인 절차는 다음과 같이 구분된다.


그림 4: 웹 인터페이스 기능 영역

  • 기본적인 운영을 위한 설정이 완료되지 않은 상태에서의 로그인
    • 기본 운영 설정을 완료하도록 운영 설정 페이지의 해당 단계로 화면을 전환한다.
  • 하나 이상의 기본 운영 설정이 되어 있는 상태에서의 로그인
    • 운영을 위한 기본 네임스페이스 운영 대시보드 페이지로 화면을 전환한다.

  로그인 이후 웹 인터페이스는 멀티 클라우드 인프라 연동, 멀티 클라우드 네임스페이스, 멀티 클라우드 인프라 서비스, 멀티 클라우드 통합 모니터링의 4가지 기능 영역으로 분리하여 제공된다.

  1) 멀티 클라우드 인프라 연동 인터페이스
    멀티 클라우드 인프라 연동은 연결하고자 하는 클라우드 인프라 제공자, 클라우드 인프라 제공자를 연결하기 위한 드라이버, 지역(Region) 등에 대한 관리와 이를 통한 연결 설정 및 연결 이력을 로깅하기 위한 인터페이스 기능을 통해 가시화 기능을 제공한다.


그림 5: 멀티 클라우드 인프라 연동 절차 및 인터페이스

  멀티 클라우드 인프라 연동을 위한 세부적인 기능은 다음과 같다.

  • 클라우드 드라이버 관리
    • 클라우드 인프라 연동을 위한 클라우드 연결 드라이버를 등록하는 인터페이스 기능 제공


그림 6: 클라우드 드라이버 관리 인터페이스

  • 클라우드 지역 정보 관리
    • 네임스페이스 하에 운영 시 기본값으로 활용하도록 연결할 클라우드 인프라 제공자의 지역 정보를 등록하고 기본(default) 지역을 설정하는 인터페이스 기능 제공


그림 7: 클라우드 지역 정보 관리 인터페이스

  • 클라우드 연결 크리덴셜 관리
    • 클라우드 인프라 연동을 위한 클라우드 연결 크리덴셜(Key) 정보를 등록하는 인터페이스 기능 제공


그림 8: 클라우드 연결 크리텐셜 관리 인터페이스

  • 클라우드 연결 설정 관리
    • 등록된 클라우드 연결 드라이버, 연결 정보, 지역 정보를 포함하는 클라우드 연결 정보를 관리하는 인터페이스 기능 제공
    • 클라우드 연결에 대한 검증을 진행하고, 아래와 같이 해당 클라우드 인프라 자원에 대한 정보 동기화 인터페이스 기능 제공
      • 클라우드 인프라 제공자 지역
      • OS 이미지
      • 서버 요소
        A. VM Spec Template
        B. VM
      • 네트워크 요소
        A. VPC(Virtual Private Cloud) & Project, Network & Subnet
        B. NIC, IP Address(Public, Static 등)


그림 9: 클라우드 연결 설정 관리 인터페이스

  • 멀티 클라우드 인프라 연동 이력 정보 관리
    • 클라우드 연결 설정에 따른 연결 이력 정보를 조회하는 가시화 인터페이스 기능 제공

  2) 멀티 클라우드 네임스페이스 인터페이스 제공
    멀티 클라우드 네임스페이스는 특정 사용자의 멀티 클라우드 운영을 위한 개별 공간으로, 사용자는 전역 설정으로 정의된 클라우드 연결을 공유하여 지정된 네임스페이스를 통해 멀티 클라우드 인프라 서비스를 운영하고 관리한다. 사용자는 단일 또는 복수의 네임스페이스를 등록할 수 있으며, 서로 다른 네임스페이스 간 전환도 가능하다.


그림 10: 멀티 클라우드 네임스페이스 관리 인터페이스

  • 멀티 클라우드 네임스페이스 관리
    • 멀티 클라우드 공통 프레임워크 사용자의 클라우드 서비스 운영 공간 또는 환경을 구성하는 인터페이스 기능 제공

  3) 멀티 클라우드 인프라 서비스 인터페이스
    멀티 클라우드 인프라 서비스는 지정된 네임스페이스 하에서 운영하고자 하는 인프라 서비스를 구성하고, 해당 서비스 운영을 위한 라이프사이클 관리 등의 가시화 기능을 제공한다. 멀티 클라우드 인프라 서비스는 네임스페이스 내에서 구동되는 서비스로서, 사용자는 멀티 클라우드 인프라 서비스를 생성, 변경, 삭제할 수 있다. 멀티 클라우드 인프라 서비스는 하나 이상의 VM으로 구성되며, 멀티 클라우드 인프라 서비스 라이프사이클 관리는 각 멀티 클라우드 인프라 서비스를 구성하는 전체 VM을 대상으로 하나 이상의 VM 라이프사이클이 관리된다.


그림 11: 멀티 클라우드 인프라 서비스 관리

  멀티 클라우드 인프라 서비스를 위한 세부 기능은 다음과 같다.

  • 멀티 클라우드 인프라 자원 관리 (가상 네트워크 자원, 보안 그룹 자원, 스펙 자원, 접속 키 자원 등)
    • 클라우드 인프라 서비스를 위해 가상 네트워크, 보안 그룹, VM 이미지 및 VM Spec template, 접속 키 등의 자원에 대한 생성, 관리를 위한 인터페이스 기능 제공
  • 멀티 클라우드 인프라 서비스 정보 통합 관리
    • 네임스페이스 하의 멀티 클라우드 인프라 서비스 운영을 위한 운영 대시보드 형태의 가시화 기능 제공


그림 12: 멀티 클라우드 인프라 서비스 정보 통합 관리 인터페이스

  • 멀티 클라우드 인프라 서비스 정보
    • 최상위 서비스 상태
    • 트랜잭션, 응답시간
    • 서비스 지속시간(비장애 누적시간), 시작시간
  • 멀티 클라우드 인프라 서비스 운영 대시보드 동작
    • 서비스 목록 레코드 선택 → 서비스 운영 상태에 대한 정보 제공
      A. 우측의 배치 Map에 해당 서비스 상태 정보 강조
      B. 해당 서비스에서 발생한 이벤트 목록으로 갱신  서비스의 이벤트 필터링
    • 이벤트 목록 레코드 선택  알람/이벤트 세부정보 분석 및 추적 제공
      A. 하단에 이벤트 알람 세부 정보 표기
      B. 발생 대상 VM 정보
      C. 해당 VM의 모니터링 정보를 통한 추적
    • 우측 하단의 작업 요청 선택
      A. 서비스 운영 관리를 위한 화면 전환 및 기능 제공
                    
      작업 Type 작업 Action
      서비스 라이프사이클 관리 시작, 종료, 재시작
      서비스 관리 변경, 삭제
      세부 VM 관리 생성, 변경, 삭제
      • 멀티 클라우드 인프라 서비스 생성 관리
        • 네임스페이스 하의 인프라 서비스를 생성하기 위한 인터페이스 기능 제공
        • 인프라 서비스에는 인프라 자원을 이용하여 서비스를 구성하는 하나 이상의 VM을 생성하기 위한 인터페이스 기능 제공


      그림 13: 멀티 클라우드 인프라 서비스 생성 관리

      • 멀티 클라우드 인프라 서비스 라이프사이클 상태 정보 관리
        • 인프라 서비스 및 인프라 서비스 내 하나 이상의 VM에 대한 Start, Stop, Restart, 엡terminate 등의 라이프사이클 상태에 대한 가시화 기능 제공
      • 멀티 클라우드 인프라 서비스 라이프사이클 제어
        • 인프라 서비스 및 인프라 서비스 내 하나 이상의 VM에 대한 Start, Stop, Restart, terminate 등의 라이프사이클 제어를 위한 인터페이스 기능 제공


      그림 14: 멀티 클라우드 서비스 라이프 사이클 관리

        4) 멀티 클라우드 통합 모니터링 인터페이스
          멀티 클라우드 통합 모니터링은 지정된 네임스페이스 하에서 운영되는 인프라 서비스 및 서비스를 구성하는 하나 이상의 VM에 대한 모니터링 정보를 획득하기 위한 모니터링 정책의 설정, 모니터링 정보의 가시화, 알람 임계치에 대한 설정을 위한 인터페이스 기능을 제공하고, 수집된 주기적 모니터링 데이터에 대한 관리 인터페이스를 통해 모니터링 관련 가시화 기능을 제공한다.


      그림 15: 멀티 클라우드 통합 모니터링 인터페이스

        멀티 클라우드 통합 모니터링을 위한 세부적인 기능은 다음과 같다.

      • 멀티 클라우드 인프라 서비스 모니터링 정보 제공
        • 운영되는 인프라 서비스 및 서비스를 구성하는 하나 이상의 VM에 대한 모니터링 정보를 획득하는 인터페이스를 활용하여 인프라 서비스 모니터링 정보 가시화 기능 제공
      • 멀티 클라우드 인프라 서비스 모니터링 정책 관리
        • 모니터링 데이터 수집을 위한 모니터링 정책 설정 인터페이스 기능 제공
      • 멀티 클라우드 인프라 서비스 알람 임계치 관리
        • 모니터링 데이터를 통한 서비스의 알람을 체크하기 위해 서비스 알람 임계치를 설정하고 적용하기 위한 관리 인터페이스 기능 제공
      • 멀티 클라우드 인프라 서비스 주기적 모니터링 데이터 관리
        • 주기적으로 수집되어 축척된 인프라 서비스 모니터링 데이터를 삭제하기 위한 관리용 인터페이스 기능 제공


      그림 16: 웹 인터페이스 메뉴 구성

      웹 도구는 다양한 환경에서의 사용을 고려해서 반응형을 고려하여 디자인되었다.


      그림 17: 반응형 디자인


      3. CLI 인터페이스

        CLI 인터페이스는 그림 4 53에서 보는 바와 같이 CLI 실행환경을 제공하는 CLI 런타임과 실제 사용자들이 사용하는 시스템 관리용 CLI 도구와 통합 모니터링용 CLI 도구로 구성된다.


      그림 18: CLI 구성 및 런타임 구조도

      • 시스템 관리용 CLI 제공
        Cloud-Barista 시스템은 그림 18에서와 같이 시스템 가동/중지 및 멀티 클라우드 인프라 서비스 관리 등을 위한 다양한 CLI 명령어를 제공한다.
      • 통합 모니터링용 CLI 제공
        Cloud-Barista 시스템은 그림 14와 같이 모니터링 확장 정책 설정, 모니터링 메트릭 설정, 모니터링 에이전트 관리 등을 위한 다양한 CLI 명령어를 제공한다.
      • CLI 런타임 지원
        CLI 런타임은 사용자의 CLI 명령을 분석하고 실행한다.
        • 명령 옵션 파싱: 사용자가 입력한 명령어의 옵션을 파싱한다.
        • 명령 실행 제어: 파싱한 명령어 옵션에 따라 명령어를 실행 및 제어한다.
        • 자원 생성 설정 파일 파싱: 자원 생성 설정 파일을 이용한 자원 생성 명령의 경우 사용자가 첨부한 설정 파일을 파싱한다.
        • 자원 생성 실행 제어: 파싱한 자원 설정에 따라 자원 생성을 실행 및 제어한다.
        • 개방형 API 실행 제어: 사용자가 입력한 명령어에 따른 Cloud-Barista 기능 수행을 위해서 Go API를 이용하여 Cloud-Barista 서버에 실행을 요청 및 제어한다.