Building a reliable NAS – Part 1

So I had been mulling over this idea for a while: building a NAS. “Why would I build one, if I could build a reliable one?” I thought soon after. And that’s how this post series was born.

A new beginning

As every journey begins there is usually a reason behind that. To tell the truth I already had a homelab that I also used as a NAS at my home, however since when I discovered the silent data corruption issue and have it bit me on some of my photos I decided it was time to build a reliable NAS. The purpose behind this new reliable NAS was to defeat silent data corruption and to have a system where to backup everything on.

Requirements

To better plan what would become my next NAS I jotted down for a while what I wanted from this new server:

• It must have enough space to store everything (both from me and from my family).
• It must be platform-friendly: usable on Windows, Linux and Android/iOS (Mac is a plus).
• This depends entirely on the solution and we will talk about it in the next section.
• It must leave enough room for a little grow in the years.
• Have at least the possibility to grow without buying additional stuff.
• It must be able to stream some media and do some transcoding.
• It is primarily a file server, but having the possibility to stream media (in the LAN) is neat.
• It must be as cheap as possible (without compromising the other points).
• Most importantly it must avoid without doubt data loss and data corruption (especially silent data corruption).

Solutions

Alongside with requirements I came up with three solutions:

• A Pre-built NAS: one of those specialized boxes that serve as NAS (e.g. Synology boxes). Given enough bays it would surely fit my space and growth need. However platform compatibility and transcoding would depend on each solution and they wouldn’t probably be cheap. Also silent data corruption would be an issue.
• Pre-built server: a server (preferably tower) assembled by known brands (like Dell or HP). The space and grow will probably be satisfied without problem since at least 4 bays are commonly available in most cases. Transcoding would depend on the CPU. While I could avoid data corruption by using FreeNAS with ECC memory. Cheap options are also available.
• Custom-built server: a custom built server that would fit all the requirements including: powerful CPU for transcoding, ECC memory to avoid data corruption, large case for space and growth. Platform-friendliness and depends entirely on the operating system, just like the pre-built option. It won’t probably be cheap.

I immediately discarded the first option since it wouldn’t fit the data corruption requirement. Then I tried to assemble an ideal computer that would support everything, but I found myself out of luck. A motherboard with ECC support itself could cost more than 200$! In the end the cheapest build I could come up with would cost me about 800$ or more (without disks!). That’s when I looked at the cheap solutions offered by known brands.

 Lenovo ThinkServer TS140 HP ProLiant MicoServer Gen8 HP ProLiant ML10v2 CPU Intel Pentium G3240 Intel Celeron G1610T Intel Pentium G3240 Socket LGA1150 LGA1155 LGA1150 Memory 1x4GB ECC UDIMM 1x4GB ECC UDIMM 1x4GB ECC UDIMM Memory slots 4 2 4 Max memory 32GB 16GB 32GB Max Drives 4 4 4 Max Storage 24TB 12TB 24TB Expansion slots 4 1 4 Form factor Mid-tower (4U) Ultra Micro Tower Mid-tower (4U) Interfaces 2xUSB2 6xUSB3 1xGigabit Ethernet VGA 2xDisplayPort Serial Interface Audio 5xUSB2 2xUSB3 2xGigabit Ethernet VGA 2xUSB2 2xUSB3 2xGigabit Ethernet VGA Extra Featureful Compact and exposed drive bays Price 270$224$ 200\$

I really wanted to pick the HP Microserver, however the processor, socket and the maximum memory/storage held me back. Maybe the next generation of HP Microserver will have at least the LGA1150 socket.

Conclusion

In the end I bought a Lenovo ThinkServer TS140 which should arrive next week, stay tuned for the Part 2 of this post series! Also if you’ve got suggestions on how I could’ve done an what operating system I should use let me know in the comments here or on Reddit : )

Building a reliable NAS – Part 2 is out!

Image thanks to Martin Abegglen.

Image courtesy of Martin Abegglen

The following two tabs change content below.

mark

The IT guy with a slight look of boredom in his eyes. Freelancer. Current interests: Kubernetes, Tensorflow, shiny new things.

You may also like...

This site uses Akismet to reduce spam. Learn how your comment data is processed.