OpenStack은 풀링된 가상 리소스를 사용하여 프라이빗 및 퍼블릭 클라우드를 구축하고 관리하는 오픈소스 플랫폼입니다. OpenStack 플랫폼을 포함하는 툴, 일명 "프로젝트"는 컴퓨팅, 네트워킹, 스토리지, Identity 및 이미지 서비스의 핵심 클라우드 컴퓨팅 서비스를 처리합니다. 또한 수십 개 이상의 옵션 프로젝트를 번들로 묶어 배포 가능한 고유의 클라우드를 생성할 수도 있습니다.
가상화에서는 다양한 벤더별 프로그램에서 스토리지, CPU, RAM과 같은 리소스를 추상화하여 하이퍼바이저를 통해 분할한 다음 필요에 따라 배포합니다. OpenStack은 일관된 애플리케이션 프로그래밍 인터페이스(Application Programming Interface, API) 세트를 사용해 해당 가상 리소스를 분리된 풀로 1단계 더 추상화하며, 이를 기반으로 하는 표준 클라우드 컴퓨팅 툴에서 관리자와 사용자가 직접 인터랙션할 수 있습니다.
- (5)6 Core Services
Nova - Compute Service (CPU & Memory) - AWS(EC2)
Glance - Image Service (.ISO, OS) - AWS(AMI)
Neutron - Network Service (G/W, S/W) - AWS(VPC)
Cinder - Block Storage Service (SSD, HDD) - AWS(EBS)
Keystone - Security (ID, PW, Pam ..) - AWS(IAM)
Swift - REST API Service / Webshare
OpenStack의 아키텍처는 수많은 오픈소스 프로젝트로 이루어져 있습니다. 이 프로젝트는 OpenStack의 언더클라우드 및 오버클라우드(각각 시스템 관리자 및 클라우드 사용자가 이용)를 설정하는 데 사용됩니다. 언더클라우드는 시스템 관리자가 최종 사용자의 OpenStack 환경, 즉, 오버클라우드를 설정하고 관리하는 데 필요한 코어 구성 요소로 이루어 집니다.
컴퓨팅, 네트워킹, 스토리지, ID, 이미지를 처리하는 6가지 안정적인 핵심 서비스가 있으며, 개발이 진행됨에 따라 수십 가지 이상의 옵션이 제공됩니다. 이 6가지 핵심 서비스는 나머지 프로젝트에서 대시보드, 오케스틀이션, 베어메탈(bare metal) 프로비저닝, 메시징, 컨테이너, 거버넌스를 처리할 수 있도록 하는 인프라가 됩니다.
아직 완벽히 이해하지 못하고 서비스 정리가 안되서 정리 및 이해 중에 있습니다.
Core Service | |
---|---|
Compute Service(CPU, RAM) | Nova, EC2(Elastic Compute Cloud) |
Storage Service(SSD, 구글드라이브, NAS, NFS) | Cinder; Block Storage, EBS(Elastic Block Storage), Swift; Object Storage, S3(Simple Stroage Service) Manila; File Storage, EFS(Elastic File System) |
Network Service(IP, Subnet) | Neutron, VPC(Virtual Private Cloud; 격리된(isolated)) |
Image Service(OS) | Glance, AMI(Amazon Machine Image) |
Identity Service(User(ID/PW), Group, Role, ...) | Keystone, IAM(Identity Access Management) |