Hey Matt,

I'm not exactly sure how you have things setup now, but the operating
system fact is baked into factor and will be available on the first
run. Rather than having the ENC supply your default classes, you could
do so in your site.pp. Here's how I do it:

stage { 'first': before => Stage['main'] }
class { baselinux: stage => 'first' }

This makes baselinux run for every node, before anything else,
independent of the ENC. It would be easy enough to wrap that in a OS

We have a similar setup (just starting work on Windows primarily for
auditing as well) and decided to use a separate Puppet Master for
Windows to keep things clean and other reasons such as different
operations teams administering the ENC.



p.s. If you haven't explored this, you can do some really cool things
with Windows auditing by extending factor and using Ruby's win32/ole
libraries (report on video cards, motherboards, etc.)
On Jul 4, 8:20 am, Matthew Burgess wrote:
Hi all,

We have a mixed Linux and Windows environment and have so far just
been using Puppet on our Linux servers.  Having configured the
inventory service, we've got an auditing script that uses the data to
report on things like OS version, RAM, etc.  This is all so nice that
we'd like to extend it to auditing our Windows infrastructure.
However, at this point in time, we have no need to apply any manifests
to those Windows servers, and they're all Linux-centric anyway.

I've installed the puppet agent on a Windows server but when it starts
it obviously tries to apply all the manifests the ENC tells it to
(there's a default set of classes that all servers up until now have
applied).  I think the correct way to tackle this is to have the first
run of the agent use the 'noop' parameter, that way the cert exchange
will take place, and the facts will be populated, but no classes will
be applied.  On subsequent runs, the ENC can use the aforementioned
inventory service to inspect the 'operatingsystem' fact to determine
whether or not to apply any classes.

So, I guess, I'm just babbling to the masses here in a request for
comments as to whether this is the correct/most efficient method of
achieving my goal of only applying classes to Linux servers, but being
able to have Windows servers available via the inventory service.


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+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.

Search Discussions

Discussion Posts


Follow ups

Related Discussions

Discussion Navigation
viewthread | post
posts ‹ prev | 2 of 5 | next ›
Discussion Overview
grouppuppet-users @
postedJul 4, '12 at 1:20p
activeJul 5, '12 at 9:48p



site design / logo © 2022 Grokbase