>
> I would make facts on the nodes for these.  Let say $role and $subrole 
> and then just use those in your hierarchy with %{role} and %{subrole} 
> thus allowing you to set variable for all those machines there. 
>

As far as I understood puppet is a config management system that configures 
systems consistently over the enterprise based on facts and Hiera is a 
hierarchical system that tells puppet whet the servers need 
(or actually the other way arround, puppet looks up Hiera info).
Setting facts on a few servers is no problem, but what happens if you 
manage several 100 servers? One of the primary goals for us in implementing 
puppet/hiera was to avoid logins on servers. Every config change should NOT 
happen on a server. A server must be completely replaceable. We never want 
to come to a situation where we would have to look into a damaged server 
trying to find out what custom roles were defined in it.

So, how do we solve this? We want to manage a server by just putting those 
roles in hiera. If we want a server to do more we simply add a role. If we 
need more servers to do more we create a new role, define what needs to be 
done and add that role to the corresponding .yaml files.

so, a server on our hiera has something like:
roles:
- database

than it will load a file global/roles/database.yaml that has:
classes:
- mysql

This way our entire config is still in one place and we never have to do 
any "per server" work. Just the way Puppet was originally designed (again, 
 as far as I understood).

best regards,
Alex

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/puppet-users/-/FzmHYCxLUqMJ.
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.

Reply via email to