도입
클라우드 서버를 올려서 관리한지 4년 정도 되면서, 처음엔 1대였지만 어느새 보니 3대가 되어있었습니다.
각각의 서버의 스펙과 명칭은 다음과 같습니다.
- EC2 t3a.large 2vCPU 8GB : 도메인이 uzuki.live 라서 우즈키서버
- Vultr 1vCPU 1GB: 블룸서버
- 중국발 타오나스에 OMV5 / J5005 8GB : 노답서버
3대로 분할되다보니 좀 어려움이 많았는데,
- 우즈키서버가 메인 서버이긴 하지만, EC2의 트래픽 비용 덕분에 서비스를 마음껏 못 올림. 마지막 마이그레이션 하고 2년동안 쌓여진 삽질 흔적이 많이 남아있음
- 특정 서비스를 올려야 할 때 어느 서버에 올려야 할지, 올릴 수 있게 환경은 준비되었는지 확인하는 과정을 매번 거쳐야함
- 들어오는 공격에 대한 징후를 잘 관찰하지 못함
그래서, 이번 기회에 홈서버를 마련하고 전부 통합할 계획을 세우게 되었습니다.
목표 정하기
계획을 세우기 전에, 목표를 세워보았습니다.
메인 목표: 안정성 위주의 홈 서버 + 통합 관리 시스템 구축
서브 목표:
1. Ad-block DNS + Wireguard 로 클린 인터넷 사용
2. 대시보드 페이지 자체 구현 (Ktor, Vue.js, Auth0)
3. 트래픽 비용 걱정 덜고 사용 (ISP 자체의 차단은 있지만, 일 200GB 사용시 100mbps 로 QOS라서 부담이 적음)
3. 보안 솔루션 적용
4. RAID 적용
5. 첫 ITX 조립 데뷔?
사양 정하기
목표를 이루기 위해서, 집단지성 (이하 필자 제외 1명) 을 이용해 어느정도의 사양을 잡았습니다.
- CPU: Ryzen 5 PRO 4560G (멀티팩)
- 메인보드: ASRock B550M-ITX/ac
- 메모리: 삼성전자 DDR4-3200 16GB x 2
- SSD: 삼성전자 970 EVO Plus M.2 NVMe (500GB)
- 하드디스크:
- 기존 하드 활용
- Seagate Ironwolf 5900/64M 4TB (데이터용)
- WD 2TB (다운로드용)
- 신규 하드 구매
- Seagate Ironwolf 5900/64M 4TB
- Marshell repair 2TB
- 케이스: JONSBO N1 For NAS
- 파워: FSP FSP400-60GHS(85)
- 모니터: kuman 7 TFT LCD 1024x600 (모니터링 시스템 띄우기 용도)
하드디스크 설정은 Ironwolf 를 RAID 1, 2TB 2개를 RAID 0으로 구성할 예정입니다.
마일스톤
주문하고 계획을 세우다보니 생각보다 할 것이 많지만, 마일스톤을 세워보았습니다.
- 계획 / 사양 정하기
- 조립 후 OMV6 설치
- 보안 솔루션 적용
- 모니터링 프로그램들 설치
- 노답서버에서 데이터 이전
- 블룸서버에서 데이터 이전
- 우즈키서버에서 데이터 이전
- 대시보드 페이지 자체 구현
- 마무리
마일스톤을 달성할 때 마다 연재할 수 있도록 해보려고 합니다. (무엇보다, 계획이 수면 위로 드러난 것 보다 많아서 오래 걸릴 것으로 예상되긴 합니다.)