Categories
Home Lab

Building a Home Lab

A home lab is an at-home computing environment typically setup for learning but can also be setup for many other purposes; anything from learning new technologies, testing a certain configuration before deployment, or even setting up a minecraft game server. In my last article, I wrote about my home lab, which I have been using to aid me aid me in my self-study. Today, I’d like to talk about building a lab from scratch, and the options available. It’s easier and more accessible than to you might think – so let’s get started.

A quick disclaimer: this article is a high level analysis, an overview of different approaches available and the advantages of each so you can begin researching and building toward your particular needs. This is largely because everyone’s lab is at least a bit different, depending on their needs and available resources.
I will include useful links and references at the end of this article, but this is not a nitty-gritty step by step guide on building a lab from scratch.

Fit for Purpose

Before we begin building a lab, we need to have a clear purpose in mind so we know what to build toward. For example, I’m using my lab to study for a Microsoft Tech Associate exam, so I’ve built a virtual lab with a few Windows Server and Windows 10 VMs for configuration practise.
 Later this year, I’m planning to study for a Cisco CCNA exam with a friend, and our lab will comprise of physical Cisco switches and routers so we can practise configuring these devices.
At my last role, I assisted in creating an image for our unique Point of Sale hardware, so our lab was made up of these Point of Sale machines and their bespoke hardware to test our changes.

Your lab should be built to meet your objective, and there are three broad approaches to lab building. Virtual labs are flexible, cost effective and a basic lab can be likely be started on a PC you already own. Physical labs are the best option when working with certain hardware. Cloud labs are a great way to setup a hosted service very quickly, or where accessibility is of concern.
Ultimately, you should build to reach your lab objectives and this may involve building with a mix of all these approaches.
Regardless, let’s start with Virtual Labs.

Virtual Labs

Virtualbox and VMware
  • Computing is virtualised where possible.
    • Most commonly, workstations and servers are hosted as VMs on a hypervisor.
  • Hypervisors are more accessible than ever
    • Virtualbox and Proxmox are free and open source
    • Hyper-V is included with Windows 10 Pro
    • Vmware offers free ESXi licenses with some restrictions (still great for labbing)
  • Significantly reduced cost compared to physical labs, in hardware expense, power usage and time spent deploying machines.
  • Hypervisors provide additional functionality that are (nearly) impossible in physical environments, such as:
    • Pausing and resuming VM operation
    • VM Live snapshots
    • Cloning VM disk drives and states
      • Virtual Machine ‘appliances’ – a frozen instance of a configured VM which you can just download and boot up on your hypervisor
    • Virtual networking options, depending on the hypervisor you are running
  • Virtual environments are easier to scale, provided your host hardware is capable
  • Virtual labs are not suitable for every situation however:
    • Hypervisors are only as good as the hardware they are running on.
    • Some hardware cannot be virtualised or emulated accurately.

As you can see, there’s quite a lot to say about virtualisation. A virtual lab offers a lot by way of cost efficiency, scalability and utility. By and large, this should be your go-to option for lab building, departing  only if your lab objectives require it.

For an in-depth explanation of a hypervisor, check out this article.

Physical Lab

Photo by Valentine Tanasovich from Pexels
  • Computing is done on physical hardware, as opposed to virtualisation.
    • Eg, in a lab of 5 workstations and a server, you would have 6 physical PCs.
  • This is the best option with when working with special hardware, such as a tablet, printer or router.
    • While it may be possible to emulate these devices, it’s ideal to use the real hardware in case emulation isn’t accurate.
    • This is the only option for specialised hardware which cannot be emulated reliably.
  • However, physical environments are not ideal for a few reasons:
    • Significantly more costly than a virtual environment.
    • Often more time consuming to set up.
    • They miss out on virtualisation perks, such as snapshots and easy backups.
    • All electronics will fail eventually, so a greater degree of care must be taken with physical equipment.

A wholly physical lab should be thought of as a concept or niche option at most. Depending on your objectives, most labs will be at least partially physical if needing to work with certain hardware; for example, anyone who’s objective is to learn to configure networking equipment will likely include networking hardware in their lab, which qualifies as partly physical.

Cloud Lab

  • Computing is done virtually by a cloud computing provider
    • Lots of providers, with robust and competitive offerings
    • Free trials out there offer more than you might think
  • Excellent option for anyone interested in learning more about cloud computing, or who is studying for an Azure or AWS cert
  • Also a good short-term option for those without the computing power for a virtual lab
  • Easy and fast to spin up an image and get started
  • Best approach for accessibility. A cloud lab is ideal if you need to remotely access your lab, or host online services. It’s much better to do this on the cloud than to open your home network.
  • Despite their benefits, cloud environments will always be more costly than a virtual environment in the long run.
  • Cloud labs aren’t suitable for those without reliable, strong internet access

All in all, hosting or partially hosting your lab in the cloud is a utility option that can provide a great level of accessibility. It also cannot be overstated how useful they are if you are studying for an actual cloud certification, as Amazon, Google and Microsoft all offer reasonable free offerings for the purpose of study. This will provide a lot of value if it’s a requirement of your lab objectives.

In Closing

Broadly speaking, these three approaches should cover most use cases for a home lab. To re-iterate, it’s very important to first iron out exactly what you need to achieve to have lab objectives to build toward. From there, I suggest building a primarily virtual environment, with physical equipment and cloud instances as necessary to meet your objectives. Above all, don’t be afraid to take chances and break things – after all, that’s what a lab is for.

Thanks for reading! I’ve included some useful articles I’ve come across during my research below. I hope your own lab endeavours are successful.

Cloud Lab
Blog article comparing free Cloud solutions
Information about AWS free tier – Amazon offers the most flexible free offering from what I’ve seen. Great for getting your feet wet.

Virtual Lab
Getting started with VMWare’s ESXi – it’s a tad dated but this is a very digestible and in-depth explanation to starting with ESXi
Virtualbox Manual – For a first timer lab, I’d definitely recommend Virtualbox.

General Articles
7 Homelab Ideas by Benjamin Bryan – A very well written article. Ben discusses homelab development in much more certain terms than I do, and discusses details of setting up a lab to learn particular technologies. I highly recommend this article.
Home Lab Beginner’s Guide by Hayden James – This fella’s article goes into a lot of useful detail about the actual logistics and hardware of getting a lab rolling. A very good read.
Home Lab subreddit – Lots of good discussion and handy guides here! And you can check out what everyone else is running here too. This is a great place to ask questions.

Update 18-09-20: Revised Cloud Lab section to reflect cloud certs

Categories
Home Lab

Lockdown Learning with a Home Lab

A home lab is an invaluable learning tool for any IT professional looking to branch out on their skills. There are countless technologies and services in IT today, and my home lab has been an invaluable asset during my COVID imposed self-study, allowing me to get hands-on experience with the tech I’ve been learning.

For such a useful resource, getting started with a lab is simple. So today I’d like to tell you about my lab, how I got started and what I use it for – and hopefully, get you thinking about starting a lab of your own.

What is a home lab? Why are they useful?

As the name suggests, a home lab is a private (typically at-home) computing environment built for the sake of experimentation, learning, or just having fun. You can set up a lab to mimic a production environment, to learn new software, to run a home project or do whatever you can imagine with the resources at your disposal. Your lab might be elaborate, with enterprise hardware and software, or it could be as simple as an old laptop you’re not using – the barrier for entry is low and the possibilities go as far as your creativity and resources.

A Tour Of My Lab

I put my own lab together to learn about technologies I want to improve with: namely, Windows Server and Red Hat, and Ubiquiti networking hardware – so I built it to suit this purpose. I’ve achieved my lab goals with two main pieces of hardware: a strong desktop PC and a Ubiquiti Edgemax Router.


At my previous role, we used Ubiquiti’s cloud management platform to great success to remotely manage networking hardware at client sites. I’ve since taken an interest in their product and took it upon myself to pick up a Ubiquiti EdgeRouter X to play with. It’s a powerful unit which supports many advanced networking functions, and for a modest price point too. It’s also very small and makes no noise, which makes it perfect for a bedroom lab like mine.

Next is my PC. The most efficient way to install and experiment with operating systems like Windows and Red Hat is via virtual machines, so my PC is built for that purpose with an 6th generation i5 processor, 16 gigabytes of RAM, a 500gb SSD, two NICs and VMWare Esxi 6.7 installed. Esxi is a popular type 1 hypervisor which I’ve always been interested in, and this was a great reason to try it out. Here’s a quick overview of my hardware:

  • I focused on RAM to run more VMs simultaneously, upgrading my RAM when parts were available.
  • Upgrading to an SSD improved performance remarkably, and I recommend this for anyone else who has an aging processor like mine.
  • I’ve installed an extra NIC in this machine for a total of two – one port is connected to my home network, for management and internet access. The other is dedicated to connecting to my Ubiquiti EdgeRouter – this allows me to configure and experiment with the router, and also allows my virtual machines to network to any other hardware that I might choose to connect to that router in the future.

It’s important to go over licensing. The good news is that there are plenty of evaluation/trial options that are more than suitable for a home lab environment, provided you are not using them in a production environment. I’ll go over the software I’m using and the licensing options quickly:

This was all slowly put together, taken apart/upgraded over the course of a few months. There were plenty of bumps and hiccups along the way, but breaking and fixing is the best way to learn. Today, it’s happily chugging along, running a handful of VMs to aid me in my Microsoft cert studies.

Categories
Lessons from the Service Desk

Communicate Clearly

Photo by Joshua Ness on Unsplash

This article is from my ‘Lessons from the Service Desk’ series, where I discuss the principles of soft-skills in a service desk environment. Check out the whole series by clicking here.

In my previous article, I discussed the importance of taking a positive, problem solving attitude toward service desk work, but it goes without saying that strong communication skills are crucial to the success of any business operation, and especially so of a service desk. Agents with good communication skills tend to not only better understand clients, but most importantly, make them feel understood, which lends itself to shorter calls and better levels of customer satisfaction.

Categories
Lessons from the Service Desk

Encourage an Empathetic and Problem Solving Attitude

This article is from my ‘Lessons from the Service Desk’ series, where I discuss the principles of soft-skills in a service desk environment. Check out the whole series by clicking here.

Arguably the most important soft skill in your service desk is in your agent’s attitude toward problem solving. A positive, problem-solving approach to tickets will greatly improve your quality of service, keep your team on-track to meet KPIs and will bring out the best in your agents.

Categories
Lessons from the Service Desk

Soft Skills in IT – Lessons from the Service Desk

Photo by Arlington Research on Unsplash

Soft skills, specifically interpersonal skills, are indispensable to a good service desk.  Having a technically skilled service desk team is important, but an understanding of how to communicate problems and solutions in a manner that is understandable and relevant to the customer will bring the most of out of those technical skills – agents with good interpersonal skills will generally spend less time on the phone, perform better toward their KPIs, have higher NPS/CSAT ratings, close more tickets and faster and develop a good rapport with your customer base.


It can be especially challenging to manage a team lacking these skills.  By definition, soft-skills are ‘soft’; that is to say that they are more of an innate situational understanding rather than an out and out, trainable ‘hard’ skill. You can teach someone to use a certain piece of software with the right documentation, for example. Teaching active listening, empathy and why you should take the high road in customer-conflict scenarios is not so straight forward.

With that said, there are certain guidelines you can follow which will shift your perspective when taking calls. This will then hopefully encourage an improved understanding.

Last year, I assisted management in coaching our service desk team on these very skills. In this series of articles, I’ve taken an internal training document I’ve written, distilled the most relevant elements and expanded where appropriate.

You can access these articles from the following link: https://patrickh.com.au/category/lessons/

Or, go to my articles directly: