Cloud/참고자료

오픈스택(OpenStack)

간지나제 2022. 9. 6. 23:07

오픈스택: IaaS 형태의 클라우드 컴퓨팅 오픈 소스 프로젝트

공식적으로 클라우드 운영체제(Cloud OS)라 불리기도 한다.

구성 요소

프로젝트 명 서비스 내용
Nova Compute Service
클라우드 IaaS(Infrastructure as a Service) 구축에 필요한 가상 컴퓨트 인스턴스들을 제어하고 관리하기 위한 서비스, 오픈스택에서 가장 중요한 프로젝트
AWS EC2와 호환된 API 제공
Swift Storage Service
블록 스토리지(Block Stroage)가 아닌 오브젝트 스토리지(Object Storage) 환경을 구축하고 관리하기 위한 서비스, 오픈스택과 별개로 독립적 구축이 가능
AWS의 S3와 유사
Glance Imaging Service
가상 머신 이미지들을 저장/등록/관리/전달하기 위한 서비스로 Nova와 스토리지 간 중계 역할을 담당
Keystone 인증(Identity)서비스
통합 인증 시스템으로 오픈스택 서비스들을 위한 ID 제공
SQL, PAM, LDAP 등에 대한 backend를 제공
Horizon Administrative Web-Interface Service
오픈스택을 기반으로 구현된 서비스들을 관리자나 사용자가 제어하기 위한 웹 인터페이스 제공
Cinder Volume Service오픈스택 인스턴스에서 Persistent Block 단위의 디바이스를 제공
AWS의 EBS와 유사
Heat Orchestration
템플릿 형태의 클라우드 자동화를 위한 인터페이스를 제공
AWS의 CloudFormation과 유사
Ceilometer Telemetry
하이퍼바이저 레벨의 SMS정보와 같은 인스턴스 사용율에 대한 정보를 수집 및 제공
Neutron Networking
Software Defined Networking(SDN)의 프레임 제공
오픈스택에서의 인스턴스 네트워킹을 위한 서비스

왜 오픈스택을 클라우드 운영체제 라고 부를까?

쉽게 이해하기 위해 오픈 스택에서 가장 중요한 3가지 코어 프로젝트인 Nova, Glance, Swift 서비스들을 다음과 같이 일반 서버 컴퓨터와 비교해 본다.

OS 구성요소 담당 역할 오픈스택 서비스
Scheduler 서버의 자원 관리 Nova
Server Virtualization 서버의 가상 머신(VM)관리 Glance
File System Object Filesystem으로 컨텐츠 저장 Swift
User API 사용자 어플리케이션 접근 관리 Nova, Glance, Swift

클라우드 서비스를 구축하기 위한 실제 하드웨어 구성은 복잡하나, 클라우드 서비스를 사용하는 사용자(혹은 어플리케이션)입장으로 보면 하나의 커다란 서버 컴퓨터로 생각할 수 있고, 그러한 서버 컴퓨터를 동작시키기 위한 운영체제가 바로 오픈스택이라 보면 이해하는데 도움이 된다.

오픈스택은 퍼블릭 클라우드와 프라이빗 클라우드 서비스를 구축하기 위해 필요한 모든 소프트웨어를 제공하는데 그 목적이 있는 오픈 소스 프로젝트이다. 이 모든 기술들을 하나의 업체 혹은 몇몇 개발자들을 주축으로 오픈스택에 적용한다는 건 불가능에 가깝다. 다행히 오픈 스택은 각 서비스 별로 User API를 제공하고 있어 누구나 손쉽게 목적에 맞도록 수정이 가능하다.


https://rockplace.co.kr/os/openstack/
https://www.techtarget.com/searchcloudcomputing/definition/Windows-Azure-Fabric-Controller

'Cloud > 참고자료' 카테고리의 다른 글

컨테이너란? 컨테이너와 VM의 차이  (0) 2022.09.08
가상화(Virtualization)  (0) 2022.09.06
리전(Region), 가용 영역(Availability Zone)  (0) 2022.09.02