필요한 시스템 및 IT 자원을
빠르게 확보하고 무한대로 확장 가능한
클라우드 컴퓨팅
서비스 제공
Cloud Computing
OpenStack은 H/W에서 리소스를 가상화하고 클라우드에 구성하여
사용자가 필요할 때 리소스에 엑세스 할 수 있도록 관리합니다.
- OpenStack은 대규모 컴퓨팅, 스토리지 및 네트워킹 리소스 풀을 제어하며 모두 API 또는 대시 보드를 통해 관리합니다.
- 표준 IaaS(Infrastructure-as-a-Service) 기능 외에도 추가 구성 요소는 사용자 애플리케이션의 고 가용성을 보장하기 위해 다른 서비스 중에서 오케스트레이션, 오류 관리 및 서비스 관리를 제공합니다.
- 웹 기반의 사용자 인터페이스를 통해 관리자는 손쉽게 자원을 제어하고 서비스를 관리합니다.
OpenStack Service Architecture
- NOVA : OpenStack 컴퓨팅 리소스를 위한 전체 관리 및 엑세스 툴로 스케줄링, 생성, 삭제를 처리.
- CINDER : VM을 위한 영구 블록 스토리지를 제공합니다. 볼륨 생성 및 인스턴스 연결부터 릴리스까지 블록 장치의 수명주기를 관리.
-
NEUTRON: IP 주소 관리, DNS, DHCP, 부하 분산 및 보안 그룹과 같은 클라우드 사용자 에게 다양한 네트워킹 서비스를 제공. 또한, 다양한 네트워킹 솔루션과 플러그 방식으로 통합 할 수 있는 SDN을 위한 프레임 워크를 제공.
-
GLANCE : 필요에 따라 이미지 검색, 등록 및 전달 서비스를 포함한 디스크 이미지 관리 서비스를 Compute 서비스에 제공.
-
KEYSTONE : 전체 클라우드 인프라에서 인증 및 권한 부여 서비스를 제공 하는 공유 서비스.
-
HORIZON : 관리자와 사용자 모두를 위한 웹 기반 인터페이스를 제공, 클라우드 리소스를 프로비저닝, 관리 및 모니터링.
-
SWIFT : 클라우드에서 임의 데이터를 저장하고 검색하기위한 지원을 제공합니다. SWIFT 서비스는 네이티브 API와 Amazon Web Services S3 호환 API를 모두 제공하며, 가상 머신 이미지 및 백업 파일과 같은 정적 데이터에 가장 적합.
-
CEILOMETER : OpenStack 서비스에서 보낸 알림을 모니터링하여 이벤트 및 측정 데이터를 수집하는 데이터 수집 서비스.
-
HEAT : Heat Orchestration Template (HOT) 을 사용하여 클라우드 자원을 생성 및 관리.
OpenStack Service Flow
- VM은 생성, 운용, 삭제 등 Lifecycle 기간 동안 Resource의 사용이 필요.
- CPU, Memory, HDD등 Compute resource의 할당/사용 및 반환을 위해서 Nova service를 이용하며, Network resource의 관리는 Neutron service에서 담당.
- VM에서 외부 볼륨을 사용하여 Data 등을 저장, 백업 하기 위해서 Cinder(block storage), Swift(object storage) service를 사용.
- 이 모든 일련의 VM 생성 과정은 Heat를 이용하여 자동으로 수행 가능.
- Openstack Platform은 관리의 편의를 위하여 GUI 환경의 Web base의 GUI 환경을 Horizon service를 통하여 User에게 제공.
- Horizon dashboard에서는 Ceilometer에서 수집되는 Resource들을 Monitoring 가능
- Service 간의 통신은 공용 API를 사용하며, Keystone 인증을 통하여 일련의 작업을 수행.