On Thursday, June 23, 2016 at 1:30:37 AM UTC-5, Alex Samad wrote: > > Hi > > So I am a bit of a newbie. My assumption was to setup using a master > puppet server. But I wanted to make sure that environment was handled > by the master puppet - I have control over that and I might not be > able to exclude control over the managed box from other users (dam > developers !). > >
I'm inclined to agree that central control is to be preferred. Do be aware, however, that control over node environment is mostly a *management* feature, not a *security* feature. Your master can control what resources it records in nodes' catalogs, but those nodes' admins can disable Puppet, make it run in --noop mode, make it present false facts to the master, and many other things. Do not grant privileges to people whom you do not trust, and do not trust anyone any more than you need to do. > I wanted some way to test what I was doing was correct. > > And you found one. > " > If your nodes care deeply about which Puppet environment they are > assigned to, then you are doing something wrong. > " > > so I am planning on having atleast a production, sim , inf, non prod > and a dev environment. > > I would presume a box would want to know which environment they are > in, because in prod they might be on a certain rpm / module or > certain config - lets say for example MOTD. > > But i might be wrong ? > > In the first place, I recommend *not* using multiple Puppet environments unless you have a Puppet-related reason for doing so. The prime reason in this category would be that you want to allow for use of different versions of the same Puppet modules to be used with one group of nodes than with another. When no such reason applies, environments do not provide a benefit commensurate with the extra complication and work they involve. In the second place, yes, you're wrong. The Puppet environment to which a node is assigned affects the details of the catalogs built for it, which in turn affects those nodes' configurations. The *master* makes decisions based on node environment, but nodes need not and should not care why they are configured as they are. For example, nodes do not need to know or care about the meaning of the contents of their MOTD; they just need to present the text -- whatever it is -- to users when they log in and when they ask for it. Likewise, they do not need to know why they are configured to access a particular database server, why they have the particular vhosts configured that they do, why they have the particular users and passwords they have, why they mount the particular remote file systems they mount, *etc*.. > My thought had been to align production environment with production > server, infra with infra servers and non prod non infra in the non > prod environment. > Even if you ignore my advice and do that, what I'm saying is that you should not identify Puppet's sense of "environment" with any external concept going by the same name. I maintain that nodes probably don't need to be explicitly aware of the label of their operational environment, either, but especially if you're exerting central control over Puppet environments, there is no reason for nodes to care how Puppet labels those environments. John -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/df3051e0-c516-4e17-8835-9ebabb82ae5e%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.