Michael DeHaan wrote:
> Occasionally the question comes up on what puppet/cfengine/other 
> integration looks like for Cobbler.   So far that answer (for Puppet, 
> anyway) has been to use external_nodes, as below, but I think we can do 
> better than this.  Here's the Wiki page on that:
>
> https://fedorahosted.org/cobbler/wiki/UsingCobblerWithConfigManagementSystem
>
> How does this idea (to be explained below) sound for those that are 
> using Puppet?   I think this could be done with a minimum amount of code 
> so it wouldn't be too intrusive to non-Puppet users.   I don't think 
> this was cleanly possible until 1.0, due to the new mod_python services 
> infrastructure in Cobbler.
>
> New feature:   Cobbler gets a new URL that serves up an external_nodes 
> file for a given profile/system name.
>
> http://cobbler.example.org/cblr/svc/op/puppet/system/$name
> OR
> http://cobbler.example.org/cblr/svc/op/puppet/profile/$name
>
> This file returns the YAML file that is required to tell Puppet what 
> puppet classes the node gets.
>
> Cobbler also ships a very simple snippet for use in kickstart %post that 
> wgets this file when called, saves it, and uses that file to supply the 
> answer to "external_nodes".
>
> We could source the variable assignments out of --ksmeta, so there would 
> be no need for additional variables added into Cobbler to support this, 
> just some added support code.
>
> For example:
>
> cobbler profile edit --name=webserver --ksmeta="profile=webserver"
> cobbler system edit --name=foo --profile="webserver"
>
> If it makes things easier we could still add a syntax like:
>
> cobbler profile edit --name=webserver --management-classes=webserver
>
> This feature would allow the profiles to be reassigned anytime, as 
> needed, as the profile and system level without reinstalling the 
> system.   You can then manage your IP/MAC/install/config-mgmt 
> associations all in one place, without having to hop between 6 or 7 
> different tools.  To me, this is exactly what cobbler's goal is --- to 
> allow you to do powerful edits in terms of "objects" and /what/ you want 
> to get done, not how you want to do it.
>
> Thoughts?
>
> Does cfengine have a similar concept for mapping systems locally to the 
> configuration rules they should access?
>
> --Michael
>
> _______________________________________________
> cobbler mailing list
> [email protected]
> https://fedorahosted.org/mailman/listinfo/cobbler
>   

I should also add, the external_nodes file would be generated from a 
template, such as /etc/cobbler/puppet_nodes.template

That way you could still achieve the parameters support mentioned in the 
linked Wiki URL.

--Michael


_______________________________________________
cobbler mailing list
[email protected]
https://fedorahosted.org/mailman/listinfo/cobbler

Reply via email to