[Proxmox 시리즈 2편] 설치 직후 무엇을 점검하고 어떤 레이아웃을 먼저 잡아야 하는가

English version

Proxmox VE를 설치하고 로그인한 순간이 가장 설렙니다. 그러나 UI를 훑어보다가 그대로 VM을 만들기 시작하면 곧바로 스토리지와 네트워크 구성이 꼬이기 쉽습니다. 설치 직후에 해야 할 일은 기능을 테스트하는 것이 아니라, 이 호스트가 앞으로 어떤 저장소와 네트워크 계층, 백업 경로를 가질지 결정하는 것입니다.

입문자에게 특히 중요한 것은 "지금 이 미니 PC에서 활용 가능한 자원이 무엇인지"와 "어떤 자원을 어디에 쓸지"를 구분하는 감각을 만드는 일입니다. 이번 글에서는 설치 직후 살펴볼 항목을 다섯 묶음으로 정리하고, 각 항목이 엉키면 어떤 장애가 생기는지 먼저 짚은 뒤 구체적인 점검 절차를 제공합니다. Proxmox UI를 처음 열었을 때 Datacenter -> StorageDatacenter -> Network에 이미 기본 항목이 보이는 이유, 그리고 그것들을 건드리기 전에 왜 계획이 필요한지도 함께 설명합니다.

이 글의 흐름

  1. local-lvm과 기타 스토리지를 어떻게 구분할 것인가
  2. 브리지 기본값을 어떻게 검증하고 확장할 것인가
  3. ISO·템플릿 저장소를 어디에 둘 것인가
  4. 백업 위치를 언제 확보할 것인가
  5. 미니 PC 하드웨어에서 무엇을 먼저 점검할 것인가

이번 글에서 새로 나오는 용어

  1. local: Proxmox 설치 시 생성되는 디렉터리 기반 스토리지로, ISO와 컨테이너 템플릿 보관에 적합합니다.
  2. local-lvm: LVM-Thin 풀로 만들어지는 기본 디스크 풀로, VM 디스크와 LXC 루트 파일시스템을 저장합니다.
  3. 브리지 포트 (bridge port): 기본 vmbr0가 참조하는 물리 NIC를 뜻하며, 잘못 지정하면 VM이 외부망과 단절됩니다.
  4. 헬스 체크 (health check): 설치 직후 전원, 저장소 SMART, 팬 속도 등 하드웨어 상태를 점검하는 기본 절차입니다.

읽기 카드

  • 예상 소요 시간: 20분
  • 사전 준비: Proxmox VE 8.x를 설치하고 웹 UI에 접속할 수 있는 상태
  • 읽고 나면: 설치 직후 스토리지·네트워크·백업 구성을 어떤 순서로 다뤄야 하는지 설명할 수 있습니다.

local-lvm과 기타 스토리지는 어떻게 구분할 것인가

설치가 끝나면 locallocal-lvm이라는 두 스토리지가 기본으로 등록되어 있습니다(사용자 설정에 따라 data 같은 이름일 수 있음). Proxmox 설치 프로그램은 부팅 디스크를 "파일을 저장하는 디렉터리"(local)와 "VM·컨테이너 디스크 전용 LVM-Thin"(local-lvm)으로 자동 나눕니다. local은 "폴더 기반 드라이브", local-lvm은 "가상 디스크 전용 드라이브" 정도로 이해하면 편합니다. 많은 입문자가 VM 디스크를 local에 만들거나 ISO를 local-lvm에 업로드하는 실수를 반복합니다. 두 스토리지의 쓰임새를 구분하지 못하면 Thin 풀 여유 공간이 10~15% 이하로 떨어져 경고가 나거나, ISO가 어느 풀에 있는지 모르고 복구 시간을 허비하게 됩니다. 둘의 역할을 명확히 나누면 이후 관리가 쉬워집니다.

  1. local-lvm은 VM과 LXC의 디스크가 자리 잡는 기본 풀입니다. LVM-Thin은 필요한 블록만 즉시 할당하는 Thin Provision 기법을 쓰므로 공간을 아끼고, Copy-on-Write 스냅샷을 빠르게 만들 수 있습니다. Thin 풀은 여유 공간이 10~15% 이하로 줄면 경고가 발생하고, 메타데이터 풀(metadata_percent)이 포화되면 여유 공간이 있더라도 쓰기를 거부합니다. lvs -o +data_percent,metadata_percent local-lvm 명령으로 두 값을 동시에 확인하고, VM당 예상 사용량에 스냅샷 여유분(전체 용량의 20~25%)을 더해 항상 버퍼를 남겨 두십시오. 예를 들어 500GB 풀에서 6개의 VM이 60GB씩 사용한다면 360GB가 이미 할당된 셈이므로, 최소 100GB 이상의 여유 공간을 따로 잡아둬야 스냅샷과 증분 백업을 안전하게 유지할 수 있습니다.
  2. local은 ISO, LXC 템플릿, 백업 스크립트 같은 파일형 자산을 두는 곳으로 두는 편이 안전합니다. local에서도 qcow2 파일로 VM 디스크를 만들면 스냅샷이 가능하긴 하지만, 관리 화면에서 Thin 풀과 파일 풀을 섞어 쓰면 백업 대상과 성능 추적이 복잡해집니다.
  3. 추가 NVMe나 SATA SSD가 있다면 Directory 스토리지 또는 별도 LVM-Thin 풀을 만들어 템플릿 저장소, 고성능 VM, 백업 임시 버퍼로 역할을 나누십시오. Directory 타입에 VM 디스크를 둘 때의 성능은 기저 파일시스템과 드라이브 종류에 따라 크게 달라집니다. HDD 기반 ext4/XFS라면 LVM-Thin보다 느릴 수 있지만, NVMe + ext4 환경에서는 비슷하거나 더 나은 지연 시간을 얻을 수도 있습니다. Proxmox 스토리지별 기능 차이는 공식 비교표를 참고하면 됩니다.

자주 하는 실수

  • ISO를 local-lvm에 업로드했다가 잊어버려 Thin 풀을 잠식하는 경우
  • VM 디스크를 local에 두었다가 파일 기반 디스크와 LVM-Thin 디스크가 섞여 백업/모니터링 구분이 어려워지는 경우
  • LXC 루트 디스크를 모두 한 풀에 넣어 백업·복제 시점이 몰리는 경우

처음부터 역할을 명확히 하면 후반에 스토리지를 다시 나누느라 서비스 중단 시간을 만들 필요가 없습니다.

브리지는 어떻게 검증하고 확장할 것인가

Proxmox 설치 시 기본으로 vmbr0가 생성되고, 대부분의 미니 PC에서는 단일 NIC를 브리지합니다. 설치 직후에는 필수 점검 2단계선택 확장 2단계로 나눠 진행하십시오.

  1. 물리 NIC 확인 (필수): Datacenter -> Node -> Network에서 vmbr0를 클릭하고 Bridge ports 항목이 의도한 NIC(예: eno1)인지 확인합니다. NIC를 바꿀 예정이라면 먼저 IPMI, 로컬 콘솔, Proxmox Shell 등 오프라인 접근 경로를 확보해야 네트워크가 끊겼을 때 복구할 수 있습니다. UI에서 올바른 NIC로 교체 후 Apply Configuration을 클릭하면 즉시 재시작되므로, SSH 세션이 끊겨도 당황하지 않도록 대비하십시오.
  2. 관리 IP 고정 (필수): DHCP를 그대로 두면 나중에 관리 IP가 바뀌는 순간 접속이 끊깁니다. vmbr0 편집 화면에서 고정 IP와 게이트웨이, DNS 서버를 지정하거나, 라우터에서 DHCP 예약으로 MAC과 IP를 고정하십시오. 적용 후에는 아래 명령으로 인터페이스 상태를 확인합니다.
ip link show vmbr0
ip addr show vmbr0
# "state UP"와 의도한 IP가 동시에 보이면 정상
  1. 추가 브리지·VLAN 설계 (선택): VLAN(Virtual LAN)은 단일 물리 링크 위에 802.1Q 태그를 덧붙여 여러 논리 네트워크를 분리합니다. NIC가 하나뿐이라면 vmbr0를 생성할 때 VLAN aware 옵션을 켜고, VM 네트워크 설정에도 VLAN ID를 지정해야 vmbr0.<VLAN-ID> 형태의 태그형 인터페이스가 동작합니다. 스위치 포트는 Trunk/Tagged 모드로 설정해야 하며, NIC가 두 개 이상이면 관리 트래픽은 vmbr0, 게스트 전용 트래픽은 vmbr1처럼 물리적으로 분리하는 편이 단순합니다.
  2. 리눅스 브리지 특성 이해 (선택): Proxmox 브리지는 순수 리눅스 브리지이므로 STP, 포트 보안, MTU를 직접 조정해야 합니다. 일부 USB NIC나 구형 Realtek 칩셋(RTL810x/8152 등)은 고부하에서 Tx timeout 오류를 내므로, dmesg -wjournalctl -f로 오류 로그를 감시하면서 iperf3 -c <peer> -t 600으로 10분 이상 트래픽을 흘려 안정성을 확인하십시오. 프로덕션 용도라면 Intel I210/I225 같은 PCIe NIC를 추가하는 편이 안전합니다.

초기에 브리지를 점검하면 VM과 LXC가 동일 서브넷에서 IP를 받지 못하거나, 관리 네트워크가 작업 중에 끊기는 상황을 미리 막을 수 있습니다.

ISO와 템플릿 저장소는 어디에 둘 것인가

ISO 파일과 LXC 템플릿은 자주 읽기만 하고 거의 쓰지 않습니다. 따라서 고성능 NVMe 공간을 차지하기보다 다음 기준으로 나누십시오.

  1. 로컬 스토리지에 ISO와 LXC 템플릿을 두고, 필요하면 NFS나 SMB 공유를 Content: ISO, VZDump로 마운트합니다. ISO는 Datacenter -> Storage -> local -> Content -> Upload에서 올리고, LXC 템플릿은 같은 화면의 Templates -> Download를 눌러 확보하십시오. 경로가 다르므로 한 번씩 눌러 보면서 손에 익히십시오.
  2. 즐겨 쓰는 ISO는 local/template/iso/ubuntu/24.04/처럼 폴더로 버전을 구분하면 클러스터 공유 시 충돌을 줄일 수 있습니다.
  3. 템플릿을 외부 NAS에 둔다면 NAS가 꺼졌을 때 새 VM을 만들 수 없으므로, 최소한 하나의 Ubuntu ISO와 최근에 검증한 LXC 템플릿은 로컬에 남겨 두십시오. ISO와 템플릿에만 40~50GB가 필요하니, 로컬 SSD 용량을 확인하거나 작은 USB SSD를 임시 저장소로 준비하십시오. 실제로 NAS 장애가 나면 템플릿이 없어 초기화조차 못 하는 경우가 자주 보고됩니다. 향후 클러스터를 꾸밀 계획이라면 어떤 노드가 이 스토리지를 공유할지, 장애 시 대체 경로를 어떻게 둘지도 함께 설계하십시오.

또한 클라우드 이미지를 곧바로 받아 쓰고 싶다면 curl로 다운로드하는 대신 Proxmox에서 제공하는 템플릿 다운로드 기능을 활용해 파일 무결성을 유지하십시오. ISO·템플릿 위치가 정리돼 있어야 VZDump 백업 타겟을 고를 때 혼선이 줄어들기 때문에, 스토리지 설계와 백업 설계를 같은 시점에 마무리하는 편이 안전합니다.

백업 위치는 언제 확보할 것인가

백업 설계는 VM을 만들기 전에 끝내야 합니다. 이유는 세 가지입니다.

  1. 첫 VM을 만들 때부터 백업 스토리지 선택지가 UI에 드러나야, 각 VM마다 적절한 스케줄을 설정하기 쉽습니다.
  2. 백업 대상이 Proxmox 호스트 내부 스토리지뿐이라면 디스크 장애나 전원 문제에 취약합니다. 최소한 USB SSD, NAS, 다른 미니 PC 중 하나를 백업 타겟으로 확보하십시오. 가능하다면 Proxmox Backup Server(PBS)를 별도 장비나 컨테이너로 두어 증분·중복제거 백업을 활용하십시오.
  3. 백업 경로를 미리 확보하면 스냅샷과 VZDump 백업을 확실히 구분할 수 있습니다. 스냅샷은 같은 호스트에서 빠르게 롤백할 때만 사용하고, VZDump/PBS 백업은 오프호스트 복구용이라는 원칙을 지키십시오. LVM-Thin 스냅샷은 실행 중 VM의 변경분만 저장하므로 빠르지만, Thin 풀 공간이 모자라면 즉시 삭제되거나 오류가 발생합니다.

백업 구성 체크리스트

  • 외부 스토리지 타입: NFS, CIFS, SSH, Proxmox Backup Server 등 용도에 맞는 방식을 선택했는가
  • 네트워크 경로: 백업 트래픽이 운영 네트워크를 포화시키지 않도록 전용 VLAN, QoS, 혹은 야간 스케줄을 설정했는가
  • 복구 테스트: vzdump <VMID>로 백업을 만든 뒤 테스트 VM을 만들어 Restore -> Target: test-vm으로 복원해 본 적이 있는가
  • RPO/RTO: 몇 시간 단위로 백업을 돌릴지, 복구에 얼마나 걸려야 하는지 목표를 세웠는가
  • 증분 백업 검증: PBS나 증분 백업을 쓴다면 주기적으로 증분 체인이 실제로 복원되는지 검증했는가
  • 보존 정책·암호화: 오래된 백업을 언제 삭제할지, 오프사이트 백업에 암호화를 적용했는가

미니 PC 하드웨어는 어떻게 점검할 것인가

Proxmox는 소프트웨어지만, 토대는 결국 미니 PC 하드웨어입니다. 설치 직후 다음 항목을 확인하십시오.

  1. BIOS/UEFI: 가상화 옵션(VT-x/AMD-V)과 IOMMU가 켜져 있는지 다시 확인합니다. 일부 NUC는 기본값이 꺼져 있습니다.
  2. 전원과 발열: 작은 폼팩터는 발열이 빠르게 성능 저하로 이어집니다. 팬이 정상적으로 동작하는지, sensors로 온도를 확인하십시오.
  3. 스토리지 건강: smartctl로 SSD SMART 값을 확인하고, TBW 대비 여유 수명을 파악합니다. LVM-Thin에서 Discard 옵션을 켜면 게스트 OS가 보내는 TRIM 명령이 즉시 반영되지만, 꺼둔 상태라면 월 1회 fstrim -av 같은 유지보수가 필요합니다. 실시간 Discard가 I/O 지연을 만든다면 systemctl list-timers fstrim.timer로 주기적 TRIM을 확인하고, 야간에 fstrim을 실행하도록 조정하십시오.
  4. NIC 안정성: USB NIC나 Realtek 칩셋을 쓰는 경우, 장시간 부하에서 드라이버가 멈추지 않는지 dmesg를 확인하고 필요하면 Intel PCIe NIC나 watchdog 스크립트를 준비하십시오.
  5. UPS 여부: 짧은 정전에도 VM 디스크가 손상될 수 있습니다. 최소한 NAS와 Proxmox 호스트를 동시에 보호할 수 있는 UPS를 고려하고, NUT/APCUPSD 같은 도구로 자동 셧다운을 연동하십시오.

이 점검 과정을 거치면 나중에 발생할 수 있는 성능 저하나 데이터 손실을 미리 방지할 수 있습니다.

마무리

설치 직후의 Proxmox 호스트는 빈 도화지가 아니라, 이미 local/local-lvm, 브리지, ISO 저장소 같은 구조가 만들어져 있습니다. 이 구조를 올바르게 이해하고 역할을 나누는 것이 VM을 만드는 것보다 먼저입니다. 이번 글에서 정리한 다섯 항목을 하나씩 점검하면, 이후 워크로드 배치와 백업 전략이 훨씬 예측 가능해집니다.

다음 글에서는 이렇게 준비된 호스트 위에서 어떤 워크로드를 VM으로, 어떤 워크로드를 LXC로 나눌지 결정하는 프레임워크를 다룹니다.

💬 댓글

이 글에 대한 의견을 남겨주세요