02. Proxmox VE 소개

Proxmox VE란 무엇인가
Proxmox VE(Proxmox Virtual Environment)는 KVM/QEMU 기반 가상 머신과 LXC 기반 Linux 시스템 컨테이너를 하나의 플랫폼에서 관리하는 오픈소스 서버 가상화 플랫폼입니다.
단순히 VM을 생성하는 하이퍼바이저가 아니라, Web UI, CLI, REST API, 클러스터, 고가용성(HA), 스토리지, 가상 네트워크, 백업·복구, 방화벽, 권한 관리 기능을 통합 제공합니다.
Proxmox VE
├── Virtual Machines
│ └── KVM / QEMU 기반 VM
├── Containers
│ └── LXC 기반 Linux System Container
├── Management
│ ├── Web UI
│ ├── CLI
│ └── REST API
├── Cluster / HA
├── Storage / Backup
└── Network / Firewall
Proxmox VE는 Debian GNU/Linux 기반으로 동작합니다. Linux의 네트워크, 스토리지, 패키지 관리, 서비스 관리 체계를 활용하면서 VM과 컨테이너를 운영할 수 있다는 점이 핵심 특징입니다.
즉, Proxmox VE는 “VM과 컨테이너를 실행하는 소프트웨어”이면서 동시에 “프라이빗 가상화 인프라를 운영하는 관리 플랫폼”입니다.
VM과 LXC 컨테이너
Proxmox VE는 KVM 기반 VM과 LXC 기반 시스템 컨테이너를 함께 제공합니다.
| 구분 | KVM 기반 VM | LXC 기반 컨테이너 |
|---|---|---|
| 가상화 방식 | 하드웨어 가상화 | OS 수준 가상화 |
| 커널 | VM마다 독립 게스트 커널 | Proxmox 호스트 Linux 커널 공유 |
| 지원 OS | Linux, Windows, BSD 등 | Linux 계열 |
| 격리 | 상대적으로 강한 격리 | 호스트 커널 공유 기반 격리 |
| 자원 사용량 | 게스트 OS 전체가 필요 | 상대적으로 가볍고 빠름 |
| 관리 명령 | qm |
pct |
| 대표 용도 | Windows, DB, Kubernetes 노드, 강한 격리 필요 서비스 | DNS, Bastion, 유틸리티, 테스트용 Linux 서비스 |
KVM은 Linux 커널의 하드웨어 가상화 기능을 사용해 게스트 CPU 실행을 가속합니다. QEMU는 VM 프로세스와 BIOS/UEFI, 디스크 컨트롤러, NIC 같은 가상 하드웨어를 제공합니다.
LXC 컨테이너는 독립된 Linux 사용자 공간을 제공하지만, 자체 커널을 실행하지 않고 Proxmox 호스트 커널을 공유합니다. 따라서 Windows나 다른 커널이 필요한 워크로드는 실행할 수 없으며, VM과 같은 수준의 커널 격리를 기대해서는 안 됩니다.
다음 기준으로 선택하면 됩니다.
Windows 또는 독립 커널이 필요한가?
├── Yes → KVM VM
└── No
└── Linux 경량 서비스인가?
├── Yes → LXC Container 검토
└── 강한 격리·드라이버·커널 제어가 필요함 → KVM VM
관리 방식
Proxmox VE는 Web UI, CLI, REST API를 제공합니다.
| 방식 | 주 용도 | 특징 |
|---|---|---|
| Web UI | 초기 구축, 일상 운영, 상태 확인 | HTTPS 기반의 직관적인 관리 화면 |
| CLI | 장애 분석, 반복 작업, 세부 점검 | SSH와 쉘 스크립트 기반 운영 |
| REST API | IaC, 외부 시스템 연동, 대량 프로비저닝 | Ansible, Terraform, CI/CD, 내부 포털 연계 |
| Web Shell | 빠른 CLI 점검 | 브라우저에서 노드 쉘 접근 |
기본 Web UI는 일반적으로 다음 주소로 접근합니다.
https://<proxmox-node-fqdn-or-ip>:8006
자주 사용하는 CLI는 다음과 같습니다.
| 명령어 | 용도 |
|---|---|
qm |
QEMU/KVM 기반 VM 관리 |
pct |
LXC 컨테이너 관리 |
pvesh |
REST API를 CLI에서 호출 |
pvesm |
스토리지 관리 |
pvecm |
클러스터 상태와 구성 관리 |
vzdump |
VM·컨테이너 백업 |
pveversion |
Proxmox VE 버전 확인 |
# VM과 컨테이너 목록 확인
qm list
pct list
# 노드 및 구성 요소 버전 확인
pveversion -v
# 스토리지 상태 확인
pvesm status
소규모 환경에서는 Web UI만으로도 운영할 수 있습니다. 하지만 반복 배포, 다수 VM 생성, 표준 템플릿 적용, 변경 이력 관리가 필요하면 API·Ansible·Terraform·Git 기반 관리로 확장하는 것이 좋습니다.
클러스터와 운영 기능
Proxmox VE는 단일 노드로 시작할 수 있지만, 여러 노드를 클러스터로 구성하면 하나의 관리 도메인에서 운영할 수 있습니다.
Proxmox VE Cluster
├── pve-01
├── pve-02
└── pve-03
│
├── VM / Container 관리
├── 스토리지 및 네트워크 관리
├── 백업 작업 관리
└── HA 대상 리소스 관리
클러스터 환경에서는 pmxcfs와 Corosync가 중요한 역할을 합니다.
pmxcfs는 Proxmox VE 설정을 저장하는 클러스터 파일시스템입니다.- Corosync는 노드 간 클러스터 통신과 설정 복제에 사용됩니다.
- 정상 클러스터 노드라면 어느 노드에 접속해도 전체 클러스터를 관리할 수 있습니다.
- HA Manager는 노드 장애 시 HA 대상으로 지정된 VM 또는 컨테이너를 정상 노드에서 재기동할 수 있습니다.
다만 클러스터, 라이브 마이그레이션, HA, 공유 스토리지, 백업, DR은 서로 다른 개념입니다.
| 기능 | 의미 |
|---|---|
| 클러스터 | 여러 노드를 하나의 관리 도메인으로 구성 |
| 라이브 마이그레이션 | 실행 중인 VM을 다른 노드로 이동 |
| HA | 노드 장애 시 지정 리소스를 정상 노드에서 재기동 |
| 공유 스토리지 | 여러 노드가 같은 VM 디스크에 접근 |
| 백업 | 별도 저장소에 데이터와 VM을 보관 |
| DR | 사이트 장애까지 고려한 복구 체계 |
클러스터와 HA는 단순 설치 옵션이 아니라 Quorum, 네트워크 안정성, 스토리지 접근성, 백업·복구 체계까지 포함한 설계 항목입니다.
Proxmox VE가 적합한 환경
Proxmox VE는 다음 환경에서 특히 검토할 수 있습니다.
- Linux 기반 인프라와 네트워크·스토리지 운영 경험이 있는 조직
- 개발, 테스트, 검증용 VM 환경이 필요한 팀
- Kubernetes, GitLab, Harbor, Jenkins, 모니터링 같은 플랫폼 서비스를 자체 운영하는 환경
- VMware 의존도와 가상화 비용 구조를 재검토하는 조직
- VM과 Linux 시스템 컨테이너를 함께 운영하려는 환경
- 홈랩, 기술 실험, 교육 환경
- 폐쇄망에서 내부 패키지·ISO·템플릿·인증서·백업 체계를 운영해야 하는 환경
- Cloud-Init, Ansible, Terraform, API 기반 자동화를 도입하려는 팀
예를 들어 Proxmox VE 위에 Kubernetes, GitLab, Harbor, 모니터링, DNS 같은 서비스를 VM 또는 컨테이너로 구성할 수 있습니다.
Proxmox VE
├── Management Services
│ ├── Bastion
│ ├── DNS / NTP
│ └── Monitoring
├── DevOps Services
│ ├── GitLab
│ ├── Harbor
│ └── Jenkins
└── Kubernetes
├── Control Plane
└── Worker Nodes
이때 Proxmox VE는 애플리케이션 플랫폼 자체가 아니라, Kubernetes·DevOps·데이터 서비스가 실행되는 기반 인프라 역할을 합니다.
도입 전에 확인할 것
Proxmox VE 설치는 비교적 간단합니다. 하지만 안정적인 운영 환경은 네트워크, 스토리지, 백업, 보안, 자동화 설계에서 결정됩니다.
| 영역 | 주요 확인 사항 |
|---|---|
| 하드웨어 | CPU 가상화 지원, 메모리, 디스크 성능, NIC 수, 전원 이중화 |
| 네트워크 | 관리망, 서비스망, 스토리지망, Corosync 통신, VLAN, MTU |
| 스토리지 | Local-LVM, ZFS, NFS, iSCSI, Ceph 선택과 확장 전략 |
| 클러스터·HA | 노드 수, Quorum, 장애 도메인, 공유·복제 스토리지 |
| 백업·DR | 별도 백업 저장소, 보존 정책, RPO/RTO, 정기 복구 테스트 |
| 보안 | 권한 분리, TLS, 2FA, API Token, 방화벽, 패치 정책 |
| 자동화 | 템플릿, Cloud-Init, Ansible, Terraform, Git 기반 변경 관리 |
| 폐쇄망 | 내부 패키지 저장소, ISO·템플릿 반입, 사설 CA, DNS·NTP |
Proxmox VE는 유연한 플랫폼이지만, 운영 책임까지 자동으로 줄여 주지는 않습니다. VM 생성 기능보다 네트워크, 스토리지, 백업, 보안, 표준화, 복구 검증을 먼저 설계해야 합니다.
핵심 정리
- Proxmox VE는 KVM/QEMU 기반 VM과 LXC 기반 Linux 시스템 컨테이너를 통합 관리하는 오픈소스 가상화 플랫폼입니다.
- Web UI, CLI, REST API, 클러스터, HA, 스토리지, 네트워크, 백업·복구, 권한·방화벽 기능을 제공합니다.
- VM은
qm, LXC 컨테이너는pct로 관리합니다. - VM은 독립 커널이 필요한 범용·고격리 워크로드에, LXC는 경량 Linux 서비스에 적합합니다.
- 클러스터, 라이브 마이그레이션, HA, 공유 스토리지, 백업, DR은 서로 다른 설계 항목입니다.
- 운영 환경에서는 설치 자체보다 네트워크, 스토리지, 백업, 보안, 자동화, 장애 대응 체계가 더 중요합니다.
참고 자료
- Proxmox VE Introduction
- Proxmox VE Administration Guide
- Proxmox Cluster File System
- Proxmox VE Service Daemons
- Proxmox Backup Server Documentation