21P by GN⁺ 14시간전 | ★ favorite | 댓글 5개
  • 2018년에 조립한 게이밍 PC를 홈서버로 전환하여 데이터 저장, 백업, 셀프호스팅 앱 운영 환경을 구축한 경험 공유
  • TrueNAS Community Edition을 설치하고, 8TB HDD 2개를 RAID 1으로 구성해 데이터 이중화
  • Immich, Backrest, Scrutiny, Mealie, Ollama 등 오픈소스 셀프호스팅 앱을 활용해 사진 관리, 백업, 드라이브 모니터링, 레시피 관리, LLM 실행까지 커버
  • 외부 접속은 Tailscale VPN으로 처리하며, 향후 커스텀 도메인 설정을 통한 서비스 접근성 개선 계획

하드웨어 구성

  • 2018년에 조립한 게이밍 PC를 그대로 재활용
    • CPU: AMD Ryzen 5 2600X (6코어 3.6GHz)
    • 메인보드: ASRock B450 Pro4 ATX AM4
    • RAM: G.Skill Flare X 16GB DDR4-3200 (2x8GB)
    • GPU: EVGA GeForce GTX 1070 Ti 8GB
    • 케이스: Fractal Design Meshify C
    • PSU: SeaSonic PRIME Gold 650W
  • 스토리지 구성
    • HDD: Western Digital Red Plus 8TB 2개 (겨울 연휴에 구매)
    • SSD: Samsung 850 Evo 500GB (빠른 읽기/쓰기가 필요한 셀프호스팅 앱용)
    • NVMe: Western Digital Blue SN550 500GB (TrueNAS OS 설치용)

TrueNAS 운영체제

  • NVMe 드라이브에 TrueNAS Community Edition(버전 25.10.1, Goldeye)을 설치
  • Linux 기반 NAS 특화 운영체제로, 네트워크상의 모든 기기에서 파일 저장소에 접근 가능
  • 스냅샷 기능 제공으로 데이터 손실 방지 가능
    • 실수로 파일을 삭제해도 해당 파일을 포함한 이전 스냅샷에서 복구 가능
    • 파일이 진정으로 삭제되려면 해당 파일을 포함한 스냅샷이 시스템에 하나도 없어야 함
  • 시간별, 일별, 주별 스냅샷을 자동 생성하고, 일정 기간 경과 후 오래된 스냅샷 자동 삭제로 저장 공간 절약
  • 8TB HDD 2개를 RAID 1(미러링) 으로 구성하여, 한 드라이브가 고장나도 데이터 온전히 보존

셀프호스팅 앱

  • Scrutiny

    • 스토리지 드라이브 상태를 모니터링하는 웹 대시보드
    • HDD와 SSD에 내장된 S.M.A.R.T. (Self-Monitoring, Analysis, and Reporting Technology) 펌웨어가 수집하는 온도, 가동 시간, 읽기 오류 등의 메트릭을 읽어 시각화
    • 히스토리컬 트렌드를 대시보드로 보여줘 드라이브 장애 조기 감지 가능
  • Backrest

    • restic(커맨드라인 백업 도구)의 웹 프론트엔드
    • Backblaze B2 오브젝트 스토리지 버킷에 일일 백업을 자동 저장하도록 설정
  • Immich

    • 사진·영상 관리를 위한 가장 인기 있는 오픈소스 셀프호스팅 앱 중 하나
    • iOS/Android 앱을 통해 모바일 기기의 사진·영상 자동 백업 지원
    • Google Photos나 iCloud 의존도를 줄이고 싶은 경우에 적합하며, 현재 휴대폰 사진·영상 백업에 활용 중
  • Mealie

    • 레시피 관리 도구로 밀프렙(식사 준비) 경험을 크게 개선
    • NYT Cooking 같은 사이트에서 발견한 레시피를 URL만 입력하면 재료와 조리법을 자동 스크래핑하여 라이브러리에 저장
    • 나중에 시도하고 싶은 온라인 레시피를 쉽게 추적·관리 가능
  • Ollama

    • 다양한 AI 모델을 실행하기 위한 백엔드
    • qwen3.5:4b, gemma3:4b 같은 LLM과 qwen3-embedding:4b 같은 벡터 임베딩 모델을 실행
    • 모든 모델이 GPU의 8GB VRAM에 들어갈 만큼 작은 크기
    • 노트북 대신 홈랩에서 모델 실행 작업을 오프로드할 수 있는 장점

원격 접속

  • 외부에서는 Tailscale(플러그앤플레이 VPN 서비스)을 사용해 데이터와 셀프호스팅 앱에 원격 접근
  • Tailscale은 WireGuard 위에 구축되어 홈 네트워크로의 보안 터널 제공
  • 홈랩 PC를 퍼블릭 인터넷에 노출할 필요 없음
  • 원격 접근하려는 모든 기기에 Tailscale 앱 설치 후 네트워크 인증 필요

향후 계획

  • 현재 앱 접근 시 머신의 IP 주소 + 포트 번호 조합을 직접 입력해야 하는 상태
  • 모든 서비스가 동일 IP를 공유하기 때문에 패스워드 매니저가 각 서비스의 로그인 정보를 구분하지 못하는 문제 존재
  • 향후 모든 서비스에 커스텀 도메인 이름을 부여해 접근성과 관리 효율을 향상할 계획

POGO, 비글본블랙, 레노버 미니PC등으로 이어오다가 제작년부터 N100으로 정착했습니다. 전기료 감안하고 GPU를제외한 기능들에 제격입니다.

이분 홈랩에 이정도까지 구성하셨으면 전기료가 무섭겠는데요?

게이밍 PC여도 계속 풀로드 거는게 아니라서 전기세 걱정은 크지 않을 것 같습니다.

2600X면 아이들에도 30W는 쓰는데다 GPU도 10W정도는 쓸 듯해서 저전력 CPU로 세팅한 홈랩보다는 꽤 나옵니다.
CPU+GPU만 해서 N100에 하드 3~4개정도 추가한 아이들 전력이랑 비슷할 듯 합니다.

Hacker News 의견들
  • 내 모든 서비스가 같은 IP를 공유해서 비밀번호 관리자가 어떤 로그인 정보를 써야 할지 헷갈림
    Bitwarden에서는 매칭 알고리즘을 바꿀 수 있어서, 기본값 대신 “starts with”로 설정하면 잘못된 항목 매칭을 피할 수 있음
    단, 이 설정을 바꾸면 “이건 의도한 게 아닐 수도 있다”는 경고가 떠서 좀 귀찮음

    • 각 서비스에 호스트네임을 주는 게 훨씬 간단함
      homelab 환경이라면 dnsmasq로 와일드카드 DNS를 쉽게 만들 수 있고, 라우터를 직접 관리하지 않아도 hosts 파일로 충분히 가능함
      mdns도 같은 이유로 쓸 수 있지만 설정이 좀 더 복잡함
    • “모든 서비스가 같은 IP를 쓴다”는 말에 대해, DNS와 SNI를 쓰면 해결된다고 짧게 지적함
    • tailscale IP에 공개 서브도메인을 연결하는 것도 멋진 방법임
    • 나는 Raspberry Pi에 PiHole을 설치해 로컬 DNS를 관리함
      여기에 Tailscale을 붙여서 외부에서도 광고 차단이 되고, 집 밖에서도 내 서비스에 접근 가능함
      마지막으로 NGINX 리버스 프록시를 추가했지만, 사실 없어도 충분히 잘 동작함
    • Cloudflare Tunnel을 쓰면 더 깔끔함
      각 서비스가 <service>.<yourdomain>.<tld> 형태로 분리되고, HTTPS도 무료로 제공됨
      Tailscale 없이 원격 접속이 가능하고, Cloudflare Access를 붙이면 Google이나 Github 인증도 가능함
  • 나도 비슷한 구성을 쓰고 있음
    워크스테이션 겸용이라 사양이 좀 높음
    nginx + letsencrypt 와일드카드로 여러 서브도메인을 운영하고, tailscale 대신 wireguard로 가족 간 네트워크를 연결함
    Jellyfin으로 영화/TV를 스트리밍하고, Mopidy + snapcast로 음악을 여러 스피커에 송출함
    Ubuntu + ZFS 미러링으로 NAS를 구성하고, Home Assistant로 자동화를 제어함
    Frigate로 보안 카메라를 관리하고, Forgejo로 개인 저장소를 운영함
    SDR로 항공기 트래킹도 하고, 집안의 IoT 장치들을 전부 로컬에서 제어함

    • 이런 식으로 워크스테이션과 서버를 섞으면, 재부팅할 때 가족이 쓰는 서비스가 전부 멈춰서 불편함
      서버 전용 장비를 따로 두는 게 훨씬 낫다고 조언함
    • Samsung TV의 오디오를 snapcast로 송출하려 했는데 지연 문제로 실패했다는 경험을 공유함
    • 한 머신에서 이 모든 걸 돌린 게 인상적이라며, 스펙을 물어봄
  • 나는 여전히 FreeBSD 기반 TrueNAS를 쓰고 있음
    새 버전이 Linux로 바뀐 게 아쉽지만, 다른 사람에게는 더 나은 선택일 수도 있음
    내 경우 NAS, 가상화, 라우팅을 각각 다른 장비로 분리했음
    새 TrueNAS는 예전보다 느렸지만, Docker 스타일의 앱 관리가 쉬워서 초보자나 소규모 비즈니스에는 좋을 듯함
    인프라를 쌓을수록 새로운 시도를 하는 한계비용이 낮아지는 구조라 이런 실험은 전부 가치 있다고 생각함

    • NAS에는 특별한 소프트웨어가 필요 없다는 걸 깨달음
      대부분은 Linux + NFS 혹은 SMB면 충분함
      불필요한 레이어를 줄이면 훨씬 안정적으로 운영 가능함
    • 역할을 분리하는 게 좋다는 데 동의함
      가족이 주말에 인터넷이나 영화가 안 되면 불만이 크기 때문임
      Mac Mini가 서버로 쓰기엔 전력 효율이 좋아서 아쉬움
    • Linux로 바뀐 건 다운그레이드라고 느꼈다는 의견과 함께
      TrueNAS Core vs Scale 비교 글을 공유함
    • 처음엔 복잡하게 접근했지만, 결국 단순한 하드웨어로 시작하는 게 낫다고 판단함
      나중에 NAS와 컴퓨팅 서버를 분리할 계획임
    • NAS에서 BSD를 고집할 이유가 없었고, 이제는 홈서버(HSSS) 개념으로 진화했다고 봄
  • 글쓴이는 Restic + Backblaze B2를 썼지만, 나는 Restic + BorgBase 조합을 선호함
    BorgBase는 단순한 요금제와 좋은 서비스가 장점이고,
    같은 회사의 Pikapods도 homelab 사용자에게 흥미로움

    • 나도 NAS에서 restic을 쓰지만, Hetzner StorageBox를 선택함
      1TB에 월 5달러로 더 저렴함
  • 대부분 클라우드 백업 얘기만 하는데, 나는 친구 집에 백업 서버를 두는 방식을 고민 중임
    하드웨어는 싸고, 소프트웨어는 오픈이고, 프라이버시는 어렵기 때문임
    Wireguard나 Tailscale 덕분에 이런 오프사이트 백업이 쉬워졌음
    혹시 이런 식으로 해본 사람이 있는지 궁금함

    • 나는 부모님 집 NAS에 Tailscale로 연결해 백업함
      친구 집에도 같은 방식으로 확장할 예정임
      iCloud 대신 Immich로 사진을 관리하고, Tailscale 덕분에 프라이버시 보장이 쉬워짐
    • 하드웨어가 예전엔 쌌지만 지금은 비싸졌다는 점을 지적함
    • 나는 NY에 살고, LA에 있는 아버지 집에 rpi5 + 10TB HDD 3개로 백업 서버를 설치함
      ZFS + zrepl로 스냅샷 복제하고, 문제 해결 과정을 AI가 정리한 글로 공유함
    • 25년째 친구 집에 백업을 두고 있음
      처음엔 로컬에서 백업 후, 디스크를 직접 옮겨서 증분 동기화만 함
    • 나도 세 군데(내 집, 형제 집, 출장지)에 백업을 분산함
      Syncthing의 untrusted peer 기능으로 친구에게 저장공간을 빌려주면서도 데이터는 암호화 유지 가능함
  • homelab용 PC는 일반 데스크톱보다 전력 소비가 훨씬 적음
    예시의 데스크톱은 연간 600kWh지만, 내 HP EliteDesk는 100kWh 정도임
    GPU가 필요 없다면 노트북으로도 충분함

    • 데스크톱을 재활용하면 SATA 포트가 많아서 NAS 구성에 유리함
      구형 게이밍 PC를 TrueNAS나 OMV용으로 쓰는 게 좋은 선택임
      HDD는 USB보다 SATA로 연결해야 안정적임
      AI 데이터센터 수요 때문에 HDD 가격이 여전히 높다고 농담함
    • 나는 Chromebox를 쓰는데, 기본 4W에서 NVMe 추가 후 8W로 늘었음
      BIOS와 powertop 설정으로 절전 최적화가 가능함
    • MiniPC는 좋지만, AM4 보드는 NVMe 7개, SATA 8개, ECC RAM을 지원해서 비교 불가임
    • Mac Mini M1 + Asahi Linux 조합은 연간 65~70kWh로 효율적임
    • 나도 구형 게이밍 PC를 분해하고, 대신 2014년 MacBook Pro를 서버로 쓸까 고민 중임
  • NAS OS 위에 다른 서비스를 올리는 건 거꾸로 된 구조처럼 느껴짐
    차라리 일반 서버 OS 위에 NAS 기능을 얹는 게 낫다고 생각함

    • Proxmox는 결국 Debian + qemu/lxc 웹UI일 뿐이라, 뭐든 가능함
    • 나도 homelab에서는 단순한 구성을 선호함
      대부분의 서비스는 베어메탈로 돌리고, Home Assistant나 Nextcloud 같은 건 컨테이너로 격리함
  • 나는 Talos Linux 기반 Kubernetes 클러스터를 여러 집에 걸쳐 구축 중임
    Wireguard로 연결하고, 각 존(zone)에 ZFS 박스를 두어 스냅샷 복제함
    Traefik을 게이트웨이로 두고, CrunchyPGO로 리더/팔로워를 분리함

    • 나도 비슷하게 해봤는데, WAN 지연 때문에 클러스터가 커지면 문제가 생김
  • 나는 xcp-ng 위 VM으로 TrueNAS를 돌리고 있음
    전용 SAS 컨트롤러를 패스스루로 연결했고, 예전엔 esxi를 썼지만 전부 xcp-ng로 옮김
    DNS는 bind9, 리버스 프록시는 nginx로 설정함
    Dell OptiPlex Micro에도 다른 VM들을 돌리고 있음

  • 대부분의 homelab은 부하가 크지 않아서, RAM 용량전력 효율이 핵심임
    4코어 저전력 머신이면 충분함

    • 나도 28개의 서비스를 N100 팬리스 머신에서 돌림
      AI 연산이 거의 없어서 데스크톱급 성능이 필요하지 않음