Whether you work in IT or development, having a decent workstation is a must. Your workstation is your Swiss Army Knife with all your utilities, tools, working environment, and possibly production releases of your works.
But should you be doing all your research on that same workstation? With all your testing environments and differing versions of libraries and tools? It can take a long time to setup your environment how you like it, so you should protect it. Here is how you can ensure your lab computer stays on its toes —
It doesn’t matter if you work on Linux, Mac, or Windows (and especially Windows), installing different versions of the same software can have some very adverse effects.
Working as a support analyst in an enterprise environment of over 70,000 users, I see the havoc and chaos that unfolds when, somehow, a user has had the wrong version of Java installed on their computer and can no longer login to the enterprise platforms (Java’s slogan of ‘Write Once, Run Anywhere’ should really have a ‘For a Limited Time Only!’ disclaimer). Many people in IT might think “yeah, but I can fix that.” And, sure, you’re probably right, but why bother when you can make sure it doesn’t break, to begin with?
I recently took possession of an older gaming computer with a Core-i7 2700k (no VT-d due to the ‘k’ variant, unfortunately, such a disappointment in a CPU so capable) and 16GB of ram for a more than fair price after helping a friend build a new i7-8700 system. This was replacing my much older Core-2 Quad Q8200 system (running Arch Linux) as my file/media server, and it’s quite the replacement coming in with four times as much ram and probably around three times as much CPU performance at least. My immediate move was to get it up and running with virtualization in addition to the tasks I’d labored my Core-2 Quad system with given that it had the extra muster.
With this new system I decided to give OpenSUSE Leap a try for the server. Not that Arch has ever given me a hard time, but being familiar with Debian/Ubuntu and CentOS/Red Hat, I figured I’d give the other enterprise viable Linux distribution a go.
It turns out that setting up KVM virtualization in OpenSUSE using the Yast2 tool is incredibly easy, even from the command line. The only parts that really require any mucking around are setting up the management socket permissions, but that’s a breeze with the guides provided by SUSE.
Keep in mind that I did everything remotely, but if you were to do it locally, on a machine, it’d be much easier with something like Virtual Box (which is extremely underrated as a virtualization platform).
Using virtual machines lets you run more than just other operating systems. It allows you to encapsulate multiple environments on your machine for testing, continuous integration builds, or often in my case, simply learning and deploying new technologies.
The truth is, having a good lab computer with properly configured virtualization, whether it be a laptop, high-performance desktop, or even server-grade hardware, is an invaluable asset because it enables you to adapt your working environments quickly and reliably depending on your current needs without compromising any other pieces of software.
What kind of test-beds or lab environments do you have setup? Are they for school, professional development (commercial or open source?), or just tinkering? Let us know in the comments below.