[Spacewalk-list] Re: Spacewalk/Cobbler templating features pending in Cobbler 1.3 == config management
Michael DeHaan
mdehaan at redhat.com
Mon Oct 6 20:41:04 UTC 2008
Michael DeHaan wrote:
> Hi folks,
>
> I know Cobbler/Spacewalk integration is ongoing so I wanted to bring
> up a new Cobbler feature that may help with configuration management
> as well as provisioning. This is a new feature that has just been
> suggested a few weeks ago but I think it's interesting -- primarily
> because it's incredibly simple to do.
>
> Basically James Cammarata's pending patches to cobbler (posted to the
> cobbler mailing list) allow us to use Cobbler's templating mechanism
> to template arbitrary files (not just kickstarts and yum configs)
> using Cheetah. This would be usable as a future templating
> mechanism for configuration files within Satellite, potentially
> replacing Satellite config management without bringing in the problems
> of managing a more complicated configuration management infrastructure.
>
> At the command line level, it looks like this:
>
> cobbler system edit --name=foo
> --template-files="/srv/source.template=/etc/foo/bar
> /srv/source2.template=/etc/baz/glurp"
>
> Basically this allows a hash of "source=destination" keypairs to be
> applied anywhere throughout the cobbler "distro, profile, system"
> object chain. These templates can then be inherited between
> distributions, profiles, and systems. Any cobbler variables applied
> to "--ksmeta" can then be evaluated through the template, and the
> template can also contain any Cheetah directives of Cobbler snippets
> (see cheetahtemplate.org/learn).
>
> In kickstart %post, a kickstart snippet translates these to a series
> of simple wget's to suck down the files and install them on the
> systems in the right locations. This is all automatically built out
> for the user so the provisioning stage automatically deploys the
> template files:
>
> A logical extension of this is a call in koan to keep templates up to
> date:
>
> koan --server=cobbler.example.org --system=foo.example.org --update-files
>
> This would pull down the files given in "--template-files" and
> retemplate them dynamically.
>
> Essentially you get an ultra-lightweight configuration management
> system for free for users who do not want to assume the complexity of
> maintaining a Puppet and/or cfengine infrastructure, which can at
> times feel very much like a development exercise. (We also know of a
> couple of major puppet problems presently -- (A) rpmdb corruption, and
> (B) packaging each package install in a single yum transaction leading
> to a long install time overhead.
>
> As I know we wanted to streamline Satellite's configuration
> management, this may be an interesting proposal as it uses the same
> tools as the install system and can manage both in parallel If
> someone wanted to use a heavier CMS on top of things, they still
> could, though this would provide an option similar to what they have
> now, with the additional ability to use the full power of Cheetah
> inside their templates.
> Cobbler profiles then become the same concept for managing an existing
> system as they do a "to-be-installed" system.
>
> Anyway, we still have to implement a bit before the above is feasible,
> but I wanted to throw the idea out there so we could be thinking of
> it. It seems to be a very powerful idea and also something that
> would be trivial to fit into a GUI. I am a bit worried that while
> puppet/cfengine/bcfg2 are awesomely powerful, putting them into a GUI
> app for integration reasons does not really offer any advantages over
> using them stock. With the above, we could have a lightweight CM
> system in the core Spacewalk app and still allow usage of those said
> tools out of band as needed. Should folks /do/ want to integrate with
> Puppet or another CMS, they have tools like this
> https://fedorahosted.org/cobbler/wiki/UsingCobblerWithConfigManagementSystem
> that we could do to help them with this, but some "vi" is still required.
>
> --Michael
>
>
>
>
>
>
Also described here:
https://fedorahosted.org/cobbler/wiki/BuiltinConfigManagement
More information about the Spacewalk-list
mailing list