시작하며

주의! 이 글은 주저리 주저리 글입니다.

별로 안 궁금하다면 그냥 다음 글부터 보세요.

시작하기에 앞서, 클라우드는 비쌉니다. 정말 비쌉니다.

저는 AWS를 한 7년정도 사용했고, 일반적으로 사용하는 서비스라면 (EC2, Fargate, RDS..) 스펙에 맞춰 대략적인 가격을 외울 수 있을 정도입니다. 지금은 서버 개발자로 돈을 벌고 있기도 하구요.

하지만 많은 시작하는 사람들은 그렇지 않겠죠. 일반적으로 요금 폭탄을 맞을까봐 걱정하는 경우가 많을 것이라고 생각합니다. 실제로 그런 경우도 꽤 있구요.

저도 비슷했습니다. 그래서 저는 클라우드 서비스의 대안으로 홈 서버도 한 6년 정도 운영했습니다. 마인크래프트 서버 돌리기 위한 2200G 달린 데스크톱 한대부터, 지금에 이르기까지 꽤 많은 삽질을 했습니다.

굳이 고생을 왜 사서 하냐고 물어보면 딱히 저도 할 말은 없지만, 그래도 하다 보면 꽤 재밌습니다.

해외에서 자료를 찾을땐 Rpi4Cluster 나, home-ops Github 리포지토리, reddit의 r/homelab 채널과 같은 자료를 찾을 수 있는 곳이 꽤 있는데, 한국어로 된 자료는 꽤 찾아보기 어렵더라구요.

제가 처음 홈 클러스터를 구축하기 시작한게 2023년 2월이었는데요, 대략 2년이 지났고 꽤 많은 문제를 풀어냈고, 경험치가 많이 쌓였다고 생각합니다.

제가 지금까지 했던 삽질과 고생을(…) 혼자만 알기 억울한것도 있고, 같이 취미생활을 즐기는 사람이 늘어났으면 하는 것도 있습니다.

그리고, 혹시라도 인프라를 공부하는 사람이 있다면, 도움이 되었으면 하는 것도 있습니다.

쿠버네티스 같은 기술은 배우는 비용이 기술적 해자라고 생각하거든요. EKS에서 Worker Node 없이 Contol Plane만 빌려도 한달에 72$가 나옵니다. Worker Node를 단 한 대도 사용하지 않아도요!

그러다 보니 배우고 싶어도 가격이 무서워서 움츠러들기 마련이고, 장기 운용 경험치는 꿈도 못 꾸죠. Kubectl이나 Helm을 이용해서 배포는 해 볼 수 있는데, 정작 중요한 1년, 2년씩 운용해보는 경험. 트러블슈팅 해 보는 경험을 얻기는 어려운게 현실입니다.

물론 Vagrant같은 방법을 이용해서 가상 VM을 띄우는 방법도 있겠지만, 이것도 실제로 네트워크 망을 구성해보는 경험을 하기엔 모자란 부분이 있습니다. 그리고.. Vagrant로 서버 쪼개서 진짜 운용 할거에요..? 진짜..?

제가 지금 운용하고 있는 홈 서버는, 한달에 전기세만 만원 정도 나오는 것 같습니다. 이것도 제가 3090 달고 있는 x86 컴퓨터가 있어서 그렇지, 아마 Rpi나 N100같은 미니 PC로만 구성한다던가 하면 훨씬 더 쌀 거에요.

그리고 겸사겸사! Rpi는 간간히 죽습니다! 물리 노드는 멀티탭을 발로 찬다던가, 꽤 많은 사건사고들을 겪을 수 있는 불행한 환경에 처해 있죠. Rpi에서 SD카드 맛 가는 이슈도 꽤 유명하구요. 저는 지금은 다 해결해서 1년 넘게 아무 문제 없이 운영하고 있지만, 저런 지뢰를 한번 밟아보는것도 경험치를 쌓는데 꽤 도움이 될 것이라고 생각합니다. 장애 상황을 만들고, 그걸 복구해보는 경험은 하기 쉽지 않거든요.

그리고 마지막으로, 이 이야기를 하고 싶습니다.

저는 서버에 올릴 게 없는데요? 제가 굳이 이걸 해야하나요?

이건 선후관계가 잘못된겁니다!

뭔가 너무 올리고 싶은 게 있어서 서버 인프라를 깔아놓는게 아니라, 서버 인프라를 깔았기 때문에 할 수 있는 것들이 생기게 되는 겁니다.

Github에서 꽤 괜찮은 프로젝트를 찾았다고 쳐 보죠.

예를 들어 Google Photo 대체제인 immich 같은 프로젝트가 있겠네요.

만약 여러분이 아무것도 없었다면, 그냥 구글 포토 쓰지 이걸 왜 씀? 이라고 생각하셨을 겁니다.

그런데 만약에 여러분이 서버를 깔아뒀다면, 어차피 전기세는 비슷하게 나가는거 한번 깔아볼까? 하는 생각이 들 겁니다. 겸사겸사 이미지 데이터가 서버에 있으면, OCR이라도 돌려서 검색엔진에 인덱싱 해 두면 사진 찾을때 편하겠네요.

만약에 여러분이 기술에 관심이 있고, 이것저것 해 보는걸 좋아한다면 이 Self-host 서버는 여러분에게 공부든, 성장이든 큰 도움이 될 겁니다. 이건 제가 자신있게 이야기 할 수 있겠네요.

시작부터 잡설이 너무 길었네요! 다음 글에서 봐요!