09 July 2018

Day 0.1: Party Supplies

This is going to not be as detailed as future entries hopefully will be, because I actually did some of the work already... but I'm currently at a standstill because my local W2016 VM has been chugging away at a Windows Update for the last half hour, and I burned through all my CPU credits on my AWS EC2 instance, so, I figured I'd try and explain what I used to get started.

What You'll Need

Thanks to the magic of virtualization, you no longer need to fork over hundreds-to-thousands of dollars to have access to a physical lab to play around in. You have a handful of options available to you instead (this isn't an exhaustive list, it's just the ones I know of):

Local Simulation

There are a handful of options that allow you to set up and run virtual machines on your local machine. The significant drawback to this is that running VMs can be very resource-intensive; there is only so much you can do before your host machine slows to a crawl. Another is that if you want to play around with Windows Server... you're going to need a license for Windows Server, which is not cheap. (I'm fortunate enough that my grad program gives me free access to year-long licenses for certain software programs, so that what I'm using for my local W2016 setup.)

VMWare

Probably the best-known virtualization software for virtual systems is VMware. VMware comes in both free and paid editions. The free edition allows you to set up a virtual machine fast and quickly; the downside is that you're very limited in what you can do as far as building multiple VMs and connecting them together. The professional edition (pictured below) is much more capable and lets you build virtual networks of VMs, and things like that... but again, it costs money.

GNS3

GNS3 is a free program that lets you build networks of virtual network devices and link them together. There's no paid version, and it's extremely flexible. The downside is that it can be somewhat complicated to set up - and even more significantly, the virtual devices require a ROM image of the (typically Cisco) device you're trying to emulate, and most people don't have legal access to those. So I'm not gonna touch on that one very much.

Cloud-based Simulation with AWS

This is where, in my opinion, you have the most flexibility to explore, at the lowest cost. Amazon's AWS cloud platform offers you a stunning amount of virtualization capability, for extremely cheap. There's so many offerings that I don't even know about most of them; but luckily, for building sysadmin sandboxes, you mainly only care about Elastic Compute Cloud (EC2) and Virtual Private Cloud (VPC.) I'll try and sum up how it works really simply.

When you build an EC2 "machine," you specify a bunch of configuration parameters called an "instance," and create a virtual hard drive for it, both of which get stored in the cloud. When you start that instance, Amazon grabs your configuration and launches a virtual machine from its massive bank of computing power that matches those specifications. (Unless you ask, and pay extra for it, your instance will probably never run on the same physical hardware twice.) It attaches your virtual hard drive to it, attaches "your" IP address to it (more on that later) and you're good to go. The entire process is completely transparent to you - as far as you can tell, any time you connect to that IP address, you're always operating the same system. And it's really, really cheap - they actually offer a "free" tier of service for the first year of having an account, where if you use the service very little, you may actually end up not having to pay anything at all. If you don't (and you probably won't, if you want to do anything more advance) it's still ridiculously cheap. As of this writing, my cost for a single Windows 2016 EC2 instance operating in the "micro" tier (1 CPU, 1 GB of memory) is:
  • Runtime: $0.0162 per hour that the instance is running. (You can turn it off when you're not using it!)
  • Virtual hard drive: $3 per month (30 GB x $.1 per GB per month.)
  • Public IP address: $.01 per hour that the instance is not running. (IP addresses are reserved for you - Amazon doesn't mind letting you have it for free as long as you're using it, but if you're not, then they're going to charge you. Unlike EC2 computing power, they can't just assign it to someone else - nobody else can use it as long as it's assigned to your account.)

VPC is similar. A VPC is basically a private network that you can divide and configure as you please. (This is great for understanding the fundamentals of routing concepts - but as far as Cisco certifications go, since all the configuration is done through the AWS console, you won't learn the Cisco command-line skills you'll need in order to pass Cisco exams.)

What's next

Since AWS is the most flexible and scalable, I'm going to do the majority of my work in there. I do have a local Windows 2016 VM that I also run (along with some desktop VMs) that I plan to link up with the AWS instances, just because, but that's more complicated than most people will want to do.

It's 9PM and I may not get to the rest tonight, but next entry will cover what I've done so far.

No comments:

Post a Comment

I fought FreeRADIUS and FreeRADIUS won

Back to work So...  last I had written, several months ago,  I had managed to add my CentOS server to my domain and was going to work on ...