라즈베리파이 홈서버 구성 후기

쭌로그·2023년 3월 31일
0

홈서버의 시작

사실 처음에는 홈서버를 운영하게된 이유가 딱히 없었습니다. 일단 처음 라즈베리파이를 사서 공부해보면서 전력 소모도 적고 항상 껐다 켰다 하는게 귀찮았어서 별 생각 없이 24시간 구동하기 시작했습니다. 그러면서 취미로 웹 개발을 배워보고싶어 APM을 설치하고, php와 html을 간단하게 공부하기 시작해보면서 그래도 나만의 작은 웹사이트를 운영한다는 명분으로 본격적으로 24시간 굴리게 되었습니다.

홈서버 하드웨어 변천사

처음에는 중고 라즈베리파이 3B와 sd카드 구성으로 사용하였습니다.
사용중 블루투스 장비와 간섭이 신경쓰여 5GHz를 지원하는 3B+를 중고로 저렴한 가격에 들여와 sd카드를 옮겨서 사용하였습니다.
이후에는 작품용으로 사용했던 4B가 작품의 해체 이후 손에 들어와 4B를 메인으로 sd카드를 옮겨서 사용하였습니다.

사양이 충분해지고 HA를 손대는 등 사용하고 싶은 서비스가 많아지면서 64비트 라즈비안과 ssd 조합을 통해서 성능을 끌어올리고 싶어져 처음부터 새로 구성을 하게 되었습니다.

현재 홈서버 구성 HW

설치기는 여기서 확인해보실 수 있습니다.

  • Board: Raspberry pi 4B 4GB
  • OS: Raspberry pi os 64bit
  • SATA-USB converter: MBF-U3SATA
  • SSD: TAMUZ RX550 120GB
    (SSD를 고정한 회색 구조물은 이것입니다.)

이전과 다르게 wifi 연결에서 유선LAN으로 변경하여 연결성을 개선하였습니다.
Octoprint를 사용하기 위해서 위치는 3D 프린터 바로 옆에 위치하고 있습니다.

현재 사용 서비스

원래는 네이티브 앱 위주로 사용하였으나, Docker를 알게된 이후 Docker 이미지 기반으로 사용중인 애플리케이션을 모두 이전하였습니다.

<Docker를 이용하는 서비스>

  • Apache httpd, php-fpm, MariaDB: 기본 웹서버를 구동합니다. 간단한 웹 개발 공부와 도쿠 위키 등을 사용합니다.
  • flask: 간단한 웹 API 서버로 사용중입니다.
  • code-server: 라즈베리파이의 로컬 디렉토리와 연동하고, ssh 등을 설정하여 웹으로 어디서든지 코딩 할 수 있도록 구성했습니다.
  • Nginx Proxy Manager: 리버스 프록시 구성 및 https ssl 인증서 구성합니다.
  • Authelia: 로그인이 없는 도커 서비스를 위해서 NPM과 연동하여 사용중입니다.
  • Home Assistant: 홈 자동화를 위해서 사용합니다. (라즈비안에 설치 방법)
  • transmission: 토렌트 다운로드 용도인데 거의 사용 안합니다.
  • OctoPrint: 3D 프린터 제어용 소프트웨어로, 3D 프린터에 다양한 부가 기능과 편리한 사용을 도와줍니다.
  • 기타 제작 도커 컨테이너

현재 구성 사용 후기

홈서버가 있어서 좋은 점은,

  • 개인적으로 개발 공부를 할 수 있고, 만들고 싶은 서비스도 만들어 볼 수 있습니다.
  • 도쿠위키 등을 올려서 메모장으로 쓰거나 주변 사람들과 재밌게 놀 수 있습니다.
  • code-server를 사용해 집 밖에서도 코딩 공부를 할 수 있다는 점이 참 만족스럽습니다.
  • Home Assistant를 이용한 자동화가 삶을 편안하게 해줍니다.
  • Octoprint와 같이 특수목적의 소프트웨어를 구동할 수도 있습니다.

추후 업그레이드 욕구도 있습니다. 현재 성능적으로 부족한 것은 없지만, ARM기반 이미지가 없는 도커 서비스 등을 몇 개 보고, 그냥 그저 더 좋은 성능도 갖고 싶어지면서 x86기반의 서버를 구성하고 싶어집니다... 또한 사진을 저장할 NAS를 쓰고싶어 시놀로지 등이 갖고싶어지네요..

profile
컴퓨터, 기계 등을 좋아하는 전자공학을 전공중인 대학생입니다.

0개의 댓글