Monthly Archives: July 2017

Genesis of a 2017 home lab

Up until now, pretty much all of my lab stuff were running off of my laptop. I’ve been very happy with it, but these days, the products are more complex, more dependent on each others, and it becomes very hard to maintain a consistent environment available anytime, and scalable. Plus, the MacBook Pro I’m using is getting quite hot when under pressure, I do not feel comfortable anymore running a lot in VMware Fusion on a laptop, I guess I reached the limit of a backpack lab.

Part I. Identify components

I did quite some research about home lab equipments that wouldn’t break the bank, I was somewhat disappointed and realized I didn’t have reasonable expectations and I will have to make compromise.

In my ideal world, a home lab has a small footprint, has a load of RAM, and is absolutely silent. Well, that’s not going to happen, the most painful part for me was that today there is no reasonably priced fanless PC that can run an i5 and host at least 32G of RAM.

When I realized that was not happening, and lowered my expectations, it became a little bit easier and after doing some research, settled for the following configuration from Newegg :

  • Intel NUC BOXNUC7I5BNH ($376.99)
  • SAMSUNG 960 EVO M.2 250GB NVMe ($127.99)
  • 2 x Kingston Module DDR4 2133mhz 16 Gb ($353.98)

For a total of $858.96. It’s more than what I wanted to pay, but I’m cheap, I realized eventually you have to break the bank to get some serious gears. Of course, you could always find cheaper stuff second hand, or if the small form factor isn’t really a requirement. But for example, going for 1U rackable servers, you need to think about power consumption and on the long run it mights not be worth it.

Intel NUC

I considered multiple options, and there is actually a pretty good article on the subject over here. The Supermicro seems really appealing, mostly because of the embedded management card and high RAM configuration supported, but really, it’s hard to beat the cheap $377 of the NUC. Go for a E200-8D or E300-8D if you think it’s worth spending the bucks, but be careful that they might make much more noise because of the 3 tiny fans they use to cool it down.

On the NUC side, the Skull Canyon NUC6i7KYK, gives you another M.2 slot and some decent graphics performance if you need it.

Shuttle seems to have interesting options as well, for a few more bucks, you can get a DH110 that provides 2x1GBE ports and you can pick the CPU you want.

SAMSUNG 960 EVO M.2 250GB NVMe

Samsung has a solid reputation in flash media, I wanted NVMe very fast memory, considering the relatively cheap price I think it’s totally worth it. The NUC also has a regular SATA III expansion bay if I need to add more capacity with a spinning drive or a regular SSD drive.

I settled for 256G to start. The idea is if I reach the storage capacity before I reach the RAM capacity then I’ll upgrade or I’ll put another SATA III SSD in the NUC. My goal for this lab is to rely on containers as much as I can so the storage footprint will be less than actual VMs.

But if your intent is to host regular VMs, you might want to go for the 512G option.

Also, consider there is a sweet spot to find between one powerful lab server, and multiple ones. Workloads are very mobile today and ideally you probably want to run multiple physical servers to get some resiliency and flexibility. For budget reason, I didn’t do it, but I would have preferred 2xNUC with 16G RAM and 256G storage instead of one big 32G.

2 x Kingston Module DDR4 2133mhz 16 Gb

RAM, RAM and RAM… What else is all that about anyway? Since the flash memory era, thank god we can put that behind us, the storage is no longer the contention point in home lab equipments. In my opinion CPU doesn’t matter much either, of course it all depends on the kind of application you will host, but RAM is what we need.

Out of the bat I will be running the hypervisor itself, a few containers, Data ONTAP simulators, even 32G can go fast, I think 16 might have been limited. From what I saw, you can start with one 16G module and buy another one later, but it probably depends on the compute platform/motherboard/cpu.

With 32G you should be able to run a decent environment without having to shut down VMs all the time.

SanDisk 32GB Ultra Fit Flash Drive

Not the most critical component, but I decided to go with a thumb drive installation of ESXi for this lab. That way I can dedicate the NVMe for datastore and avoid multiple partitions, for $12 it’s likely worth it. Chances are I won’t need these USB ports for anything else anyway.

Conclusion

Stay tuned! I’m waiting for the components and I will document my progress with the installation and setup!