OpenStack 소개

김유경·2025년 5월 17일

OpenStack이란?

OpenStack은 전통적인 데이터 센터의 물리적인 서버, 네트워크, 스토리지를 가상화하여 사용자에게 클라우드 서비스 형태로 제공해주는 오픈소스 클라우드 인프라 플랫폼입니다

OpenStack의 주요 특징

  • 클라우드 인프라 관리: VM, Bare Metal, Container 리소스 제공
  • 가상화된 인프라 API 제공: IT 자원을 추상화해 API 형태로 사용자에게 제공
  • 모듈형 구조: 각 기능별 컴포넌트가 독립적으로 구성

OpenStack 주요 컴포넌트

이미지 출처: OpenStack 공식 홈페이지

  • Nova(Computing Service): VM 및 컴퓨팅 리소스 관리
  • Neutron (Networking): 가상 네트워킹 관리
  • Glancd (Image Service): VM 이미지 등록, 저장, 관리
  • Cinder (Block Storage): 블록 스토리지 제공
  • Swift (Object Storage): 객체 스토리지 관리
  • Keystone (Identity Service): 인증 및 권한 관리

DevStack

빠르게 테스트하거나 개발할 때는 DevStack을 사용합니다
DevStack은 간단하게 VM 하나에 OpenStack의 코어 컴포넌트를 올려서 테스트할 수 있는 스크립트 기반 툴입니다

DevStack 설치 방법

git clone https://opendev.org/openstack/devstack
cd devstack
./stack.sh

💡 VirtualBox VM (4 Core, 8GB RAM) 환경에서도 충분히 구동 가능합니다


OpenStack의 핵심 구조

OpenStack은 인플를 API로 제공한다고 하지만, 실제로 자원 자체를 직접 다루지는 않습니다
OpenStack은 자원의 상태 관리와 명령 전달만 담당하며, 자원을 실제로 생성/삭제하는 건 다른 시스템(Driver, 하이퍼바이저, 스토리지 시스템)이 처리합니다

예시: Nova(Compute Service)의 동작 방식
1. 사용자가 OpenStack Nova API로 VM 생성 요청
2. Nova는 설정된 하이퍼바이저(예: KVM) Driver를 통해 KVM에 인스턴스 생성 명령 전달
3. KVM이 VM 생성 완료
4. Nova가 상태 확인 후 사용자에게 완료 결과 전달

지원 하이퍼바이저 지원 하이퍼바이저 목록 보기
OpenStack은 다양한 하이퍼바이저를 지원합니다

  • KVM
  • QEMU
  • VMware vSphere 등

Nova API Compute API 문서
OpenStack Nova API는 Compute 리소스를 위한 표준 REST API를 제공합니다


참고 영상

https://www.youtube.com/watch?v=F9WRSR8AgYM

0개의 댓글