본문 바로가기
IT/Proxmox

[Proxmox] Proxmox HAOS 마이그레이션: VMware ESXi에서 안전하게 이전하기

by 수누다 2026. 6. 19.

홈랩 서버실 | Proxmox HAOS 마이그레이션: VMware ESXi에서 안전하게 이전하기

안녕하세요, 13년차의 서버실입니다. 홈랩을 운영하면서 여러 하이퍼바이저(Hypervisor)를 오가다 보면, 언젠가 한 번쯤은 겪게 되는 고민이 있어요. 바로 기존 가상머신(Virtual Machine, VM)을 새로운 플랫폼으로 옮기는 마이그레이션(Migration)입니다. 특히 스마트 홈의 핵심인 Home Assistant OS(HAOS) 같은 친구들은 안정성이 중요해서 마이그레이션할 때 더욱 신중해지죠. 저도 최근에 오랫동안 잘 써오던 VMware ESXi 환경에서 Proxmox VE로 HAOS를 안전하게 이전하면서 꽤 삽질을 했거든요. 오늘은 그 경험을 바탕으로 여러분께 자세히 알려드리려고 합니다.

혹시 여러분도 ESXi의 라이선스 정책 변화나, Proxmox VE의 유연한 기능들, 혹은 단순히 새로운 환경에 대한 호기심 때문에 마이그레이션을 고민하고 계신가요? 그렇다면 이 글이 큰 도움이 될 겁니다. 제가 직접 겪었던 시행착오와 해결 과정을 솔직하게 공유하면서, 여러분의 Proxmox HAOS 마이그레이션 여정을 조금 더 부드럽게 만들어 드릴게요. 자, 그럼 시작해 볼까요?

VMware ESXi에서 Proxmox VE로 Home Assistant OS 마이그레이션 전체 개요

VMware ESXi에서 Proxmox VE로 Home Assistant OS 마이그레이션 전체 개요 다이어그램입니다.

1. 왜 VMware ESXi에서 Proxmox VE로 옮겨야 할까요?

사실 VMware ESXi는 오랫동안 안정적인 가상화 플랫폼의 대명사였어요. 특히 엔터프라이즈 환경에서는 거의 표준이라고 할 수 있었죠. 저도 덕분에 많은 프로젝트를 ESXi 위에서 진행했었고요. 하지만 홈랩(Home Lab) 환경에서는 몇 가지 고민이 생기더라고요.

  • 라이선스 정책 변화: ESXi 무료 버전의 기능 제한이 점점 심해지고 있습니다. 특히 vSphere API 접근 제한은 백업이나 관리 자동화에 큰 걸림돌이 되죠.
  • 오픈소스의 유연성: Proxmox VE(Virtual Environment)는 완벽한 오픈소스 가상화 플랫폼입니다. KVM(Kernel-based Virtual Machine)LXC(Linux Containers)를 모두 지원해서 VM과 컨테이너를 한 곳에서 관리할 수 있다는 점이 정말 매력적이더라고요.
  • 커뮤니티와 학습: Proxmox는 활발한 커뮤니티와 방대한 자료 덕분에 새로운 기술을 익히고 실험하기에 좋은 환경을 제공합니다. 저처럼 이것저것 만져보는 걸 좋아하는 사람에게는 최고의 놀이터죠.

이런 이유들로 저는 Proxmox VE로의 전환을 결심했고, 그 첫 타자로 홈랩의 심장인 Home Assistant OS를 옮겨보기로 했습니다.

2. 개념 설명: Proxmox VE와 Home Assistant OS 간략히

마이그레이션에 앞서, 핵심 개념들을 간단히 짚고 넘어갈까요?

  • Proxmox VE (Virtual Environment): 쉽게 말해, 서버 한 대에서 여러 개의 가상 서버를 돌릴 수 있게 해주는 운영체제라고 생각하시면 됩니다. VMware ESXi와 비슷한 역할을 하지만, 오픈소스라는 점이 가장 큰 차이점이에요. 웹 기반 인터페이스를 제공해서 관리도 편리하고요.
  • Home Assistant OS (HAOS): 스마트 홈 기기들을 한곳에 모아 관리하고 자동화할 수 있게 해주는 오픈소스 플랫폼입니다. 전용 OS 형태로 제공되어 가상머신 위에 설치하는 경우가 많죠. 저도 Z-Wave, Zigbee 동글(dongle)을 연결해서 사용하고 있습니다.
  • 마이그레이션 (Migration): 기존에 잘 돌아가던 가상머신을 다른 가상화 환경으로 옮기는 과정입니다. 단순히 파일을 복사하는 것 이상으로, 새로운 환경에 맞게 설정들을 조정해줘야 하죠.

3. 실전 구현: VMware ESXi에서 HAOS VM 내보내기

자, 이제 본론입니다. 제가 직접 해보니 몇 가지 포인트만 잘 지키면 생각보다 어렵지 않더라고요.

3.1. Home Assistant OS VM 백업 및 종료

가장 먼저 할 일은 HAOS VM을 백업하는 것입니다. 혹시 모를 상황에 대비해서 꼭 스냅샷(Snapshot)을 찍어두거나, Home Assistant 자체의 백업 기능을 활용해서 전체 백업 파일을 받아두세요. 그리고 VM을 정상적으로 종료(Shut Down)해야 합니다. 전원 끄기(Power Off) 말고, 반드시 OS 내부에서 종료 명령을 내려주세요. 데이터 무결성(Data Integrity)을 위해 아주 중요하거든요.

3.2. OVF/OVA 형식으로 내보내기

VMware ESXi에서 가상머신을 다른 환경으로 옮길 때 가장 일반적인 방법은 OVF(Open Virtualization Format) 또는 OVA(Open Virtual Appliance) 형식으로 내보내는 것입니다. OVA는 OVF 파일과 관련 디스크 이미지를 하나의 파일로 묶어둔 아카이브(Archive) 형태라고 보시면 돼요. 저는 OVA로 내보냈습니다.

  1. vSphere Client 또는 ESXi 웹 UI에 접속합니다.
  2. 내보낼 Home Assistant OS VM을 선택하고 마우스 오른쪽 버튼을 클릭합니다.
  3. '템플릿(Template)' > 'OVF 템플릿 내보내기(Export OVF Template...)'를 선택합니다.
  4. 저장할 위치와 파일명을 지정하고 '확인'을 누르면 내보내기가 시작됩니다. 시간이 좀 걸릴 수 있어요.
VMware ESXi에서 Home Assistant OS 가상 머신을 OVF/OVA 형식으로 내보내는 과정

VMware ESXi 웹 UI에서 Home Assistant OS 가상 머신을 OVF/OVA 형식으로 내보내는 화면입니다.

3.3. 디스크 이미지 변환 (VMDK → QCOW2)

Proxmox VE는 일반적으로 QCOW2RAW 형식의 디스크 이미지를 사용합니다. ESXi에서 내보낸 OVA 파일 안에는 VMDK 형식의 디스크 이미지가 들어있죠. 이걸 Proxmox에서 사용할 수 있는 형식으로 변환해야 합니다. 저는 Proxmox 서버에서 직접 변환하는 방법을 선택했어요. 이게 가장 빠르고 편하더라고요.

  1. 내보낸 OVA 파일을 Proxmox VE 서버의 특정 디렉토리(예: /var/lib/vz/template/iso/)로 옮깁니다. scp 명령어를 사용하면 편리합니다.
  2. Proxmox VE 서버에 SSH로 접속합니다.
  3. OVA 파일 압축을 해제합니다. OVA는 사실 .tar 아카이브 파일이에요.
cd /var/lib/vz/template/iso/
tar -xvf homeassistant.ova

압축을 풀면 .ovf 파일과 .vmdk 파일이 보일 겁니다.

  1. qemu-img 도구를 사용하여 VMDK 파일을 QCOW2로 변환합니다.
qemu-img convert -f vmdk homeassistant-disk1.vmdk -O qcow2 homeassistant-disk1.qcow2

이 명령어가 성공적으로 실행되면, homeassistant-disk1.qcow2 파일이 생성됩니다. 이 파일이 Proxmox VE에서 사용할 디스크 이미지예요.

4. 실전 구현: Proxmox VE로 HAOS VM 가져오기

이제 변환된 디스크 이미지를 Proxmox VE에 VM으로 등록할 차례입니다.

4.1. 새 가상머신 생성 (디스크 없이)

Proxmox VE 웹 UI에서 새로운 VM을 생성합니다. 이때 '하드 디스크(Hard Disk)' 단계에서는 디스크를 추가하지 않고 넘어가는 것이 중요해요. 나중에 변환한 디스크를 직접 연결할 거거든요.

  1. Proxmox VE 웹 UI에 접속합니다.
  2. 우측 상단 'VM 생성(Create VM)' 버튼을 클릭합니다.
  3. '일반(General)' 탭에서 이름과 VM ID를 지정합니다. (예: homeassistant-new, ID 100)
  4. 'OS' 탭에서 '미디어 사용 안 함(Do not use any media)'을 선택합니다.
  5. '시스템(System)' 탭에서 기본값으로 두거나 필요한 경우 수정합니다. (저는 VMWare에서 사용하던 BIOS 대신 UEFI를 선택했어요.)
  6. '디스크(Disks)' 탭에서 '디스크를 추가하지 않음(Do not add a disk)'을 선택하고 다음으로 넘어갑니다.
  7. 'CPU' 및 '메모리(Memory)'를 적절히 설정합니다. HAOS는 2코어, 4GB RAM 정도면 충분해요.
  8. '네트워크(Network)' 탭에서 원하는 브리지(Bridge)를 선택합니다. (일반적으로 vmbr0)
  9. 마지막 '확인(Confirm)' 단계에서 설정을 다시 확인하고 '완료(Finish)'를 클릭합니다.

4.2. 변환된 디스크 이미지 임포트

생성된 VM에 아까 변환했던 .qcow2 디스크 이미지를 연결합니다.

  1. Proxmox VE 서버에 SSH로 접속합니다.
  2. 다음 명령어를 사용하여 디스크 이미지를 생성한 VM (예: ID 100)으로 임포트합니다. local-lvm은 디스크 이미지를 저장할 스토리지 풀 이름입니다. 여러분의 환경에 맞게 변경해주세요.
qm importdisk 100 /var/lib/vz/template/iso/homeassistant-disk1.qcow2 local-lvm

이 명령어가 완료되면, Proxmox VE 웹 UI의 VM 하드웨어 설정에 '사용하지 않는 디스크(Unused Disk)'로 추가된 것을 볼 수 있어요.

4.3. 임포트된 디스크 연결 및 부팅 순서 설정

  1. Proxmox VE 웹 UI에서 생성한 VM (ID 100)을 선택하고 '하드웨어(Hardware)' 탭으로 이동합니다.
  2. '사용하지 않는 디스크(Unused Disk)'를 더블클릭하거나 선택 후 '편집(Edit)' 버튼을 눌러 디스크를 VM에 연결합니다. '버스/장치(Bus/Device)'는 'SATA'나 'VirtIO Block' 중 선택하는데, 저는 일반적으로 성능이 좋은 VirtIO Block을 선호해요. '캐시(Cache)' 설정도 필요에 따라 조정해주세요.
  3. '옵션(Options)' 탭으로 이동하여 '부팅 순서(Boot Order)'를 편집합니다. 방금 연결한 디스크를 첫 번째 부팅 장치로 설정하고 '확인(OK)'을 클릭합니다.
Proxmox VE에서 새로운 가상 머신 생성 후 Home Assistant OS 디스크 이미지를 임포트하는 과정

Proxmox VE 웹 UI에서 새로운 VM을 생성하고, SSH 터미널에서 qm importdisk 명령어를 통해 Home Assistant OS 디스크 이미지를 임포트하는 과정입니다.

5. 주의사항 및 트러블슈팅 ⚠️ (삽질 경험 공유)

제가 이 과정에서 겪었던 몇 가지 '삽질'과 그 해결 방법을 공유합니다. 여러분은 저 같은 실수를 하지 않으시길 바랍니다! ㅎㅎ

  • 네트워크 인터페이스 문제: 마이그레이션 후 HAOS가 네트워크를 잡지 못하는 경우가 있어요. ESXi와 Proxmox는 가상 네트워크 카드 드라이버가 다를 수 있거든요. HAOS는 보통 eth0을 사용하지만, Proxmox에서 VirtIO 네트워크 카드를 사용하면 이름이 바뀌거나 설정이 꼬일 수 있습니다.
    • 해결책: Proxmox VM 설정에서 네트워크 카드를 VirtIO 대신 E1000으로 변경해보세요. 또는 HAOS 콘솔에 접속해서 네트워크 설정을 수동으로 확인하고 network update 명령어를 통해 DHCP를 다시 시도해볼 수 있습니다.
  • VMware Tools 잔재: ESXi에서 설치했던 VMware Tools는 Proxmox에서는 필요 없어요. 이게 남아있으면 불필요한 리소스를 잡아먹거나 충돌을 일으킬 수도 있습니다. 사실 HAOS는 자체적으로 VM Tools 같은 걸 설치하지 않아서 크게 문제가 되지는 않지만, 다른 Linux VM을 마이그레이션할 때는 꼭 확인해주세요.
    • 해결책: 마이그레이션 전 ESXi에서 VM Tools를 제거하거나, Proxmox로 옮긴 후 해당 VM에 접속해서 제거하는 것이 좋습니다.
  • USB 패스스루(USB Passthrough): Zigbee나 Z-Wave 동글을 사용하신다면, Proxmox에서 USB 패스스루 설정을 새로 해줘야 합니다. ESXi에서 사용하던 설정이 그대로 넘어오지 않거든요.
    • 해결책: Proxmox 웹 UI에서 VM 하드웨어 설정에 들어가 '추가(Add)' > 'USB 장치(USB Device)'를 선택하고, '벤더/제품 ID 사용(Use vendor/product ID)' 또는 'USB 포트 사용(Use USB Port)'을 통해 해당 동글을 연결해줍니다.
  • 디스크 용량 문제: HAOS VMDK 파일이 크면 변환 및 임포트 과정에서 시간이 오래 걸리고, 스토리지 용량을 충분히 확보해야 합니다. 저도 한 번은 Proxmox 서버의 /tmp 디렉토리 용량이 부족해서 변환이 실패한 적이 있었어요. 😅
    • 해결책: 변환 파일을 저장할 디렉토리에 충분한 여유 공간이 있는지 미리 확인하세요.

6. 검증 및 결과 🎉 (드디어 새로운 둥지에서 HAOS 가 움직인다!)

모든 설정이 끝나고 VM을 부팅하면, 이제 HAOS가 Proxmox VE 위에서 새로운 시작을 알릴 겁니다. 저는 부팅 후 다음 사항들을 꼼꼼히 확인했어요.

  1. HAOS 웹 인터페이스 접속: 가장 먼저 HAOS의 웹 UI에 접속해서 대시보드가 정상적으로 로드되는지 확인합니다.
  2. 네트워크 연결 상태: '설정(Settings)' > '시스템(System)' > '네트워크(Network)'에서 IP 주소와 게이트웨이(Gateway) 설정이 올바른지 확인합니다.
  3. 통합(Integrations) 작동 여부: 스마트 기기 연동(예: Philips Hue, SmartThings, Zigbee/Z-Wave 동글)이 제대로 작동하는지 하나씩 테스트해봅니다.
  4. 애드온(Add-ons) 상태: 설치했던 애드온들이 모두 정상적으로 실행되는지 확인해요.
  5. 리소스 사용량: Proxmox VE 웹 UI에서 VM의 CPU, 메모리, 디스크 I/O 사용량을 모니터링하여 ESXi 때와 비교해봅니다. 보통 Proxmox가 더 효율적인 경우가 많더라고요.

이 모든 과정이 끝나고 HAOS 대시보드가 완벽하게 작동하는 것을 보니, 그동안의 삽질이 싹 잊히는 기분이었어요. 드디어 성공했구나! 하는 성취감이 밀려오더라고요. 🥳

Proxmox VE에서 성공적으로 마이그레이션되어 작동 중인 Home Assistant OS 대시보드

Proxmox VE 위에서 성공적으로 마이그레이션되어 작동 중인 Home Assistant OS 대시보드 화면입니다.

7. 마무리: 배운 점과 다음 단계

VMware ESXi에서 Proxmox VE로 Home Assistant OS를 마이그레이션하는 과정은 단순히 파일을 옮기는 것을 넘어, 새로운 가상화 환경에 대한 이해와 트러블슈팅 능력을 길러주는 좋은 경험이었습니다. 제가 얻은 몇 가지 교훈은 이렇습니다.

  • 사전 백업의 중요성: 아무리 강조해도 지나치지 않아요.
  • 문서화의 습관화: 제가 어떤 설정을 했는지, 어떤 삽질을 했는지 기록해두면 다음번에 훨씬 수월합니다.
  • 오픈소스 커뮤니티의: 막히는 부분이 있을 때 Proxmox 포럼이나 Home Assistant 커뮤니티에서 많은 도움을 받을 수 있었어요.

이제 여러분의 Home Assistant OS는 Proxmox VE라는 새로운 환경에서 더욱 안정적이고 유연하게 동작할 겁니다. 다음 단계로는 Proxmox VE의 강력한 백업 기능(Proxmox Backup Server와 연동)을 활용하여 HAOS 백업 전략을 수립하거나, VM에 GPU 패스스루를 설정하여 미디어 서버 등 다른 서비스를 구축하는 것도 좋은 아이디어가 될 수 있겠죠. 물론 이 부분은 다음 글에서 자세히 다룰 예정입니다. 😉

오늘도 제 글이 여러분의 홈랩 운영에 작은 도움이 되었기를 바라며, 궁금한 점은 언제든 댓글로 남겨주세요! 13년차의 서버실은 언제나 여러분의 삽질을 응원합니다. 감사합니다!