Proxmox VM 관리

Proxmox에서 VM을 만들고 템플릿화하고 운영하는 기준.


Proxmox에서 VM을 만들고 템플릿화하고 운영하는 기준.

VM을 쓰는 경우

VM은 완전한 OS 격리가 필요할 때 쓴다.

  • Kubernetes 노드
  • Windows 서버
  • 커널 실험
  • 보안 격리가 필요한 서비스
  • 다른 OS 배포판 테스트
  • LXC로 처리하기 애매한 워크로드

가볍고 단순한 Linux 서비스는 02-04-Proxmox-LXC-컨테이너가 더 적합할 수 있다.

VM 생성 전 결정

항목기준
BIOSOVMF(UEFI) 또는 SeaBIOS
Machineq35 권장 케이스 많음
Disk busVirtIO SCSI 권장
NetworkVirtIO 권장
CPU typehost 또는 x86-64-v2 계열 검토
Cloud-Init반복 생성할 VM이면 사용
Agentqemu-guest-agent 설치

기본 생성 흐름

  1. ISO 업로드
  2. VM 생성
  3. CPU/Memory/Disk/NIC 설정
  4. OS 설치
  5. qemu-guest-agent 설치
  6. 업데이트
  7. 템플릿으로 변환하거나 운영 VM으로 사용

CLI 예시:

qm create 9000 --name ubuntu-template --memory 2048 --cores 2 --net0 virtio,bridge=vmbr0
qm set 9000 --scsihw virtio-scsi-pci
qm set 9000 --scsi0 local-zfs:32
qm set 9000 --ide2 local:iso/ubuntu.iso,media=cdrom
qm set 9000 --boot order=scsi0

Cloud-Init 템플릿

반복 생성할 Linux VM은 Cloud-Init 템플릿으로 관리한다.

기본 흐름:

  1. cloud image 다운로드
  2. VM 생성
  3. cloud image를 disk로 import
  4. Cloud-Init drive 추가
  5. user, ssh key, network 설정
  6. template 변환
  7. clone으로 VM 생성

예시:

qm create 9000 --name ubuntu-cloud --memory 2048 --cores 2 --net0 virtio,bridge=vmbr0
qm importdisk 9000 ubuntu-cloud.img local-zfs
qm set 9000 --scsihw virtio-scsi-pci --scsi0 local-zfs:vm-9000-disk-0
qm set 9000 --ide2 local-zfs:cloudinit
qm set 9000 --boot c --bootdisk scsi0
qm set 9000 --serial0 socket --vga serial0
qm template 9000

Clone 전략

방식특징
Full clone독립 디스크, 안정적
Linked clone빠르고 공간 절약, 원본 의존

운영 VM은 full clone이 단순하고 안전하다. 실험용 대량 생성은 linked clone도 좋다.

qm clone 9000 101 --name k8s-cp-01 --full
qm set 101 --memory 4096 --cores 2
qm start 101

리소스 배정 기준

워크로드CPUMemoryDisk
작은 Linux 서버1-2 core1-2GB16-32GB
Kubernetes control plane2 core4GB+32GB+
Kubernetes worker2-4 core4-8GB32GB+
Windows VM2-4 core4-8GB+64GB+

CPU는 어느 정도 overcommit할 수 있지만, 메모리는 과하게 잡으면 host 전체가 불안정해진다.

qemu-guest-agent

VM 내부에 qemu-guest-agent를 설치하면 Proxmox가 VM 상태를 더 정확히 알 수 있다.

# Debian/Ubuntu
apt install qemu-guest-agent
systemctl enable --now qemu-guest-agent

Proxmox VM 옵션에서 QEMU Guest Agent를 활성화한다.

스냅샷 운영

스냅샷은 변경 전 안전장치로 좋다.

qm snapshot <vmid> before-upgrade
qm rollback <vmid> before-upgrade
qm delsnapshot <vmid> before-upgrade

주의:

  • 장기 보관용으로 쓰지 않기
  • DB VM은 application-consistent 백업 검토
  • 스냅샷이 많으면 성능과 관리가 나빠질 수 있음

VM 운영 체크리스트

  • Guest Agent 활성화
  • SSH key 로그인
  • 정기 업데이트
  • 백업 정책 연결
  • 디스크 사용량 모니터링
  • 필요한 포트만 방화벽 허용
  • 템플릿과 운영 VM 구분

장애 대응

qm list
qm status <vmid>
qm config <vmid>
journalctl -u pvedaemon -n 100

자주 보는 원인:

  • ISO/boot order 문제
  • disk storage full
  • bridge/VLAN 설정 오류
  • CPU type 호환성
  • guest agent 미설치
  • VM 내부 OS 문제

관련 노트

  • 상위: 00-MOC-Proxmox
  • LXC: 02-04-Proxmox-LXC-컨테이너
  • 백업: 03-01-Proxmox-백업-복구
  • 명령어: Proxmox-명령어-치트시트