Now that we have seen the general performance of the backup tools that DSM provides, it is time to move into a more intensive area, virtual machines, and containers.
Table of Content
For anyone not familiar with containerization, here is a quick explanation.
Unlike conventional virtualization, containerization is a technology that allows for the packaging and isolation of software applications and their dependencies into portable and self-contained units called containers. These containers encapsulate everything needed to run an application, including code, runtime, system tools, and libraries, ensuring consistency and reproducibility across different computing environments. With containerization, applications can be easily deployed, scaled, and managed in a streamlined manner, as containers can run on any operating system or infrastructure without compatibility issues. This approach improves efficiency, facilitates faster deployment cycles, enhances resource utilization, and enables easier collaboration across development and operations teams.
Because of this, from a resources standpoint, containers are much more lightweight than a full virtual machine running that same application in the end.
DSM's Docker implementation has been called Container Manager since DSM 7.2. but apart from that marketing name, it is still Docker under the hood.
The Docker platform has been supported on DSM since 2015, and while it was exclusive to the "+" series of NAS models, in 2023 Container Manager was made officially available on selected "value" and "j" series as well.
The CPU and RAM are the main resource elements from a hardware standpoint, so if we are running a low-end device we need to be aware of potential limitations that come with such models. Still, plenty of solutions can be run via Docker with a low impact on the host resources.
BLACKVOID blog on occasion writes about Docker and solutions that can be deployed, and for the most part, those apps and services will not require a massive amount of resources, while still elevating the use of the NAS itself.
When we talk about the RS2423+ and Docker support there is little that this machine can't support. With up to 32GB of RAM and a modern AMD CPU, we can expect to run any platform via Docker that we need.
From a lightweight note-taking app, and a password manager to any type of database environment.
For anyone starting in the world of Docker, it is important to note that this platform is mainly oriented to be used via the command line. Saying that Synology has over time kept updating its Docker/Container Manager app to provide a more user-friendly experience for those who are not comfortable in the shell.
The Container Manager provides those essential tools to maintain and control any number of containers running on the Synology NAS.
On top of the Container Manager, there are 3rd party solutions (free or commercial) that go beyond the basic functionalities. Some of them actually run inside Docker itself, like Portainer.
With currently 15 containers running on the RS2423+ we can see that the utilization is very low until an operation kicks in and starts to push the NAS. The green spike is actually a download that happened in a short amount of time. Considering it was a 100MB/s transfer the host spiked in order to accommodate it.
Monitoring the running processes and executions is essential for maintaining optimal performance of the NAS, especially for beginners in the world of containers.
:: Docker containers using Container Manager
As with any other application or service, be it installed via Docker or directly on the NAS, its role will result in different performance and in return, demand more or fewer resources. With that in mind, we have to plan accordingly when deploying any number of containers.
As can be seen in the screenshot above, with a constantly running application inside a container the CPU and RAM utilization is minimal but constantly present due to the fact that there is a constant data exchange, and on a NAS model such as the RS2423+ this type of app will have zero to none impact on the overall workload.
Deployment of containers can be executed using several options in this current version of Container Manager. As before, we are able to deploy containers manually using a wizard process, or, part of a project (docker-compose) which is a new method introduced recently.
In any event, the result is the same, a Docker container running on the RS2423+. Without getting into too many details, as there are millions of apps and services that we can run via Docker, this NAS will have no issues running a simple app or a complex database platform. With its 32GB of RAM, any software that is needed will probably work with no problem at all. Again, it is important to manage expectations as every host has its limitations.
As an example, a multimedia platform such as PLEX will have no problem running inside Docker, as well as a SQL or Postgres instance in parallel.
It is safe to say that running Docker on a machine such as this has only benefits considering that it unlocks access to a large number of software solutions outside the official Package Center, with little to no impact towards the DSM OS itself.
While Docker might not be the best platform to demonstrate the power (or weakness) of this NAS, virtual machine(s) on the other hand will have no problem on that front.
: ESXi and iSCSI
For this next part, an ESXi 1Gbe host will be used with a Windows 11 virtual machine configured over iSCSI protocol against the RS2423+.
:: Windows 11 VM using an iSCSI LUN
As with any other NAS that has support for DSM's SAN Manager package, comes with support to use said NAS as an iSCSI target device. Provided that there is enough network throughput, the NAS large storage pool can be attached as an additional local drive to a compatible computer.
In order to use any storage space on the NAS via iSCSI protocol, we first need to make an iSCSI target and a LUN. After that, using an iSCSI initiator on the client side we can configure and attach the storage space.
Depending on the client OS of choice, we might have to install an iSCSI initiator as a separate driver/app, however with Windows OS, this support comes built-in. After a successful connection to the iSCSI target, the LUN(s) are then presented inside the Disk Management console and ready for configuration.
Considering that the Windows 11 machine in question was only on a 1GbE connection, not 10GbE, the speeds will not exceed 125MB/s of network transfer. The SMB transfer over iSCSI of a single large file came close to 100MB/s during the whole duration of the test.
Performing a CrystalDiskMark test on the same Windows 11 machine provided with a similar image maxing the 1Gbe connection in both read and write tests.
During this test, the RS2423+ CPU utilization had no significant impact averaging at about 11%.
:: iSCSI as an ESXi datastore
For the next ESXi and iSCSI test the same host will be used only this time, the iSCSI target will be used as an ESXi datastore hosting the Windows 11 virtual machine.
The first task was to move the VM from an NVMe disk over to the iSCSI one. This took about 20 minutes as the transfer was about 80-90MB/s with about 10-15% CPU utilization for the whole duration.
After the transfer was complete, the boot-up of the Windows 11 VM took about 45 seconds. Longer than desired, but expected due to several reasons. First, the hypervisor is 1GbE limited, and the drives inside RS2423+ are HAT3300, so HDDs, not SSDs.
As a result, the experience of using such a Windows 11 machine with its drive on the NAS accessible via iSCSI will not be great taking into consideration the mentioned limitations.
The CPU and HDD activity is noticeable in the images above. While booting this was the only active task on the NAS. CPU was usually over 20%, but there were situations when it exceeded 50% as well. Because this was the only intensive operation at this time, and a single VM on top of that, it is hard to suggest using this setup for daily production.
The graph also shows that the IOWait is the main cause of this high CPU usage, meaning the disk array is to blame. Again, with a 10G connection and SSDs inside the NAS, this would be a much different situation. For reference, a better user experience was achieved on a DS923 with SSDs and 10G.
Disk and network latency will be the main issue in this kind of setup, so using any NAS, including an RS unit, do consider running with the fastest possible drives, and a 10G network interface.
: Virtual Machine Manager
With the above scenario running the hypervisor end of this concept on a dedicated machine, let's see how the RS2423+ will perform if that task falls on its shoulders as well as hosting the VM's storage.
For this, we will use DSM's Virtual Machine Manager platform Running the same Windows 11 VM.
Now to be fair, using this kind of VM over RDP is relatively okay (depending on what the tasks are), just don't expect a bare-metal experience when working with such a setup.
Any intensive operation, like opening Photoshop or installing O365 will push the VM over 60% CPU for sure because as soon as there are some read/write operations the HDD array will show its weak side. Of course, once the apps have been set up and we simply use them (browsing, writing, etc) the overall experience will be usable, but again, in the long run, best to not use this as a daily production scenario.
As a simple reference, the installation of the default O365 package took 17 min to complete with nothing else running on the VM or on the NAS itself to disrupt this operation.
So can RS2423+ be used as a virtual machine host? Sure. Will it work well? Depends. As we can see depending on the needs and expectations it might work well for some tasks while not at all for others. Anything beyond basic "office" usage will already be a struggle while also in those scenarios it will stress the NAS, as well as users' patience.
It would be best to manage one's expectations if the end goal here is VM usage. In both cases, as a hypervisor, or a pure iSCSI target for a dedicated hypervisor, the RS2423+ will deliver, but be prepared to invest in a faster network (10G), as well as a dedicated SSD array.
The RS2423+ in its default setup can do a lot, and I mean a lot. Backups, Docker, network transfers, multiple users, surveillance, the works. What it can't do well is virtualization. At least not without some investment in faster drives and definite usage of the 10G network. On top of this, an SSD cache card might come in handy if SSDs are not to be used as main drives. Expecting a lot from this machine is not fair considering that it is a 12-bay "plus" model. Meaning, even that if it is meant to be fitted inside a rack, that doesn't mean it is a beast of a machine.
This machine is not much faster or more capable than an AMD 4-bay unit with an identical setup. Sure it can accommodate a lot more space, but that's it. Anything over that might be a disappointment if expectations are too high.
RS2423+ - Efficient storage for centralized data management
Considering it is marketed as an "Efficient storage for centralized data management", it is best to use it as a large SMB or iSCSI target for data management as well as a central surveillance hub. Again, virtualization is not its primary function, and while it can perform in this area, without any additional investment it will leave a bit of a bitter taste.
Sign up for free, today!
Verified Synology news portal
No spam. No emails. Unsubscribe anytime.