One of the most frustrating things about using Red Hat Enterprise Linux or CentOS in an enterprise environment, in my opinion, is maintaining updates on hosts that are supposed to be identical and are in different environments, like dev, test, and production. In the past, I’d roll out patches to my dev server, run yum update (or up2date) on my test servers, and then do the same in production. By the time I got through with production, dev and test would be off a bit and production would generally have at least a dozen rpm’s that were newer than their dev and test counterparts. This is attributed to the frequency with which bug fixes, security, and other errata are released for these distributions. In an enterprise environment with auditing requirements in place, this can cause a real pain in the neck.
This is the first reason I started testing out Spacewalk. Spacewalk is the upstream project for Red Hat Network Satellite, which allows you, for all intents and purposes, to have an RHN install right in your own datacenter. The benefit that added to me originally was simply being able to choose a cut off date for syncing patches, apply those patches to my systems, then resume syncing again. This ensures all of my systems have the same package version. If you’re familiar with Red Hat Network at all, you’ll know that there is a lot of gravy too. It lets you work with groups of servers, create custom channels, provision servers, execute remote commands, manage configuration files on clients, provision new hosts, and monitor clients as well. There is a web-based API that leverages XML RPC that you can script against.
It took a lot of work up front to get set up, but it’s getting to the point where managing the systems is a breeze. In my opinion, Spacewalk is still a little buggy, but as of version 1.3 which is current at the time of this writing, stability and functionality has increased dramatically since I started working with version 0.6. If you’re looking for a way to manage your Linux systems (including Red Hat Enterprise, CentOS, Scientific, or Debian), I highly suggest taking a look at Spacewalk.