Beggar Homelab (updating..)

self-quote, “building systems is LEGO for adults”

TL;DR

I built a homelab server at home:

image.png

type model
CPU i5-3450 with PCI-E bifurcation hacking
MB ASUS Z77
DRAM 4*8GB DDR3 1600
Storage LSI 2308 SAS (OCP):
2*Optane M10
2*SSD
7*HDD (2~10TB, ~35TB in total)
Network ConnectX®-3: 10 GbE (OCP)
RTL8125: 2.5 GbE
RTL8111: 1 GbE
Case $2 case from trash cans
Rack IKEA LACK + 4 homemade casters
OS Ubuntu Server 22 LTS

Most of them are CHEAP products retired from DCs.

This server hosts a number of services, including:

  • Network-Attached Storage through samba, webdav, nfs, iscsi, seafile
  • jellyfin: media streaming
  • transmission: download station (PT, …)
  • clash: network proxy
  • home assistant: Open source home automation that puts local control and privacy first
  • pCDN: pay my bill
  • etc: VMs, …

To ensure data reliability, less intrusion, and high flexibility. A bunch of open-sourced tools are used to manage NAS:

  • ZFS: a feature-rich filesystem (CoW, snapshot, RAID, cache…)
  • MergerFS: combine different file systems to provide a global view
  • BorgBackup: backup with compression and dedup
  • Open-CAS: the easiest way to deploy cache for block devices
  • *hd-idle (golang): the silver bullet to standby idle disks
  • scrutiny: monitor disk status

In conclusion, it can provide a global view across multiple disks and different protection for different types of files (backup with dedup, erasure coding and *snapshot).

*Items marked with stars contain codes that I contributed.

Search

    Table of Contents