To be honest I don't find painful at all to include at node level ONE and only one (role) class. I wonder where you find all this duplication. If your node names are standardized (ie: web01 web02 web03.. ) you can even use wildcards for all the nodes that share the same role.
I personally find more quick and handy to add a node via vi that clicking around a web interface. And most of the times when I've to add a node I just insert the node name and the role class that it includes. I've worked with this layout in different environments with various different colleagues, more or less Puppet experts (some never used it before) and nobody has ever made mistakes while managing nodes, and once explained the override logic of variables in the inheritance tree they were autonomous in managing customizations. So somehow, for me, this is a hint, if not a proof, that this layout is not so confusing or problematic. Once again, I don't intend to convince anyone that this is the best or the only possible one, but I'm ready to demonstrate any time that it works and scales well and, once explained is easy to work with. My2c Al On Aug 11, 11:02 am, Bruce Richardson <itsbr...@workshy.org> wrote: > On Mon, Aug 08, 2011 at 06:25:20AM -0700, Alessandro Franceschi wrote: > > NEVER include a class in the inheritance tree (well you can if you > > don't redefine variables used in that class but still is not > > necessary). > > In a nodes inheritance layout BEFORE you set the variables and THEN > > you include classes (in my case "role classes"). > > This is precisely why Puppet's inheritance model is painful. To be > safe, you have to include all classes at the specific node. You can > hide some of this in role-based classes, but only so much. It causes > duplication, noise in the config and is an unnecessary potential source > of error. Yes, if you use an ENC, you can avoid some of this by, for > example, having a script that queries a database in which the > duplication has been removed by normalisation, or by using a language > with a sane inheritance model to describe your nodes. That, though, is > only hiding the problem and still means much more noise than is > necessary in the communication between the ECN and Puppet (which is > still a potential source of error, as the same datum transmitted many > times is more likely to be corrupted/distorted in one of those > instances). > > -- > Bruce > > I unfortunately do not know how to turn cheese into gold. > > signature.asc > < 1KViewDownload -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.