Tuesday 4 August 2015

Why a Home Lab?

Why a Home Lab?

I've been lucky enough to have a home lab to play with for the last few years. It helps to get to know different aspects of technology and software to help me in my job. Rather than get into the exact hardware and options in my Lab I thought I'd take a stab at why it's been useful to me, so if you're considering one you might find some of my uses resonate?:

  • You're responsible for the hardware. Both in terms of selection and price. You can spend as much or little as you want. If it breaks, you're on the spot to fix it. This can give good experience in troubleshooting but sometimes leave you scratching your head and looking for help. There a certain satisfaction when you configure & get something working for the first time! Also seeking out useful upgrades and how to best put them to use.
  • You have exclusive use of the hardware. Unlike work labs which can be unrecognisable by the time you come back to it a few months after being "reconfigured" by well meaning colleagues, you spend as much time putting it back together as you do using it for what you intended in the first place. Yes, the employer pays the electricity and it can be left switched on but few employers see any value in it as an investment. You're probably going to be left with old unwanted hardware and ram or cpu limits you can't do anything about! There are some good scroungers out there that can always add value but it's an uphill struggle.
  • Exams. Probably the main reason I went with a home lab is to study for exams. It gives me a chance to break things, and mess about without worrying about annoyed colleagues or customers giving out! I get to play around in advance of a project with new software and make sure I avoid the pitfalls when I'm onsite.
  • Blogging. I've started blogging about my experiences using my Home Lab to build different technology solutions. It's at a very basic level but I've often used the posts myself down the road to refer to doing something I don't do often enough to become second nature. Some customers want LDAP & SSL, some don't etc.
  • Faster Upgrade Cycles. You can upgrade as soon as new software comes out, you're not limited to being tied into compatibility issues or breaking backups. You know the risks going in and revert if it fails or wait it out until a patch arrives. Be bleeding edge at home, not at work! Want to see what all the fuss is about, stick it in your home lab!
  • Looking at new versions of Products before I see them in future Projects. So at least I'm not installing something for the first time onsite....! I can test out particular use cases and find out what works, what breaks and what to avoid.
Disadvantages:
  • Expense. You probably can't afford 3 x €20,000 servers and a SAN plus a 3KVa power upgrade to your house unless you're deriving direct revenue from your home lab, are you hosting a cloud or something?!! While I would love to go 10Gb Ethernet as an example, the PCI cards are €300+, a switch €1 to 4,000 which is crazy. I would love a faster processor and more Ram but where does it end? You don't get tax back unless you're self employed. So, pick your features carefully - does the new hardware do something you can't do currently? Will this provide the ability to play with features you can't access currently and see them in operation? Would nested hypervisors work at all? What other options do you have? Boat loads of 1Gb?! Know your limits...you might not be able to replicate every technology in your Lab but if you're smart you'll manage on the job....
  • Scale out - the model where you scale out to multiple servers increases expense - you need shared storage and you've probably tripled the costs of your host hardware. If you want to upgrade, you need 3 of everything, think about that. Amazing if you have the money, but for me not the way to go. I prefer to Scale Up at home!
You can use Cloud to do a lot and it probably works out cheaper, you pay as you go. There are certainly months that go by and my lab doesn't get powered on which feels like a poor ROI. But....I'm only paying for electricity when I do power it on at that point. The thing I don't like with cloud is you pay for every vCPU, I'm not sure nested would work great or at all, when I own pCPU I can get major overcommit without paying extra. It's only where a particular appliance needs 8 vCPU and I've only 4 pCPU I run into trouble. Or if it needs more Ram than I can afford, another issue!

So, plan carefully, take your time, look for bargains on ebay. Do you want a second hand server at a bargain or build your own? Get a parts list off another blog and see what you would go with or change. Watch out for risks regarding power supply and other key compatibilities. You don't want to hook everything up like I did and power on to discover the motherboard needs a BIOS upgrade to recognize your CPU model! I had to buy a cheap CPU to perform the Bios flash!

My own Lab is based on a 4 core CPU and 32GB Ram. That's the max it can support. Right now I'm in the process of scaling up to remove these limits so I can drop in more Ram or CPU as needed. It's going to be the most expensive home lab investment I've made yet but I can start with a wide foundation and build up over the next year to something I can throw nearly anything at. Having to start a whole new system just to break one barrier (# cores, # ram) makes me think bigger. So consider what the physical limits are and when you're likely to hit them.

I think I'll leave it there. I'm amazed by the variety of home labs other people have blogged about and if it works, go for it. Get a balance between cost and functionality, pay attention to power and noise to keep the partner happy and see if you can access it remotely (smart plug to power it on, auto boot, auto VM startup, RAS solution - Bridged router, DDNS etc) so you can refer to it at work to look at something and not be limited to just using it when you're at home......and enjoy! You can always switch it off and walk away to catch up on some on demand TV! Life is outside the door so stick your head out once in a while to remind yourself what the sky looks like!