- Openstack은 데이터센터 전체에서 대규모 컴퓨팅 스토리지 및 네트워킹 리소스 풀을 제어하는 서비스형 인프라 플랫폼임
- 모든 리소스는 대시보드를 통해 관리자가 제어하며, 동시에 사용자가 웹 인터페이스를 통해 리소스를 프로비저닝 할 수 있도록 권한을 부여함
- 즉, 관리자와 사용자는 대시보드를 통해 오픈스택의 작업을 수행할 수 있음

- 오픈스택은 public / private cloud를 위한 오픈소스 클라우드 컴퓨팅 플랫폼을 생산하도록 함
- 확장성이 뛰어나고, 기능이 풍부함
- 오픈스택은 데이터센터 내에 또는 여러 데이터센터에 걸친 hypervisor, storage 및 network device set을 모두 리소스 풀로 전환함
- 즉, 여러 자원들을 하나로 묶어서 하나의 큰 resource pool 처럼 관리할 수 있게 해주는 플랫폼임
- 오픈스택은 이미 데이터센터에 있는 모든 가상화된 것 위에 있는 제어 계층이라고 이해하면 됨
- Openstack 컴퓨팅의 경우, hypervisor 관계없이 컴퓨팅 환경에 대한 동일한 추상화 및 orchestartion 계층 제어가 가능하도록 제공하고 있음
- 조금 더 자세히 알아보자
- openstack은 Bare Metal virtual machine과 컨테이너에서 모든 컴퓨팅, 네트워킹, 스토리지 리소스를 위한 다목적 플랫폼을 제공함
- 오픈스택 프로젝트는 두가지 핵심 서비스와 선택 서비스(option service)로 논리적으로 나누어져 있음
- 이렇게 구분하는 이유는 openstack 기반 클라우드의 아키텍처 및 배포 프로세스를 간소화하기 위해서임

https://www.openstack.org/software/project-navigator/openstack-components#openstack-services
Open Source Cloud Computing Platform Software - OpenStack
OpenStack is a an open source cloud operating system managing compute, storage, and networking resources throughout a datacenter using APIs
www.openstack.org
- 여기서 프로젝트의 status를 확인할 수 있음

- 앞으로 살펴볼거를 다이어그램으로 나타낸거임
- KeyStone (Identity Service)
- OpenStack내에서 인증 및 권한을 부여 받게됨
- 모든 사람들은 identity를 가지고 있어야 하며, 서로를 인증해야함
- Keystone은 모든 서비스가 중앙 등록 지점(central register point)으로 등록되는 곳임
- 즉, 서비스 및 사용자에게 catalog를 제공하여 openstack 서비스에 도달하는 방법을 알 수 있게 함
- Glance (Image Service)
- virtual machine disk의 이미지를 저장하고 검색을 수행함
- openstack computing은 인스터는 프로비저닝 중에 이를 활용함
- VM이 시작될려면 이미지가 필요함
- 이미지를 미리 빌드하고 미리 glance로 로드해야 VM이 시작될 때 glance에서 이미지 사본을 가져갈 수 있음
- 매번 설치하는 번거로운 과정을 줄일 수 있음
- Neutron (Network Service)
- 인스턴스 연결을 위해서는 네트워크가 필요함
- Neutron은 오픈스택 네트워킹으로 가상 네트워크를 생성하고 가상 머신을 연결함
- 또한, 다른 오픈스택 서비스를 위한 서비스로서의 네트워크 연결을 가능하게 함
- 확장성이 매우 좋음
- Nova (Compute Service)
- 인증이 완료되면 이미지와 네트워크를 사용할 수 있게 되면 Nova가 개입함
- Nova는 openstack 환경에서 컴퓨팅 인스턴스의 수명 주기를 관리함
- VM의 launching, migration, pausing, resizing 등의 기능을 포함함
- Nova는 하이퍼바이저 위에 있는 계층으로, 클라우드에 있는 모든 네트워크 스토리지와 컴퓨팅 리소스를 조정하는 역할을 함
- 즉, hypervisor와 대화하며 리소스를 같이 조정하고 VM이 시작되도록 함
- Cinder(Block storage)
- cinder는 volume service임
- cinder는 실행 중인 인스턴스에 영구 블록 스토리지를 제공함
- 보통 VM은 임시 볼륨으로 부팅됨되기에 종료되면 VM내의 데이터가 손실됨
- 종료시에도 해당 데이터를 유지하고 싶으면, 영구 블록 스토리지에 연결해 보존할 수 있음
- 이 영구 블록 스토리지는 다른 인스턴스에 다시 연결해 사용할 수 있음
- 이것은 공유 스토리지가 아님!!! 블록 스토리지이므로 볼륨과 인스턴스간에 1:1관계를 가짐
- 공유 파일 시스템은 Manilla라는 별도의 공유 스토리지 프로젝트가 있음
- Swift (Object Storage)
- Mpeg4 비디오 파일과 같은 간단한 object를 저장하고 검색할 수 있도록 해줌
- http기반 api를 사용하며 http get 및 put 명령어를 통해 객체와 메타데이터를 전달함
- 위키피디아가 이런 예시임 (유연성, 확장성을 가지기에 전체 시스템을 object storage로 사용)
- Horizon (Dashboard Service)
- 인스턴스 시작, IP 주소 할당, 액세스 제어 구성 등 기본 오픈스택 서비스와 웹 기반 셀프 서비스 포털을 제공함
OpenStack Architecutre

- 오픈스택은 여러 소프트웨어의 집합체임
- 여러 소프트웨어가 모여 완전한 인프라 서비스를 제공할 수 있도록 함
- 서비스 간의 통합은 공개 애플리케이션 프로그래밍 인터페이스를 통해 각 서비스가 제공되며, API를 통해 이루어짐
- 구현자는 API를 통해 각 서비스를 사용할 수 있도록 한 서비스의 내부를 전환하거나 변경할 수도 있음
- Nova를 예시로 한번 보면
- Nova 서비스는 단일 엔티티이며, 별도의 API 프로세스가 있음
- 이 API 프로세스는 API 요청을 수신하고 전처리한 후 Nova의 다른 부분으로 전달함
- Nova API는 Neutron으로부터 요청을 받은 후 이 요청을 Nova Conductor와 다른 Nova 컴포넌트에 전달하가거나, 이 메시지 지 큐를 통해 계산을 수행함
- 오픈스택을 사용하는 방법은 3가지임
- Horizon 대시보드
- The Command Line Interface
- The API
$ curl -s -H "X-AUTH-Token: $OS_TOKEN" \
$OS_COMPUTE_API/flavors \
| python -m json.tool'클라우드 > OpenStack' 카테고리의 다른 글
| glance에서 keystone 서비스 연동 (0) | 2025.07.19 |
|---|---|
| Key Stone install & managment (0) | 2025.07.06 |
| Openstack Installation (0) | 2025.07.06 |
| Openstack Storage - Cinder/Manila/Ceph (0) | 2025.07.05 |
| Openstack Storage-Swift (0) | 2025.07.05 |