Seung Hun

왜 홈서버를 만들까?

개발자라면 누구나 나만의 서비스를 만들어보고 싶다는 생각을 한 번쯤 해보셨을 겁니다. 저 또한 그런 꿈을 가지고 혼자 웹/앱 서비스를 기획하곤 했습니다. 하지만 아이디어를 현실로 만드는 과정에서 늘 서버와 데이터베이스(DB) 구축이라는 귀찮은 장벽에 부딪히곤 했습니다. 이런 번거로움을 해결하기 위해 저는 주로 Supabase 같은 BaaS (Backend as a Service)를 사용했습니다. 정말 훌륭한 서비스지만, 무료 플랜은 장기간 사용하지 않으면 데이터베이스가 예고 없이 삭제되어 복구가 불가능하다는 치명적인 단점이 있었습니다. 소중한 데이터가 사라질 수 있다는 불안감 때문에, 결국 '나만의 서버를 직접 구축하자'는 결심을 하게 되었습니다.

그 다음으로 떠오른 대안은 역시 AWS와 같은 클라우드 서비스였습니다. 많은 개발자가 사용하는 가장 대중적인 선택지니까요. 실제로 AWS의 EC2 인스턴스는 가격이나 스펙 면에서 꽤 합리적으로 보였습니다. 하지만 가상 머신에 직접 서버 환경을 구축하고 데이터베이스를 설치하는 과정은 생각보다 번거로운 작업이었습니다. 물론 RDS나 ECS처럼 클릭 몇 번으로 데이터베이스와 서버 환경을 구성해 주는 편리한 서비스도 있었습니다. 하지만 개인 프로젝트에 사용하기에는 비용 부담이 만만치 않아 매력적으로 느껴지지 않았습니다. 고민이 깊어질 무렵, 주변 동료 개발자들에게서 **"차라리 미니PC를 장만해서 홈서버를 구축해보는 건 어때?"**라는 신선한 제안을 받았습니다. 그 순간, 복잡했던 고민이 명쾌하게 해결되는 느낌이었습니다. 그렇게 저의 시선은 자연스럽게 미니PC로 향하게 되었습니다.

무슨 미니피씨를 살까?

이제 무슨 피씨를 살까 고민을 하기 시작했습니다. 이것저것 알아보던 중 n100, n150이 홈서버 구축에 괜찮다는 얘기를 듣고 해당 매물들을 찾아보기 시작했습니다. 그리고 알리익스프레스에서 광군제 이벤트로 괜찮게 올라온 매물들을 발견하고 바로 구매를 하였습니다.

구매한 제품 (16GB, 512GB)

이걸 aws에서 사용하려면 어느정도 비용이 들어갈까?

저는 이 홈서버를 구축하기 위해 미니PC를 157,639원에 구매했습니다. (N100 CPU, 16GB RAM, 512GB SSD 사양)

문득 궁금해졌습니다. 만약 이 정도 사양의 컴퓨터를 AWS EC2 인스턴스로 빌려 쓴다면, 과연 한 달에 얼마의 비용이 나올까요?

가장 정확한 비교를 위해, AWS에서 공식적으로 제공하는 AWS 요금 계산기를 통해 직접 비용을 측정해 보았습니다.

AWS 요금 계산기에서 제 미니PC 사양과 가장 유사한 4 vCPU, 16GB RAM을 기준으로 검색해 보니, t4g.xlarge라는 인스턴스 타입이 가장 저렴했습니다.

이제 이 t4g.xlarge 인스턴스를 기준으로 실제 비용을 계산해 보겠습니다.

계산 결과는 충격적이었습니다. t4g.xlarge 인스턴스 하나를 한 달간 사용하는 비용은 무려 $121.47, 현재 환율로 약 17만 7천 원이었습니다.

하지만 이게 끝이 아닙니다. 이 가격은 순수한 컴퓨팅 비용일 뿐, 제 미니PC의 512GB SSD에 해당하는 스토리지(EBS) 비용은 완전히 빠져있었습니다. 스토리지 비용 $46.60을 추가하고 나니, 월 최종 견적은 총 $168.07!

한화로 매달 약 24만 5천 원입니다!

한 달에 1만 원도 채 나오지 않는 미니PC 전기세와는 비교조차 민망한 수준입니다. 제가 미니PC를 구매한 총비용(약 16만 원)보다 매달 내야 하는 AWS 요금이 훨씬 더 비싼 아이러니가 발생한 것이죠.

결론적으로 저는 홈서버를 운영함으로써 매달 24만 원에 가까운 돈을 '벌고(?)' 있는 셈입니다!

미니피씨가 드디어 도착했다.

저의 소중한 미니피씨가 바다를 건너 제 품으로 도착했습니다. 사실 바다를 건너지는 않고 비행기를 타고 왔습니다.

왼쪽 모서리가 살짝 찌그러진 모습

영롱한 나의 미니피씨…

앞으로의 계획

이제 이 작은 미니PC를 강력한 개인 서버로 변신시킬 차례입니다. 앞으로 진행할 작업 로드맵은 다음과 같습니다.

  1. 서버 OS 설치: 먼저, 기존의 윈도우를 정리하고 서버 환경에 더 적합한 우분투(Ubuntu) 서버를 설치합니다.
  2. 보안 강화 및 원격 접속 설정: 외부에서 안전하게 접속하기 위해 SSH 환경을 구축하고, 비밀번호 대신 암호화된 SSH Key 방식으로만 접속하도록 보안을 강화합니다.
  3. 도메인 연결: IP 주소 대신 제가 소유한 개인 도메인을 서버에 연결하여 어디서든 쉽게 접속할 수 있도록 설정합니다.
  4. 배포 환경 자동화: 마지막으로, Coolify와 같은 셀프 호스팅 플랫폼을 설치하여, 클릭 몇 번만으로 원하는 서비스를 간편하게 배포할 수 있는 자동화 환경을 완성합니다.

다음 포스팅에서는 이 로드맵의 첫 번째 단계인 '우분투 서버 설치 및 기본 설정' 과정을 다뤄보겠습니다.