Jump to Navigation

Chef Marcel at your service!Food, Wine, and Linux may seem like a strange combination, but combining three passions can be a wonderful thing. I'm Marcel Gagné. Those of you who read Cooking with Linux, the multi-award-winning column that appeared monthly in Linux Journal magazine for 10 years, likely agree. With the help of my faithful waiter, François, Restaurant Chez Marcel serves up the finest in Linux and open source software paired with exceptional wines.

In that same spirit, this site features great Linux and Open Source software, ongoing wine tasting reports, recipes, and the occasional restaurant review. If you came here looking to read past Cooking with Linux columns, you'll find newer releases on the front page, a comprehensive list here and under the "CWL, The Column" menu link to the left. A votre santé! Bon appétit!

cloud computing

Cloud Computing Course, Part 3: Introducing the Virtual Machine Manager

In your own private cloud, there are a number of ways to work with virtual machines. Amazon's cloud uses Xen for its virtualization infrastructure, but in your own cloud, you are free to use Xen or KVM or Virtualbox, or whatever else you want. Lacking an EC2 console, administering and working with VMs in your cloud will require you to choose your own admin tools. There's always the command line, of course; you can launch a KVM or Xen machine without a GUI, but there's also a nice graphical program called virt-manager that I'm rather fond of; literally the 'Virtual Machine Manager' (see Figure 1). Using this tool, you get a bird's eye view of running virtual machines, including live performance graphs for network, CPU, and disk usage. The Virtual Machine Manager also makes it easy to communicate with other hosts running virtual machines; that would be your private cloud. It gets better; virt-manager works with both KVM and Xen, two common virtualization frameworks.

Figure 1 : Once connected Virt-Manager shows you all configured machines whether they are running or not.

The virt-manager application displays information about each machine, its run state, number of processors (VCPUs), memory usage, and CPU usage. It also lets you adjust the resources for a given virtual machine, adding processors,  memory, or even extra storage. There are tools for cloning VMs, creating new VMs, and communicating with VMs using a full graphical console; point and click. The latter is done using a built-in VNC client.

Most distributions have virt-manager in their repositories, but they sometimes tend to run well behind the version available directly from the Website itself (long term support distributions are particularly problematic that way). I don't find myself suggesting this often in 2011, but I highly recommend that you get the source and compile the latest version yourself. It's all Python code so perhaps compile isn't quite the right word but while you're there, make sure you also download the latest 'virtinst' code and prep that as well; virt-manager relies on it.

When you run virt-manager for the first time (see Figure 2, from a different machine), you'll find yourself looking at a rather sparse window, especially if you have no VMs currently running on the host system.

Figure 2 : The virt-manager application at start. No connection and no virtual machines.

When Virt-Manager starts, it will look to the host system, the 'real' hardware on which the virtual machines are running. Depending on the setup, the machine may be disconnected, at which point you will right click on the 'localhost' machine, and select Connect. Once this is done, you should then see all the virtual machines running on the system as shown in Figure 1).

Cloud Computing Course, Part 2: Amazon's EC2

What if you could get a Linux server running in 5 minutes or less and have it cost you a couple of cents per hour? You can, and I'll tell you how.

Probably the easiest way to launch a virtual machine in the cloud is by getting yourself an account with Amazon Web Services. Essentially, that means you need a credit card so you can be billed for the time and resources you use. The price per hour for a small instance (the default machine) is 8.5 cents per hour. If you run your test machine for a hundred hours, it will cost you $8.50 -- larger deployments cost more, obvioulsy. Take that over the course of a month and you're paying as much for a small system as you would renting physical hardware from a hosting provider. One important difference here is speed. Where you may have to wait a day or two for a machine from your hosting provider, creating an EC2 virtual machine is blindingly fast in comparison. Deploying a new machine here takes only a few minutes on average.

Amazon also has a "micro" instance which you can get for only 2 cents per hour. Tiny mean you only have 8 GB of disk (EBS, or Elastic Block Storage) and 613 MB of memory. Performance is low, but hey, it's only 2 cents an hour. Great for testing.

Everything takes place from the Amazon EC2 management console (see Figure 1).  The dashboard view shows you current instances (what Amazon calls your virtual machines), what type they are, their status, IP address and so on. The dashboard also lets you sort on a variety of criteria including the region in which your machine is deployed (you can have machines in Virginia, California, Ireland, or Singapore). It also provides access to your volumes (storage devices), snapshots, security profiles, SSH key pairs, and pretty much anything having to do with running a virtual machine in Amazon's cloud.

Cloud Computing Class : Lesson 1

Flying Penguins by Lemonade_Jo at http://www.openclipart.org/detail/125731Welcome to Marcel's Cloud Computing Class, Lesson 1. Over the course of the next few posts, I'm going to teach you a thing or two about cloud computing [ insert appropriate smiley here ]. Seriously, I plan on giving you the basics, introducing you to various tools, frameworks, and technologies with the intention of turning you into a cloud computing guru. Or at the very least, someone who can manage their own cloud. I will, throughout this series of posts, start with the assumption that you do know something about computers, networks, and of course, Linux. So let's get started with the introduction.

Cloud computing brings with it the promise of manageable, quickly deployed, virtual machines in large networks. The idea is to take advantage of your existing hardware infrastructure (or someone else's) to deploy additional systems without deploying additional hardware. All it all, it seems like a gift from tech heaven. Of course, cloud computing carries a lot of hype along with the promise, including plenty of people sparring on whether cloud computing is inherently safe, unsafe, reliable, unreliable, oversold, or just plain evil. Hearing business people talk about cloud computing,  however, makes you realize that whatever your perception of the reality concerning what is at the core, a  technological issue based on virtualization, cloud computing is here to stay. Your job, as a systems administrator, is to find ways to deliver and work with the technology.

Subscribe to RSS - cloud computing


Main menu 2

by Dr. Radut.