
개인적인 불편함에서 시작된 Proxmox 홈서버 구축이 Type1 하이퍼바이저의 효율성과 유연성을 깨닫고, 시스템 전반을 이해하는 엔지니어로서 성장하게 된 과정과 고민을 담은 회고록입니다.
발표를 마치고, Proxmox 홈서버에 대한 단상
[클클콘] Proxmox: 홈서버 구축, 한 입 해보실래요? - 소병욱
발표가 끝났다. “Proxmox: 홈서버 구축, 한 입 어떠신가요?“라는, 다소 가벼운 제목으로 시작했지만 내가 전하고 싶었던 메시지는 결코 가볍지 않았다. 이 글은 그 발표의 뒷이야기이자, 나의 생각을 정리하기 위한 아카이브다. 내가 왜 Proxmox라는 솔루션으로 홈서버를 구축해야 했고, 그 과정이 어떠했으며, 그래서 궁극적으로 무엇을 얻었는지에 대한 담백한 회고록이다. 결론부터 말하자면, Proxmox를 이용한 홈서버 구축은 단순히 유휴 하드웨어를 활용하는 기술적 행위를 넘어, 시스템 전반을 이해하고 문제 해결 능력을 기르는 엔지니어로서의 압축적인 성장 과정이었다.
왜 나는 홈서버가 필요했을까
모든 시작에는 이유가 있다. 나의 시작은 지극히 개인적이고 사소한 불편함에서 비롯되었다. 당시 나는 무거운 게이밍 노트북을 들고 학교를 오가야 했다. 게임 개발, 그래픽스 연구 등 내가 거쳐온 길들은 하나같이 고사양의 컴퓨팅 파워를 요구했고, 그 무게는 고스란히 내 어깨의 몫이었다. 통학에 낭비되는 시간도 아까웠다. “집에 있는 고성능 데스크톱을, 밖에서도 그대로 쓸 수는 없을까?” 이 질문이 모든 것의 출발점이었다.
이러한 개인적인 고민은 곧 더 넓은 시야로 확장되었다. 주변을 둘러보니 잠자고 있는 컴퓨팅 자원이 생각보다 많았다. 구형 노트북, 오래된 데스크톱, 혹은 충분히 활용되지 못하는 고성능 PC까지. 클라우드 서비스는 편리하지만, 학생이나 취준생에게 매달 나가는 비용은 무시할 수 없는 부담이었다. 그저 방치하기엔 너무나 아까운 그 컴퓨팅 파워를 가지고, 나만의 EC2, 즉 홈서버를 만들어보면 어떨까 하는 생각에 이르렀다. 단순히 원격 작업을 넘어, 나만의 개발 환경, 데이터 저장소, 서비스 플랫폼을 구축하고 싶다는 욕구가 구체화되기 시작한 것이다.
어떻게 Proxmox에 도달했는가
목표는 정해졌다. ‘유휴 하드웨어를 활용한 효율적이고 유연한 서버 구축’. 이를 위한 여러 솔루션을 탐색하던 중 Proxmox VE를 만났다. 처음에는 수많은 가상화 솔루션 중 하나일 뿐이었다. 하지만 깊이 들여다볼수록 나의 요구에 가장 부합하는 선택지라는 확신이 들었다.
가장 먼저 따져본 것은 가상화 방식이었다. VirtualBox와 같은 Type2 하이퍼바이저는 기존 OS 위에 설치되어 사용이 간편하지만, OS라는 중간 계층으로 인한 성능 저하가 필연적이다. 반면 Proxmox는 하드웨어에 직접 설치되는 Type1(베어메탈) 하이퍼바이저다. 이는 곧 더 적은 오버헤드와 높은 효율성을 의미했다. 실제로 한 저널의 벤치마크 결과를 보면, 웹 워크로드 테스트에서 Type1 하이퍼바이저의 성능 손실은 네이티브 대비 평균 10% 수준에 그친 반면, Type2는 23%에 달했다. 10% 남짓의 성능을 양보하고 가상화가 주는 유연성과 관리의 이점을 모두 누릴 수 있다는 점은 충분히 합리적인 트레이드오프였다.
Proxmox가 더 매력적으로 다가왔던 이유는 KVM(Kernel-based Virtual Machine)과 LXC(Linux Containers)를 모두 지원한다는 점이었다. 완전한 하드웨어 가상화를 통해 Windows나 macOS 같은 독립적인 OS가 필요할 땐 KVM을, 가볍고 빠른 리눅스 서비스가 필요할 땐 커널을 공유하는 LXC를 사용하면 됐다. 마치 상황에 따라 세단과 트럭을 골라 탈 수 있는 것과 같았다. 필요한 만큼의 성능 손실만 감수하며 최적의 환경을 선택할 수 있는 유연성, 이것이 내가 Proxmox를 선택한 결정적인 이유다.
물론 이 모든 것은 적절한 하드웨어 위에서만 의미가 있다. 하지만 ‘완벽한 장비’를 기다릴 필요는 없었다. CPU의 가상화 기능(VT-x, AMD-V) 지원 여부만 확인된다면, 집에 있는 웬만한 컴퓨터는 모두 홈서버의 후보가 될 수 있다. 다만 RAM은 다다익선이다. 특히 ZFS 파일 시스템을 사용할 계획이라면, ZFS가 메모리를 많이 사용한다는 점을 반드시 기억해야 한다. 나는 일반 데스크톱에 SATA 확장 카드만 추가하는 수준으로 시작했다. 중요한 것은 시작 그 자체였다.
그래서 나는 무엇을 얻었는가
Proxmox로 홈서버를 구축한 후, 나의 작업 환경은 완전히 바뀌었다. 더 이상 무거운 노트북을 들고 다니지 않는다. 가벼운 태블릿 하나만으로 집에 있는 Windows 서버에 원격 접속해 무거운 작업을 처리한다. 개인 파일들은 직접 구축한 NAS에 안전하게 보관하고, 여러 개발 프로젝트들은 각각의 컨테이너 안에서 독립적으로 운영한다. Tailscale을 결합하여 어디서든 안전하게 내 서버에 접속하는, 나만의 디지털 공간을 완성한 것이다.
하지만 기술적인 편리함보다 더 큰 수확은 따로 있었다. 바로 ‘트러블슈팅을 위한 눈’을 기르게 된 것이다. 클라우드 클럽에서 홈서버 스터디를 운영하며 다양한 문제 상황을 마주했다. ARM 아키텍처에 x86 OS를 설치하려 하거나, DHCP 서버 설정을 잘못 이해해 네트워크가 마비되는 등, 책에서는 배울 수 없는 생생한 경험들이었다.
이러한 ‘삽질’의 과정은 문제의 본질을 파고드는 훈련이었다. 문제가 발생했을 때, 이것이 하드웨어의 문제인지, OS 설정의 오류인지, 아니면 네트워크 구성의 문제인지를 대범주, 중범주, 소범주로 나누어 접근하는 법을 체득하게 되었다. 시스템의 한 부분이 아니라 하드웨어, OS, 네트워크가 유기적으로 연결된 전체를 보는 시야를 갖게 된 것이다. 나는 이 과정이야말로 엔지니어가 갖춰야 할 핵심 역량 중 하나라고 믿는다.
내가 발표를 통해 “홈서버 한 입"을 권한 이유는 여기에 있다. Proxmox는 그저 수많은 도구 중 하나일 뿐이다. 중요한 것은 직접 자신의 서버를 구축하고, 문제를 마주하고, 그것을 해결해나가는 경험 그 자체다. 그 과정 속에서 우리는 비로소 시스템의 동작 원리를 온전히 이해하게 되고, 어떤 문제 앞에서도 당황하지 않고 차분히 해결의 실마리를 찾아 나설 수 있는 엔지니어로 성장할 수 있다. 발표는 끝났지만, 나의 홈랩은 여전히 진화 중이다. 이 글이 누군가에게 자신만의 서버를 구축하는 여정을 시작하는 작은 계기가 되기를 바란다.
💬 댓글
GitHub 계정으로 로그인하여 댓글을 남겨보세요. GitHub 로그인
🔧 댓글 시스템 설정이 필요합니다
GitHub Discussions 기반 댓글 시스템을 활성화하려면:
GISCUS_SETUP_GUIDE.md
파일의 안내를 따라 설정 완료Repository 관리자만 설정할 수 있습니다. 설정이 완료되면 모든 방문자가 댓글을 남길 수 있습니다.