16GB로 28개 서비스 운영하는 방법
원제 What I Self-Host
203 포인트댓글 105
Key Point
작은 하드웨어로 수십 개 서비스를 효율적으로 자체 호스팅하려는 개발자들에게 실제 운영 구성, 도구 선택 원칙, 구체적 성능 수치를 제시한다.
핵심 요약
- 저자는 인도에서의 저렴한 스트리밍 비용 이후 서방 가격 책정을 거부하고, 자녀의 무제한 추천 알고리즘으로부터 보호하기 위해 스트리밍 서비스를 중단했다.
- Jellyfin을 기점으로 클라우드 서비스 의존도를 줄이기로 결심했으며, ISP의 CGNAT 제약으로 IPv6 VPN만 공개하고 내부 서비스는 인터넷에 노출하지 않는 정책을 유지했다.
- 단일 Go 바이너리 선호, Docker 대신 Podman/systemd 활용 등 운영 간편성을 우선으로 서비스를 선택했다.
- €180에 구매한 Beelink S12 Pro(Intel N100, 16GB RAM, 512GB SSD) + 6TB 외장 드라이브가 기본 하드웨어다.
- Actual Budget(가계부), Jellyfin(미디어), Immich(사진), Frigate(IP 카메라), Home Assistant(스마트홈), Vaultwarden(비밀번호), Syncthing(백업) 등 17개 네이티브 서비스와 11개 Podman 서비스를 운영 중이다.
- *arr 스택(Sonarr/Radarr)은 불안정하고 리소스 집약적이라 거부했으며, Collabora Online은 LibreOffice로 충분하고, 이메일 자체 호스팅은 위험성으로 인해 피했다.
- 저해상도(720p, 480-576p) 미디어 사용, 단순한 SQLite 기반 도구 선호 등으로 리소스 수요를 최소화했다.
- 현재 메모리 사용량은 7.5GB, CPU는 30~40% 범위에서 안정적으로 운영되고 있다.
- 저자는 AI 인프레이션으로 인한 하드웨어 가격 상승 속에서 단순성과 효율성을 우선하는 자체 호스팅 프로젝트의 지속을 희망했다.