How I designed my mobile Data Center

(Be sure to checkout the FREE SQLpassion Performance Tuning Training Plan - you get a weekly email packed with all the essential knowledge you need to know about performance tuning on SQL Server.)

Getting serious notebook hardware these days is a quite challenging task. Almost all major hardware vendors only provide quad-core notebooks with up to 16 GB RAM (except Dell, but that is a different story because of their quality and their service…).

If I still wrote letters to Santa Claus (hey, is that me?), I would ask to have the following hardware combination that I could take with me when I’m travelling around the world:

  • At least 128 GB RAM
  • 2 Socket NUMA system with at least 2 quad-core processor sockets
  • As much M.2 SSD storage as possible

Unfortunately the current Microsoft Surface Book and the Apple MacBook Pro don’t provide you with that setup. On the other hand, we have that amazing thing where we can rent Virtual Machines with almost unlimited power on an hourly basis (referred to by us as the famous “cloud”). But the problem that you have with that approach is that you have ongoing costs (if the VMs are powered-down you still have to pay for storage consumption!) and – most importantly – you need a *reliable* internet connection.

Unfortunately a reliable internet connection is not always possible, especially at conference venues where hundreds or even thousands of people are concurrently trying to access the internet. As you can see, I am a person who travels a lot, and I have a huge demand on hardware which can’t be satisfied – unfortunately.

The SYS-E200-8D Micro Server enters the game

A few months ago I heard about the Intel NUC for the first time. That’s already an amazing piece of hardware (32 GB RAM!) compared to the Surface Book and the MacBook Pro. But still – 32 GB RAM these days is almost nothing. Just power up a few Virtual Machines (for example for an AlwaysOn Availability Group deployment) and your RAM is gone. When I’m doing my performance tuning and troubleshooting demos, I mostly work with databases which have a size of more than 100 GB – 32 GB RAM is just peanuts!

But back in November 2016 my life changed! It was the first time that I had seen the SYS-E200-8D server from SuperMicro. The hardware specs are just awesome:

  • 6 core processor (still not a NUMA system!)
  • Up to 128 GB DDR4 RAM
  • A super-fast M.2 slot for SSD Storage
  • 2x USB 3 Ports for external storage
  • 2x 1Gbit Ethernet Connection
  • 2x 10Gbit Ethernet Connection (yeah!)
  • Weight: 1500 grams!!!!

So you’ll be thinking what I was thinking back in November 2016: 1500 grams would fit perfectly into my hand luggage for travelling, and having up to 128 GB RAM would be more than awesome to run VMware ESXi as my Hypervisor platform! Here is my money, please take it! And here we go (the Tic Tac box is just there for size comparison):

The SYS-E200-8D server

Compared to the old Mac Mini that I also have, the SYS-E200-8D is still quite small:

Outdated Apple hardware vs. the SYS-E200-8D server

Additional Hardware

The SYS-E200-8D Server comes in a bare-metal configuration, without memory and storage -only the CPU is installed (which can’t be changed). The server can be additionally equipped through the following on-board slots:

  • 4 DDR4 RAM slots (up to 128 GB RAM – 4x 32 GB modules)
  • 6 on-board SATA 3 slots
  • 1 M.2 SSD disk
  • Support for 1 SataDOM drive

I wanted to max out the RAM, so I ordered 4x 32 GB RAM memory modules. In the next step I wanted to use my existing Samsung EVO 950 Pro SSD drives (each was 1 TB) and use them through the on-board SATA 3 slots (there is even space in the server to mount one 2.5 disk within the enclosure). Unfortunately I was not able to use the Samsung EVO 950 Pro SSD drives in a reliable way, because I got a lot of error messages on VMware ESXi when accessing the Datastores which were stored on the Samsung EVO 950 Pro disks (I also tried it with a bare-metal Windows Installation, and I also encountered here problems):

2016-12-08T22:09:41.365Z cpu7:68192)WARNING: FS3J: 3077: Error committing txn callerID: 0xc1d00006 to slot 1: I/O error
2016-12-08T22:09:44.878Z cpu0:65565)WARNING: NMP: nmp_DeviceRequestFastDeviceProbe:237: NMP device “t10.ATA_____Samsung_SSD_850_PRO_1TB_________________S252NXAGA17174H_____” state in doubt; requested fast path state update…
2016-12-08T22:09:48.973Z cpu9:66001)WARNING: vmw_ahci[0000001f]: ExecInternalTempDMA:ERROR: DMA transaction did not transfer data for internal command.
2016-12-08T22:09:48.973Z cpu9:66001)WARNING: vmw_ahci[0000001f]: ExceptionHandlerWorld:ERROR: Get error message failed for port 2
2016-12-08T22:09:49.644Z cpu2:68070)WARNING: vmw_ahci[0000001f]: scsiQueueCommand:IO request while driver is not ready; reporting device removal.
2016-12-08T22:09:49.644Z cpu7:66122)WARNING: NMP: nmp_DeviceRetryCommand:133: Device “t10.ATA_____Samsung_SSD_850_PRO_1TB_________________S252NXAGA17174H_____”: awaiting fast path state update for failover with I/O blocked. No prior reservation $
2016-12-08T22:09:49.644Z cpu2:68070)WARNING: vmw_ahci[0000001f]: scsiQueueCommand:IO request while driver is not ready; reporting device removal.
2016-12-08T22:09:49.644Z cpu2:68070)WARNING: vmw_ahci[0000001f]: scsiQueueCommand:IO request while driver is not ready; reporting device removal. 2016-12-08T22:09:49.644Z cpu2:68070)WARNING: NMP: nmp_DeviceStartLoop:728: NMP Device “t10.ATA_____Samsung_SSD_850_PRO_1TB_________________S252NXAGA17174H_____” is blocked. Not starting I/O from device.
2016-12-08T22:09:56.554Z cpu1:66001)WARNING: vmw_ahci[0000001f]: ExecInternalTempDMA:ERROR: DMA transaction did not transfer data for internal command.
2016-12-08T22:09:56.554Z cpu1:66001)WARNING: vmw_ahci[0000001f]: ExceptionHandlerWorld:ERROR: Get error message failed for port 2
2016-12-08T22:09:56.558Z cpu4:65590)WARNING: NMP: nmp_DeviceStartLoop:728: NMP Device “t10.ATA_____Samsung_SSD_850_PRO_1TB_________________S252NXAGA17174H_____” is blocked. Not starting I/O from device.
2016-12-08T22:09:56.558Z cpu4:65590)WARNING: NMP: nmp_DeviceStartLoop:728: NMP Device “t10.ATA_____Samsung_SSD_850_PRO_1TB_________________S252NXAGA17174H_____” is blocked. Not starting I/O from device.
2016-12-08T22:09:56.599Z cpu6:66024)WARNING: NMP: nmpDeviceAttemptFailover:603: Retry world restore device “t10.ATA_____Samsung_SSD_850_PRO_1TB_________________S252NXAGA17174H_____” – no more commands to retry
2016-12-08T22:09:57.088Z cpu5:66122)WARNING: vmw_ahci[0000001f]: ahciSignalException:exception handling world has already been awaked
2016-12-08T22:09:57.759Z cpu5:66122)WARNING: NMP: nmp_DeviceRequestFastDeviceProbe:237: NMP device “t10.ATA_____Samsung_SSD_850_PRO_1TB_________________S252NXAGA17174H_____” state in doubt; requested fast path state update…
2016-12-08T22:09:58.393Z cpu7:66122)WARNING: NMP: nmp_DeviceRequestFastDeviceProbe:237: NMP device “t10.ATA_____Samsung_SSD_850_PRO_1TB_________________S252NXAGA17174H_____” state in doubt; requested fast path state update…
2016-12-08T22:10:03.940Z cpu1:66001)WARNING: vmw_ahci[0000001f]: ExecInternalTempDMA:ERROR: DMA transaction did not transfer data for internal command.
2016-12-08T22:10:03.940Z cpu1:66001)WARNING: vmw_ahci[0000001f]: ExceptionHandlerWorld:ERROR: Get error message failed for port 2 2016-12-08T22:10:03.945Z cpu0:68211)WARNING: FS3J: 3077: Error committing txn callerID: 0xc1d00006 to slot 19: I/O error 2016-12-08T22:10:05.195Z cpu0:66122)WARNING: vmw_ahci[0000001f]: ahciSignalException:exception handling world has already been awaked
2016-12-08T22:10:05.196Z cpu0:66122)WARNING: vmw_ahci[0000001f]: ahciSignalException:exception handling world has already been awake

Additionally the Samsung EVO 950 Pro disks are NOT on the compatibility list of the SYS-E200-8D server!

I have found a few happy persons on the internet who were able to use the Samsung disks successfully, but I couldn’t get them to work for me. David Klee gave me a lot of help to troubleshoot this problem. I have not yet tried any officially supported SSD on the on-board SATA, because these disks are just too expensive…

My storage solution is now the following:

  • I’ve installed ESXi 6.0 (ESXi 6.5 is also NOT supported on the SYS-E200-8D server, and does NOT currently work reliably!!!) on the SataDOM drive from which the ESXi Hypervisor is booted.
  • I’m using the brand-new Samsung 960 PRO M.2 SSD 2TB disk in the M.2 slot, where I store my VIP Virtual Machines so that they are as fast as possible.
  • All other storage is attached through the USB 3.0 connection, where I just use my good old LaCie Rugged RAID (which is equipped with my Samsung EVO 1 TB SSD disks).

2 TB of superfast SSD storage fits onto an index finger!

The performance of my setup is not that bad. The M.2 disk gives me a throughput of about 3.1 GB/sec, and the Lacie Rugged RAID also gives me about 200 MB/sec. 200MB/sec is not that much for an SSD RAID, but bear in mind that I’m accessing the RAID through the USB 3.0 connection and you have to pay the overhead for the Hypervisor.

The Samsung 960 M.2 SSD is just *awesome* FAST!

How to access the SYS-E200-8D server?

Accessing the SYS-E200-8D server is quite challenging, because it is a head-less server without any screen. So I need an additional notebook with which I connect to VMware ESXi so that you I power-up my Virtual Machines. And finally I just open a RDP connection to my Virtual Machines. I already have a 2012 MacBook Pro which I’m using as my primary working device.

The problem of the MacBook Pro is that it is quite heavy at around 2000 grams. Together with the SYS-E200-8D Server (1500 grams), that would make it 3500 grams just for carrying my hardware around. Remember: I travel a lot, and I want to have everything in my hand luggage for flying (< 8kg) and it should be as light as possible.

Sometimes I even visit customers where I don’t need the whole “power” of the MacBook Pro, or even the SYS-E200-8D server. Therefore I have given myself a treat and ordered an additional 12” MacBook (a refurbished one), at only 900 grams:

The new 12 MacBook in action

Together with the SYS-E200-8D server I now have about 2400 grams of hardware to carry. Not counting the various cables that I need and my LaCie Rugged RAID, because I always have them with me regardless of which hardware I’m using (they are just always there). Just think about it: 2400 grams versus 2000 grams of the MacBook Pro, but you have now 128 GB RAM, and plenty of SSD storage with you – and it “costs” you only an additional 400 grams in weight!!!

And now here are a few pictures of what my whole setup looks like. I know there are a lot of components, but it works as expected and everything fits into hand luggage. Great!

The motherboard of the SYS-E200-8D server

My mobile data center can be held just with one hand!

Everything fits into my backpack

The whole mobile setup in action

The Price Tag

Of course we also have to talk a little bit about the price tag of this system – which isn’t that bad (in a positive sense!). Here is my Bill of Material list:

  • SYS-E200-8D Server: EUR 940
  • 4x 32 GB DDR4 RAM: EUR 910
  • 32 GB SataDOM Drive: EUR 60
  • 2 TB Samsung 960 Pro M.2 Drive: EUR 1050
  • 12” MacBook (refurbished): EUR 1130
  • USB-C Adapter for the MacBook: EUR 50
In sum I have spend here EUR 4140 (without tax!) for this setup. This is not that bad for what you get. Without the MacBook (which is not really necessary…) I’m down at EUR 3000 for the whole SYS-E200-8D setup, which is in the price area of the Microsoft Surface Book and the Apple MacBook Pro. But I have more hardware available with my setup! 🙂

What’s next?

As I have already written previously I’m mainly using the M.2 disk for very fast Virtual Machines (like the one that I’m using in my various workshops), and I have also a Nested ESXi deployment on it. I’m using a Nested ESXi deployment to show customers how to run their SQL Server installations in a highly available and reliable way and what you have to know when you work with VMware vMotion together with SQL Server. So the 2 TB M.2 disk is quite handy for working with larger Nested ESXi deployments which are dependent on performance.

On the other hand, I could also buy an additional SYS-E200-8D server, and run 2 physical ESXi installations on them. As I wrote at the beginning of the blog post, the SYS-E200-8D server has two 10Gbit Ethernet connections, which would be great to demonstrate VMware vMotion on real physical hardware! (instead of the Nested ESXi deployment). 2 SYS-E200-8D servers would still fit into my hand luggage (only 1500 additional grams), but there are 2 show-stoppers here:

  • You should need a 10 GBit Ethernet switch for Networking. There are no small and lightweight Ethernet switches available as far as I have seen. If someone has some tips on this, please feel free to leave me a comment.
  • The WAF

Wife Acceptance Factor...

Alternatively I could also use the 1Gbit network connections to hookup up 2 SYS-E200-8D servers, and do the vMotion through them. As I have said previously the server has also two 1Gbit connections, so I can could team them up for better throughput. On the other hand I could also use two portable 1Gbit network switches (like the Netgear Prosafe 5 that is very light – around 300 grams) and show how to implement a reliable, failure-resistant network connection between both servers. As you can see there are plenty of options on how to expand this setup.

What do you think about this setup? Do you like it? Please feel free to leave a comment.

Thanks for your time,

-Klaus

 

It`s your turn

Your email address will not be published. Required fields are marked *

SQLpassion

Copyright © 2015 by SQLpassion · Klaus Aschenbrenner · Imprint · Offerings · Academy · Contact · Go to Top