다음과 같은 강의를 정리하 자료입니다.
https://www.youtube.com/watch?v=lOmN8akWnUs
openstack
: on-premise, public-cloud, at the edge에서 사용
컴포넌트 역할
| keystone | 자원 할당 권한 확인 |
| cellometer | 자원 얼마나 쓰는지 수집 |
- tripleO를 이용한 배포 방법: OpenStack을 배포할 때 OpenStack 자체를 배포 도구로 사용
: 배포하려는 OpenStack을 overcloud, 이걸 배포할 때 쓰는 OpenStack을 undercloud라고 함
(undercloud: 배포 전용 소규모 OpenStack. 실제 서비스 안 함. 노드 프로비저닝/관리 담당, overcloud: 실제 사용자가 쓰는 운영 OpenStack 환경)
kvm(Kernel-based Virtual Machine): 리눅스 커널 자체에 내장된 하이퍼바이저, OpenStack의 Compute 서비스인 Nova가 VM을 생성할 때 기본적으로 KVM을 사용한다. Nova가 libvirt라는 라이브러리를 통해 KVM/QEMU에 명령을 내려서 VM을 띄운다.
- wallaby 이전
- Docker 기반 컨테이너: 모든 OpenStack 서비스가 Docker 컨테이너로 실행됨 (e.g. nova-api → docker container, neutron-server → docker container)
- Heat 중심 배포: Heat Template (YAML) 기반으로 전체 인프라 정의 배포 과정: Heat Template → OpenStack API → VM/서비스 생성
- wallaby 이후
- Docker → Podman 전환: Docker 데몬 의존성 제거, 보안 + rootless 지원
- ephemeral heat, metalsmith가 controller-node, comput-node에 운영체제 설치와 network 설정을 해줌 → 이후에 service 올라감
- 배포를 위한 test-bed 환경
- 첫 번째 그림: 구조 이해를 위한 개념적 모델, 두 번째 그림: 실제 배포 환경을 반영한 상세 모델
1-1. 첫 번째 그림 (개념 중심 구조): Director → Controller → Compute
- Director (Undercloud): OpenStack 배포를 담당하는 관리 노드로 노드 프로비저닝, 이미지 배포, 설정 관리 수행 → 설치 관리자 역할
- Controller: OpenStack 핵심 서비스 실행 노드
주요 서비스: Keystone (인증), Nova API, Neutron (네트워크), Glance (이미지)
→ 전체 시스템의 제어 역할
- Compute: 실제 가상머신이 실행되는 노드 → 사용자 인스턴스 실행 역할
1-2. 컨테이너 구조: 모든 노드에서 OpenStack 서비스는 컨테이너로 실행됨
컨테이너 런타임: Podman, 각 서비스는 독립된 컨테이너로 동작
핵심: OpenStack 서비스 = 컨테이너 기반 실행
1-3. 네트워크 구성 (논리적)
OpenStack은 네트워크를 목적별로 분리하여 사용
Provisioning: 배포 및 초기 설정용, Internal API: 내부 서비스 간 통신, Storage: 스토리지 통신, Tenant: 사용자 VM 네트워크, External: 외부 인터넷 연결
핵심: 네트워크를 분리하여 안정성과 성능 확보
2-1. 두 번째 그림 (실제 환경 기반 구조)
2-2. 물리 네트워크 인터페이스 (NIC)
각 노드는 실제 네트워크 인터페이스를 가짐 e.g.: ens160, ens192 / 각 NIC는 특정 네트워크 역할에 연결됨
2-3. VLAN 기반 네트워크 분리: 하나의 물리 네트워크를 여러 논리 네트워크로 분리
e.g VLAN 20: Internal API, VLAN 30: Storage, VLAN 40: Tenant, VLAN 50: External
핵심: 물리 인프라를 효율적으로 분리하여 사용
2-4. NAT 및 Host-only 네트워크
가상 환경에서 사용되는 네트워크 구성 → Default NAT: 외부 인터넷 연결, Host-only: 내부 통신 전용 네트워크
용도: 외부 연결과 내부 통신을 분리
2-5. KVM 하이퍼바이저: OpenStack 노드 자체가 KVM 기반 가상머신으로 실행됨
구조: 물리 서버 → KVM (하이퍼바이저), Director / Controller / Compute (VM), OpenStack 서비스 (컨테이너), 사용자 VM
핵심: VM 위에 OpenStack이 올라가고, 그 위에서 다시 VM을 생성
3. 차이
항목 첫 번째 그림 두 번째 그림
| 목적 | 개념 설명 | 실제 배포 환경 |
| 네트워크 | 논리적 표현 | VLAN + NIC 기반 |
| 하이퍼바이저 | 표시 없음 | KVM 명시 |
| 복잡도 | 낮음 | 높음 |
| 현실성 | 낮음 | 높음 |
'CS > openstack' 카테고리의 다른 글
| [Openstack] Glance - 디스크 포맷별 특징 (0) | 2026.05.15 |
|---|---|
| [Openstack] Keystone (0) | 2026.05.15 |
| [Openstack] 오픈스택 강의1 - 클라우드 인프라 서비스의 구조 (1) | 2026.05.15 |