NAS Units as VM Hosts: QNAP's Virtualization Station Explored
by Ganesh T S on August 18, 2014 10:15 AM EST- Posted in
- NAS
- Storage
- Virtualization
- QNAP
Virtualization Station on the TS-451
We took the Virtualization Station package for a spin on our TS-451 review unit. We have already covered the performance aspects of the unit. Upon startup, the package indicates the NAS port through which it is accessible. It then requests the user to provide the default path for the VM & ISO files and also select the dedicated network interface. QNAP supports a wide variety of WLAN USB keys for adding a network interface to the NAS. Unfortunately, WLAN interfaces are not supported as dedicated network links in Virtualization Station.
Continuing with the setup process, we find the minimum requirements being checked (QTS version 4.1.0 or higher, VT-x support in the CPU and availability of more than 2 GB of RAM). Users then end up in the Overview section of the Virtualization Station package. Under the 'Create VM' section, we have templates with common configurations for users wanting to get a quick start. We created a new VM with 1 core and 2 GB of memory. A Windows 8.1 installer ISO was chosen as the CD image and a 250 GB IMG file was chosen as the HDD image. With this, the setup of the VM was complete and an entry appeared in the Virtual Machines set in the menu on the left. Powering up the VM and clicking on the activated 'Console' button on the right side popped up the HTML 5 view of the VM's console.
Access to the VMs is made possible in two ways - using a HTML-5 compatible browser or using the standard Remote Desktop application. Even though we have been using the system with Remote Desktop in the long term, the HTML 5 view is also useful from time-to-time, particularly before the service gets activated in the boot process. Some screenshots from the HTML 5 are presented in the gallery below.
A real-time view of the console is also possible without opening up the full HTML 5 view. Other aspects of the Virtualization Station package are visible in the walkthrough gallery below.
It shows the available formats for import as a VM, options for VM export, modification of the dedicated network interface, detailed logs, account management (as described in the previous section) and the directions to configure access to the HTML 5 console as well as Virtualization Station from an external network (either through manual port forwarding or automatically through uPnP for supported routers).
Continuing our evaluation, we mapped a CIFS share on the TS-451 on the Windows 8 VM. While trying to transfer data between the VM and the CIFS share, we found that the transfer was limited by the network link bandwidth (1 Gbps). Our experience with Hyper-V suggested that the best way to transfer data between the host and the guest OSes was through the use of an 'Internal Network'. Unfortunately, QTS / Virtualization Station doesn't yet have that capability. As a saving grade, the design is such that the data doesn't actually travel outside the NAS at all, but is routed using an internal bridge at the kernel level. The following diagram brings out the configuration with the dashed red line showing internal data transfers.
Data Exchange Between NAS & VM (Dashed Red Line)
In terms of stability, we have been running our Windows 8 VM on the TS-451 for the last month or so without any issues. The only hitch we encountered was during manual restarts from within the OS. The VM would power off and restart, but the Remote Desktop service wouldn't start. The Console view showed a frozen screen, and the only way out was to forcefully restart the VM from the HTML 5 UI. However, when running, the VM was rock-solid, just like any other physical machine we accessed through Remote Desktop. During our evaluation, one of the other features that we missed was USB passthrough (i.e, ability of the VM to recognize a USB drive plugged into one of the TS-451's USB ports). Apparently, the passthrough feature is coming in the next version of Virtualization Station (it is already being advertised in the TS-x53 Pro series brochure). The internal network feature for high speed data communication between the host and the guest is planned for late this year.
Power Users Application Scenarios
Without doubt, Virtualization Station is an innovative feature to include in a COTS (commercial off-the-shelf) NAS operating system. The benefits in a SMB / SME environment are quite easy to bring out. From the perspective of home users, QNAP has a much more challenging task. We can think of three different tasks that Virtualization Station can fulfill for such consumers:
1. Download / Browsing / Sync Machine:
One of the main purposes that we used the Windows 8 VM for was to use it as a sync machine for real-time remote synchronization across multiple NAS units from different vendors. For example, we mapped a CIFS share from a Synology NAS on to the Windows 8 VM and installed QNAP's QSync on it (setting up the mapped share as the QSync folder). The result was that we had multiple copies of the data spread across different NAS units. We could upload data to either and get it reflected in both places. Another way was to map a CIFS share from the TS-451 and install Synology's Cloud Station to perform similar duties. In our experience, the first situation with QSync worked better than the Cloud Station experiment (though both were not fool-proof, we expect this to be a viable situation when the 'Dropbox-like' apps from both vendors reach maturity). Obviously, the other application would be browsing and downloading of risky files. Currently, users opt for a combination of private browsing and/or sandboxing for this purpose. Usage of a tool like Sandboxie along with a browser / downloader on the VM is a viable and effective use-case. The ability to snapshot VMs can also enable roll-back if there is a necessity. Usage of Sandboxie-like tools should also handle attacks like Crypto Locker.
2. Home Automation Controller:
One of our personal favourites amongst the home automation platforms is Ubiquiti's mFi lineup. While the devices can be controlled standalone, putting it all together with scheduling support and rules requires the mFi Controller software running on a computer. This has acted as a deterrent to many users looking for power, flexibility and simplicity. Running the software in a VM on the QNAP NAS would be an excellent solution - particularly as the storage requirements of the mFi controller database scales up.
3. Software Development Machine:
Ultrabooks and laptops are turning out to be the primary computing vehicle for many users. Those dabbling with software development as a hobby or secondary job might find their mobile computing device to be underpowered. For such power users, running the development tools on a VM in the NAS and accessing the VM through their notebook (essentially making the mobile device a thin client) could serve the purpose well. In addition, the infrastructure can also be used for experimenting with Linux distributions.
Out of the three scenarios outlined above, Virtualization Station on the TS-451 ticks the right boxes for the first two. For running software development tools, a platform with better computing power than what is provided by the Celeron J1800 (say, a Core i3) would be a good choice. Again, it all depends on what is being developed. While the suggestion would definitely hold true for consumers wanting to develop Visual Studio applications, the TS-451 should be good enough for people developing scripts using, say, Powershell, Perl or Python.
38 Comments
View All Comments
DanNeely - Monday, August 18, 2014 - link
Could you add the power level with the NAS idle and no VM running to the table on the last page of the article?ganeshts - Monday, August 18, 2014 - link
I have updated the article with the latest power numbers.iAPX - Monday, August 18, 2014 - link
It's not a NAS, it's a server that host up to 4-drives, and is clearly not targeted at data centers.Too expensive for SOHO, and anyway not good as a Virtualization platform (4GB or 8GB RAM max is really ridiculous to aggregate many little servers into a box), nor good as a NAS for enterprise (due to the encryption bandwidth cap), and worse when doing both of them (no more bandwidth aggregation!).
I wonder where is the market for such an hybrid, when I will instead use a simpler less expansive NAS on one side, and a dedicated VM server on the other (many cores and 32GB+ RAM) ?!?
ganeshts - Monday, August 18, 2014 - link
The target market is home users (power users / enthusiasts). Note that I haven't talked about the unit's transcoding capabilities (I mentioned it in the first review). QTS is a popular COTS NAS OS.I do agree on the expensiveness part - but, most other COTS NAS are in the same price range. QNAP is demanding a slight premium because of the virtualization and extensive transcoding features which no other COTS NAS has, as of now.
Btw, this unit has the capability to run only 1 VM. If you want multiple servers in a 'box', then, the higher end solutions such as the TS-EC1279U-RP are your best bet.
QNAP doesn't expect the TS-451 to be used as an Exchange server. The four use cases are meant for the rackmount units mostly.
I have already covered why the combo concept could be a better bet in many circumstances - data traffic doesn't clog up the network, power consumption with one physical machine is better than two. Again, it depends on how many VMs you want to run at the same time. The TS-451 is suitable for home use.
iAPX - Monday, August 18, 2014 - link
I understand your point, but in this case, a simpler NAS, with one or two Intel NUC wouldn't be better (and load-balanced to be crash-prone) ?And anyway more expandable, on the VM side, both in available CPU, RAM, or by adding simple inexpensive units?
ganeshts - Monday, August 18, 2014 - link
Taken standalone (just talking about virtualization features), you are definitely right about what provides more flexibility.However, when people look at the TS-451 as an 'appliance', they see the virtualization aspect as just one of the features. Transcoding is another major aspect (and put in all the myriad QTS applications like QSync, cloud access etc.). The whole is greater than the sum of the parts.
iAPX - Monday, August 18, 2014 - link
I don't buy it, because to use all of that you need to be a linux sysadmin wannabee, to install and run Linux VM (at least, or BSD, or ...). At this point you might be able to control your own set of dedicated servers.Anyway, I appreciated your follow-up to this article, and your point-of-view, it's great to have this level of commitment, and to be able to have insights when there's remaining questions. Kind regards.
ganeshts - Monday, August 18, 2014 - link
I am not sure I follow the 'linux sysadmin wannabee' aspect. You can install any type of VM you want - Windows or Linux or even Android.Transcoding - This is plug and play. After installing the NAS, accessing the video files in it through QNAP's mobile app - Qfile - can trigger the transcoding depending on what quality level is chosen. This is orthogonal to the VM feature. You don't need any VMs running to use the transcoding feature.
All QTS apps - These provide additional features and are again not depending on the VM aspect.
I fear I might not have effectively conveyed my points across.
bsd228 - Monday, August 18, 2014 - link
you'd need to be that sysadmin wannabee to deploy the NUC solution you suggest as well.iAPX - Monday, August 18, 2014 - link
Exactly, in both case you might need to be a sysadmin (even a wannabe! lol!), wether it's windows or linux doesn't count, as Ganesh stated, but if you know hot to install and handle a VM with an OS, and remote access it correctly, you have it needs to handle Intel NUC (or whatever is your VM host of choice), and don't need a box that will make it easier to handle different services.In fact I think there's a much more larger market for a NAS that don't have virtualization, (thus a less expensive tag price, and lighter CPU/RAM configuration) but provides these services through "bundles" or "plug-in" (whatever you call them) hosted on their main Linux OS.