New data storage and processing for my media

Each of us has important personal information that we want to protect and preserve. For me, these are a few documents but mainly my own photo collection. While many things can be recovered (albeit with some difficulty), in the event of a disaster, this specific type of information is irrevocably lost forever. I had to make this painful experience when a few years ago the hard disk of my PC crashed and I didn’t care enough about data security beforehand. Although some of the data could still be rescued, the year 2002 in pictures practically no longer exists from me. In the aftermath of this incident, I purchased a Network Attached Storage (NAS) and have since been meticulous about storing all critical data both on my RAID protected NAS and in the cloud.

My choice fell on an Iomega StorCenter PX4-300d, more out of loyalty to my former employer EMC (at that time Iomega was part of the EMC Corporation). This was 10 years ago now and although the unit has never let me down (of course there have been a few hard drives that needed replacing) a technology refresh was long overdue. On the one hand, because the system has not received any updates for some time, on the other hand because the unit is simply ancient for a critical IT component.

A system board error could lead to repeated data loss and this is exactly what I wanted to avoid with the acquisition of the NAS. Also because spare parts are hardly available, continuing the operation would have been an irresponsible decision on my part.

Now, in the course of the last few years, another requirement has also emerged: The consumption of media in the form of music and video. HiFi and home theater occupy an important place in my list of hobbies. And since I am a perfectionist, I try to get the maximum out of both. This has an impact on how I choose to consume media. For music I rely on Roon and for video playback I use PLEX. The challenge is that both systems require a local server. So far, I’ve been running the required software components on my iMac in the office. However, with the replacement of the old NAS, I wanted to free my iMac from these tasks. Why do I need such cumbersome software products that require a complex architecture and why don’t I stream directly without these server systems instead?

I am glad you asked! 😉

I have already posted about Roon in several articles. Just use the search function on my website. Nevertheless, I would like to explain briefly what makes Roon so special: Roon fulfills all the wishes of an audiophile listener.

Roon consists of 3 components:
Roon Core, Roon Apps, Audio Devices

While the central server (Core) allows me to send any music content to all available audio devices, Roon apps are used as remote controls. The great thing is that Roon supports both local music files and high-end streaming services (Qobuz, Tidal) and can combine them seamlessly, whether for your own playlists or via the (mood-based) radio function.

Roon with its central Core

Besides its outstanding media management, Roon supports all important audio formats and can convince with lossless playback. Of course, I also use streaming services very intesivly, and here my choice fell on Qobuz. But I also own some high quality recordings in the best avialable digital format (I mean DSD), which many studios now use as their mastering format instead of analog tape.

I do some compromise on quality for my home theater, and of course I’ve been streaming content for years. Unfortunately, good movies disappear from the service providers’ offerings every now and then. That’s why I created a small movie collection of my personal favorite movies/series. And that’s exactly what I use PLEX for.

How PLEX works

With PLEX I can access my own content from anywhere and also give access to my friends if needed, while media management is largely automated.

But let’s get back to the topic of data storage… There is the possibility to install both servers on a commercially available NAS (e.g. Synology or Qnap). However, the processor performance of these NAS systems is quite poor and the dependency on another proprietary system has deterred me from going this route. Also, I have noticed through the user communities that the container applications on the NAS platforms are causing problems more frequently. On the subject of dependency: These systems are based on proprietary software code and make hardware replacement after discontinuation of the system somewhat less secure. In the event that a system board fails, I need to be assured that the data disks and existing raid configuration can be read by a successor product. This also ties me to the manufacturer when it comes to a future replacement.

Ubuntu it is!

So I decided to choose an open platform, which seems to me the best way to go in terms of hardware choice, upgradeability, stability and simplicity. Thus the choice was Ubunutu Server, which also means I had to brush up on my somewhat dusty Linux skills. Fortunately I am not the first one who made this decision, that’s why you can find good guides on how to install and run the platform

Nerds like to fall into the “build your own thing” trap, which can be a lot of fun especially with hardware. However, I did not want to build a storage server, but rather use standard components that are affordable and can be easily replaced by something else. For this reason I came up with a 2-box system with well-known and widely used products. I chose a combination based on an Intel NUC as server and an external Icy Box hard disk enclosure.

There is not much to say about the Intel NUC. It is small, quiet and, even in the entry-level configuration with an i3 processor, it is sufficient for my project. For the Linus OS and all DB operations (Roon & PLEX), the internal NVMe SSD is used to speed up operations (I chose the Samsung 970 Pro, which has 600TBW and therefore has the better endurance than its successor). The Icy Box can be equipped with two hard drives (I selected the WD Red Pro 16TB NAS HDD) and simply connected to the NUC via USB. The hard drive box itself supports hardware based RAID, but I decided against this proprietary approach and used Ubuntu’s standard included software RAID instead. This allows me to be very flexible in replacing hardware if a product is no longer in production or spare parts are no longer available.

I ventured into this project and entered new territory for me. I also had to ensure that the new system was properly secured with limited remote access, strict certificate-based and multi-factor authentication, as well as other security controls such as firewall and intrusion prevention. An automated backup of critical data including the system configuration of the NAS itself in the cloud was a step forward compared to the previous system.

In addition, the secure and reliable operation of my multimedia services (Roon & PLEX) cost me some time. But now everything is running smoothly and stably and, thanks to automated updates, almost without a great deal of administration effort. The system has not caused any problems so far and my iMac in the office is no longer burdened with server tasks. Here, too, I have eliminated a dependency. In terms of security, I have also made a significant development step. That’s the advantage of an open system: you can align yourself with the best practices of the industry, put together your own security controls as required and close critical vulnerabilities immediately. Now I can sleep peacefully again 🙂

My 2-box Ubuntu NAS System

That’s all folks. Have fun!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: