나의 미니 PC 홈서버 활용기
2025-01-1010 분 소요3
지금은 이 곳 tsboard.dev 웹사이트가 카페24의 가상 서버 호스팅을 이용하고 있습니다만, 처음부터 호스팅을 이용하진 않았습니다. 처음에는 N100 cpu가 탑재된 알리/테무 발 미니 PC를 싸게 구매해서 ASUS 공유기에 물려준 후 포트포워딩, DDNS를 활용하여 홈서버로 운영을 했었죠. 그러면서 다른 사진 커뮤니티 서비스도 올리고 하다가 하필이면 긱뉴스(Geek News)에서 유입되는 트래픽이 많았던 날 접속 장애를 일으키는 바람에 결국 호스팅을 이용하게 되었습니다.
지금도 사실 접속 장애 문제가 가끔 있지만, 대용량의 저장 공간이 필요한 사진 커뮤니티를 차마 호스팅까지 구매해서 운영할 용기가 나지 않아서 계속 홈서버를 운영하고 있습니다. 그러면서 문득, 이 활용기를 공유하면 어떨까 싶어서 글을 남겨봅니다.
왜 미니 PC를 구매했나?
미니 PC는 인텔의 저전력 CPU인 N100의 가성비에 기반하여 지금까지도 꾸준히 주목을 받고 있습니다. 지금 제가 사용하고 있는 맥미니도 미니 PC 범주에 들어가죠. 예전과 달리 지금의 미니 PC는 성능도 훌륭하고, 전성비도 좋은데다 가격도 나름 합리적 입니다. 맥미니는 옵션을 올리기 시작하면 가성비라는 말이 쏙 들어가지만, 적어도 깡통 기준으로는 가성비가 맞습니다.
서버라면 우선 24시간 동작을 해야 하고, 집에서 구동한다면 아무래도 부피가 작은게 좋죠. 그렇다보니 자연스럽게 저전력과 작은 폼팩터를 찾게 되었고 마침 중국에서 불어온 N100의 열풍에 탑승하여 Beelink MINI S12 PRO를 구매했습니다. (광고 아닙니다!) 인텔이 해당 CPU가 인기 많을 걸 알았는지, 메모리 상한을 16GB로 잡은 것이 조금 아쉬웠지만, 어차피 Ubuntu Linux (server) OS를 설치해서 사용하니까 메모리도 크게 제약이 있는 건 아니었습니다. (참고로 코어는 저전력 코어로 총 4개입니다)
지금은 해당 모델보다 좀 더 고사양의 Genmachine RYZEN cpu 탑재 모델을 사용하면서 메모리도 32GB까지 올려두었습니다만, 그 때나 지금이나 미니 PC의 역할은 변함 없습니다. 여전히 집안 내부의 스토리지 허브 같은 역할도 하면서, 사진 관련 커뮤니티 사이트를 (가끔 접속 장애를 일으키며) 운영하는 중입니다. 그리고 외부에서 급하게 코드를 수정해야 할 때 code-server 도 활용하면서 전천후 개발 서버 및 취미 서비스를 운영중입니다.
홈서버, 어떻게 구성하는걸까?
홈서버라고 말하면 뭔가 막연하게 만들기 어렵지 않나? 생각하실 수도 있는데, 실제로는 그렇게 어렵진 않습니다. 물론 잘 운영하는 건 어렵지만, 시작하는 건 쉽다고도 할 수 있지요. Namecheap 같은 곳에서 도메인을 구매한 다음에, 내 공유기에서 설정한 DDNS까지 오기만 하면 거의 절반은 성공한 셈입니다. 추가로 해야할 건 포트 포워딩인데, 이건 공유기 설정에서 쉽게 조정할 수 있습니다.
대략적인 구성 방식은 아래와 같습니다.

웹호스팅이나 AWS같은 클라우드 서비스를 이용하면 없어도 되는 과정 2가지가 추가되는데, 중앙에 있는 DDNS 그리고 내 집 공유기의 포트 포워딩입니다. DDNS 설정은 유/무료 서비스들이 많이 있습니다만, 저는 개인적으로 공유기 제조사에서 제공하는 서비스를 추천드립니다. KT같은 망 사업자는 주기적으로 각 가정에 할당한 IP주소들을 필요에 따라 바꾸는데, 공유기가 이를 감지해서 자기네 DDNS 서비스에 갱신을 해줄 수 있기 때문에 관리가 좀 더 편하거든요. (물론 공유기 제조사의 DDNS 서비스가 안정적이냐? 하는 것과는 별개입니다만)
DDNS를 공유기 제조사 서비스로 하겠다고 하면, DDNS와 포트 포워딩 모두 공유기 설정화면에서 진행 할 수 있습니다. 각 제조사마다 WAN 같은 메뉴에서 설정할 수 있게 해두었는데, 용어가 좀 생소할 수는 있어도 설정해야 하는 내용은 쉽습니다. 저는 ASUS 공유기를 주로 사용하고 있어서 WAN 항목의 가상 서버 / 포트 포워딩 메뉴와 DDNS 메뉴에 필요한 설정들을 해두었는데, 위에 설명이 잘 되어 있어서 설명대로 추가하면 됩니다.
내 집 방구석에서 돌아가고 있는 미니 PC까지 사이트 접속 요청이 오는데 꽤나 많은 과정들이 있지만, 어쨌든 이 과정 자체는 대게의 경우 잘 됩니다. 여러분의 홈서버에 올려진 서비스를 이용해 보고자 하는 방문객은 여러분이 구매한 도메인만 보이니까, 뒤의 복잡한 접속 과정은 보이지도 않고 알 필요도 없지요. 또한 조금 느리게 접속되는 것 정도야 큰 문제는 아닐 겁니다.
홈서버 운영의 어려운 점은?
위의 설명에는 생략된 부분들이 많습니다. 예를 들어 구매한 도메인으로 CNAME 설정을 어떻게 해야 DDNS에 등록한 도메인으로 올 수 있는가? 같은 부분이 되겠죠. (이 부분은 정말 쉽습니다. 검색하면 나오니까요.) 하지만 가장 많이 생략된 부분은 트러블슈팅이 되겠습니다.
일단 여러분의 미니 PC는 집 안에서 전기를 먹으면서 일을 하고 있습니다. 그 말은, 저희 집처럼 별도의 정전 방지 시스템이 준비되어 있지 않다는 것이죠. 대부분은 다음 번에 켰을 때 문제 없이 다시 서비스를 운영할 수 있겠지만, 운이 나쁘면 어떨까요? DB가 깨지거나 잘 되던 서비스가 무슨 이유에서인지 잘 안되는 등의 상상도 하기 싫은 문제가 발생하게 됩니다. 할 수 있는 게 많진 않은데, 고가의 멀티탭에 전원 선을 꽂아두는 것 정도가 되겠네요.
더 큰 문제는 전원 뿐만 아니라 공유기 자체도 24시간 혹사 당하는 기기다보니 어쩌다 동작이 느려지거나 요청이 제대로 전달되지 않는 문제가 왕왕 발생합니다. 때문에 더 환장하는 건 내 서비스가 현재 제대로 운영되고 있는지 아닌지를 수시로 확인해야 한다는 점이죠. 설령 접속 장애를 알아차린다 하더라도, 바로 해결하기 어려운 순간들이 많다는 점이 가장 큰 문제입니다.
마지막으로 사용하는 DDNS의 접속 장애도 고려해야 합니다. 제가 사용하고 있는 ASUS의 DDNS는 접속 장애가 생각보다 자주 있습니다. 이게 정말 환장하는게, DDNS는 제가 운영하는 게 아니다 보니까 ASUS같은 공유기 제조사에서 별도로 조치를 취하기 전까지는 할 수 있는 게 없다는 점입니다. 내 서비스가 멀쩡하게 잘 띄워져 있다고 해도 이 경우에는 손가락만 빨 수 밖에 없습니다.
홈서버 운영, 그럼에도 권하는 이유는?
여러 어려움과 예상치 못한 장애 상황에도 불구하고, 홈서버 운영에는 몇가지 장점이 있습니다. 일단 가장 큰 장점은 낮은 하드웨어 가격으로 비교적 높은 성능을 확보할 수 있다는 점입니다. 특히 용량 문제를 언급하지 않을 수 없는데, 저의 경우 취미가 사진이다보니 사이즈가 큰 사진 원본들을 보관하기 위해서라도 2TB NVMe 같은 게 간절했습니다. 만약 클라우드 등의 서버를 이용한다면 어쩔 수 없이 원본 사진은 삭제하고, 사진도 최대한 압축해서 보관해야만 하겠죠. 홈서버는 그럴 필요가 없습니다. 필요하면 내가 직접 스토리지를 추가하면 되니까요.
다음으로는 내가 필요로하는 라이브러리나 운영체제등을 좀 더 자유롭게 선택할 수 있다는 점입니다. 물론 요즘에는 도커도 잘 되고 가상 서버 같은 경우에도 내가 필요로 하는 대부분이 문제 없이 지원되지만, 그럼에도 본인만의 필요에 의해 희귀한 라이브러리를 써야 한다거나 혹은 특정 하드웨어 부품이 요구되는 상황이 있을 수도 있으니까요. Ubuntu server 말고 전혀 다른 리눅스 배포판을 써보고 싶다거나 할 경우 언제든지 그렇게 해볼 수 있습니다.
마지막으로, 접속 장애가 왕왕 생기긴 하지만 그럼에도 대부분의 시간 동안은 예상 외로 제대로 동작합니다. 미니 PC를 24시간 365일 구동한다고 해서 전기세가 많이 나오냐? 하면 꼭 그렇지도 않구요. (한 달 5천원 미만으로 보시면 됩니다) 예상 외로 잘 동작하고, 운영 비용도 동등 사양의 서버 호스팅이나 클라우드에 비해 말도 안되게 저렴합니다. 미니 PC 가격이야 좋은 운동화 한켤레 수준이니 말 다했죠.
홈서버를 운영하면서 저의 경우에는 code-server를 설치해두고 급하게 외부에서 컴퓨터 없이 작업해야 할 때도 유용하게 사용했습니다. 삼성의 DeX와 크롬 브라우저, 그리고 홈서버의 code-server 데몬이 함께 있다면 어디서든 개발이 가능해집니다. (아, 물론 모니터 키보드 마우스는 별도입니다 ㅎㅎ) 사실상 개발용 서버를 겸하게 되는데, 오래 걸리는 컴파일 작업을 미리 걸어두고 싶다거나 할 경우에는 그냥 스마트폰에서 SSH로 접속한 다음 작업을 시켜 놓으면 되니까 편리함이 이루 말 할 수가 없습니다. (가끔 접속 장애가 날 때는 화딱지가 나지만요!)
여러분의 집에서도 홈서버가 함께하길 바라며
저의 경우 책상 밑 한 켠에 지금 이 순간에도 미니 PC가 RGB를 휘날리며 열심히 팬을 돌리고 있습니다. 없을 때는 몰랐는데, 생기고 나서는 이 녀석을 여기저기 활용해보고 싶어서 근질근질 합니다. 비록 TSBOARD 사이트는 접속 장애가 없길 바라는 마음에 호스팅 업체로 이사를 보냈지만, 여전히 남아있는 사진 커뮤니티는 지금도 조용히 운영이 되고 있습니다. 접속 장애 상황을 만날 때마다 그걸 해결하는 과정에서 노하우가 쌓이는 상황이라 이제는 즐기면서 장애를 해결해가며 운영중입니다.
이 글을 읽어주신 분들 중에서, 나도 홈서버를 운영해 볼 수 있을까? 하고 고민하는 분들이 계시다면 흔쾌히 한 번 도전해 보시라고 권해보고 싶습니다. 막상 해보면 별 거 아니고, GPT 선생님과 함께라면 한 두시간 정도면 완성 하실 수 있습니다. 도전해 보시다가 혹시 막히시는 분들은 댓글 남겨주시면 GPT 선생님 정도는 아니지만 그래도 함께 고민해 보겠습니다.
마지막으로 제가 (홈서버에서) 운영중인 사진 커뮤니티는 https://sensta.me 주소로 방문해 보실 수 있습니다. 제가 실수로 멀티탭 전원 버튼을 발로 누르거나 랜선을 건드리지 않았다면, 접속이 되실 겁니다. ㅎㅎ
쓰다보니 또 길어졌는데, 읽어주셔서 감사합니다!
최근 게시글들
최근 댓글들
추가로 홈서버 관련해서 긱나이트에 발표를 해주신 K리그프로그래머님의 글을 공유드립니다!
https://news.hada.io/topic?id=18274
저도 Mac Mini M4 로 개인용 홈서버 및 워크스테이션으로 활용중인데, 반가운 글이네요. 응원합니다!
와 대박입니다. 맥미니를 홈서버로 활용하시다니…! 맥미니 프로 구매해서 작업용으로 쓰고 있는데 진짜 홈서버로는 충분한 성능이라 생각합니다. ㅎㅎ 댓글 남겨주셔서 감사합니다!

