Building a storage server - Part 1
For many years (more than 10y?) I had some sort of 24⁄7 server running at home, hosting some nice services like mail, websites and of course central storage.
It started with a random intel atom based platform with windows and vmware server. Moving to a single ESXi with windows and gnu/linux based virtual machines and finally moved to a server where I used qemu/kvm with many gnu/linux based virtual machines.
But over the years I always had trouble with the amount of harddisks needed for saving and backing up my data. I have a backup solution based on borg to backup some stuff on a daily basis. But for the bigger part of my data, I had a eSATA 2-bay connected to my desktop and once a month a used rsync to mirror my data to this bay.
Last year my storage demands increased again and I had no more space left in my server. And even if I had space for that, the next problem would be space for backup. From time to time, I exchanged harddisks by some bigger once. But I didnt really liked that, it felt like a bad workaround. I also started to be interested in video transcoding/encoding and I also bought a TV usb stick a year ago and never really used it. I wanted to stream the TV signal over IP to somewhere else.
So I decided to build a new server which should cover the following topics:
- enough space for my data (with RAID) and some local backup storage
- backup on daily basis, maybe with compression/deduplication (lets see)
- providing the data via samba to remote clients
- jellyfin with hardware-based transcoding and encoding
- use the TV usb stick with the help of tvheadend (maybe combine it with jellyfin)
After some research, I bought the following components:
- ASRock H470 Phantom Gaming 4
- Intel Core i3-10100
- Patriot Viper 4 DIMM Kit 8GB
- Seasonic Focus GX 550W
- 2 x Kingston A2000 NVMe PCIe SSD 250GB
- an ASM1166 based PCIe SATA controller
- 3 x Toshiba MG07ACA 14TB
- Second-hand case from a friend (just needed enough space for ~8 3.5” harddisks, no hotswap)
I want to try out these NVMe SSDs. I dont have any experience with them. My plan is to setup a RAID1 with mdadm on them and use them for the operating system and any kind of cache when needed.
Based on my research, the i3-10100 should be cabable of multiple hw-based encodings (even with 4K). Some tests will hopefully prove that.
The three 14TB harddisks will go into a RAID5 and serve as my main storage for everything. For backup, I will use some of my existing harddisks and just put them into an LVM volumegroup. The ASM1166 will hopefully help me out with some additional SATA connectors.
I choosed the mainboard mainly because of price/performance reasons. It has a bunch of PCIe connectors, maybe for some later extending and a bunch of ultra fast usb ports. I used USB 3.0 only one or two times until now, so I need to catchup here a bit.
The whole setup feels flexible enough for later extending in many ways.
Part 2 comes when everything is shipped to me.