[et-mgmt-tools] Re: Cobbler, findks.cgi, registration, and so forth

Michael DeHaan mdehaan at redhat.com
Fri Apr 18 16:27:49 UTC 2008


Michael DeHaan wrote:
>
> Hi folks,
>
> So earlier I wrote about some ideas around automatically registering 
> systems when Cobbler sees them, and I wrote up some example scripts 
> for usage by the FreeLinuxPC guys.   To me, this seems pretty 
> compelling as you wouldn't have to manually build up a list of every 
> MAC address in your data center and so on.
> It turns out some of the mac data I was relying on isn't present, so 
> this didn't work as well as I thought it did -- but -- good news -- I 
> can fix it.
>
> So since I need to fix this, and wanted to bounce some ideas off 
> everyone and find out if this would be useful or not.  It seems useful 
> to me anyway, at least as a configuration option.
>
> The idea -- all kickstart requests through cobbler will now go through 
> a cgi (or more likely, a new mod python piece for performance reasons) 
> that will serve up the kickstart file for all cobbler-hosted kickstart 
> files.    Then, we have the configuration ability to automatically add 
> new system objects (correctly configured to the proper profile) when 
> they get installed.   Since we are also doing this via a web script, 
> we can also decide to re-evaluate the templates at runtime, 
> effectively eliminating the need for "cobbler sync" for anything but 
> regenerating DNS/DHCP.
>
> For an example of the registration case -- if you tftpboot 500 new 
> systems ("straight off the truck"), and you use the PXE menu to assign 
> some to "webservers" and some to "dbservers", this reorganization of 
> how we do things would allow us to auto-create system records, 
> correctly assigned to the profile they were assigned to, with the MAC 
> data already filled in.
>
> For security reasons, this would only add new system records if the 
> objects were not already there.   Due to various catch-22's, if you 
> add a new system this way, and then reinstall it using the PXE menus, 
> we can't have it update the profile associations in cobbler.  However 
> -- you wouldn't need to do this, because you could do something as 
> simple as:
>
> cobbler system edit --name=foo --newprofile=bar --netboot-enabled=1
> (and cycle power)
>
> in order to do reinstalls.
>
> This seems to be a nice solution for logging the profiles and mac info 
> at first install time and saves some data entry.  (and yes, we'll have 
> a setting to turn this off).
>
> Thoughts on this and on install time template evaluation?
>
> --Michael
>

Minor clarification -- if anyone is familiar with findks.cgi, this is 
somewhat different.  This would be more like 
"http://$server/cobbler/getks?profile=foo", though Anaconda takes care 
of feeding the mac (and the IP) info to the script/program.    We would 
want to log the mac, but I'm unsure if we want to store the IP... as 
that would instantly turn a regular DHCP ip into a DHCP reservation if 
using the mangage_dhcp feature.   I kind of like that idea though, but 
wanted to bounce that off people who were using Cobbler to manage DHCP 
-- as that may not fit workflows.

In terms of settings, it looks like we're going to have

auto_register_new_systems y/n
(and possibly) auto_register_ip_info y/n

(We could possibly also expand koan to use more of this data to help 
prevent virtual MAC collisions when installing with --profile records 
and not --system records, provided we make a remote XMLRPC call to 
retrieve a free MAC address)







More information about the et-mgmt-tools mailing list