Setting up our lab

The first thing for us to do is to set up our environment. For the purposes of this book, it really doesn't matter what kind of hardware you use, if you even use physical hardware at all (virtual machines are also fine). If you have physical server hardware available to you, then by all means use it. Practicing on physical hardware is always preferred if you can, though not everyone has the money (or even the available space) to set up a complete lab. Nowadays, processing power and memory is cheaper than it's ever been, and the typical home PC is capable of running several virtual machines. Even better, software such as VirtualBox is free, so even if you have no budget at all, there are definitely options available to you. Perhaps you already have a server or two in your rack at work just waiting to be deployed, in which case, this will be even more exciting and fun. In the case of VirtualBox, it can be downloaded from here: https://www.virtualbox.org.

While I always prefer physical hardware, virtual machines have one major advantage. Not only are they easy to create and destroy at will, they are perfect for testing new or proposed solutions because you can easily take a snapshot of a VM and restore it if an experiment blows up in your face. In my case, it's common for me to create a virtual machine of a Linux distribution, fully update it, and then take a snapshot before making any changes. That way, I always have a base version of the OS to fall back on if I muck it up. Testing software roll-outs on virtual machines before graduating a solution to production is a good habit to get into anyway.

This book makes no assumptions regarding your environment, because the hardware one has access to differs from person to person. While the installation procedure for Ubuntu Server differs based on hardware (for example, perhaps your server doesn't have a physical optical drive, forcing you to use USB media instead of a CD), all other concepts contained throughout will be the same regardless.

With that said, once we run through the install procedure, feel free to install Ubuntu Server on as many devices or VMs as you can. If I can make any recommendation, it would be to utilize both physical and virtual servers if you can. Not because this book requires you to, but because it's a good habit to get into. If all else fails, cloud Virtual Private Server (VPS) providers such as Linode and Digital Ocean have Ubuntu Server available as an option for a small monthly fee. See the following URLs for more information on those providers:

These cloud providers are great if you wish to get a server up and running quickly or if your goal is to set up a server to be available in the cloud. With that said, all you need to do is have Ubuntu Server installed on something (basically anything at all) and you're ready to follow along.