A while back I wrote about Cobbler, a provisioning tool I've written to
help with setting up provisioning infrastructure (PXE, Xen, running
systems, etc). Cobbler is designed to eliminate the need to understand
things like PXE, and just allow the admin to concentrate on what they
want to provision.
Cobbler is an upgrade over system-config-netboot because it checks for
prerequisites, handles things other than PXE, and has some support for
kickstart templating and dhcpd.conf management.
Also, rather than just managing the files in /tftpboot, it works in
terms of profiles -- allowing manipulation of kernel parameters,
kickstarts, and so forth, from human readable config files that maintain
a hierarchical relationship between distributions, profiles, and
systems. Properties are inherited down the chain, making changes to a
wide array of systems as easy as changing the profile.
Relatively new site here: http://cobbler.et.redhat.com
Lately I've added support to easily create a full provisioning
infrastructure from an rsync mirror, complete with kickstart files set
to point to the correct locations in the tree. That seemed to be a
good point to bring up Cobbler again with kickstart-list as I figured
many folks would have ideas on how these ideas could be expanded. (One
particular idea is including the SSH key in the definition of the
system, to preserve the SSH key across reprovisioning).
Example of importing a rsync mirror to build a provisioning environment:
(Note: this feature is only available in the upstream code in the
public mercurial repository, and is not yet out in FC via "yum install
cobbler").
cobbler import --mirror=rsync://distro.ibiblio.org/fedora-linux-core/
--mirror-name=fedora_core
That command creates profiles for full kickstarting of FC-1 through FC-5
and so forth. Multiple repositories can be imported, so other
distributions can exist in the cobbler configuration alongside Fedora
(like RHEL). Shell scripts are created to keep each of the local
mirrors up to date in terms of managing the kickstart tree.
Assigning a specific machine to boot a specific profile looks like:
cobbler system add --name=<mac> --profile=<profile_name>
Cobbler can also optionally generate dhcpd.conf files now as well -- so
cobbler metadata can be used to track MAC-to-IP relationships. So, with
a couple of commands, it's relatively easy to build a full provisioning
infrastructure from scratch for multiple distributions.
Anyhow, I thought I'd share the new URL and if anyone would like to give
any feedback, or would otherwise like to pound on it and or submit any
ideas/bugs/thoughts, I'd be glad to hear them. These features are
relatively new, so there will likely be a few bugs here and there, but
getting users to try things out helps a lot.
Feedback to: et-mgmt-tools@xxxxxxxxxxx
Thanks,
Michael DeHaan