The approach I've used is similar - automatically sign new CSRs so
that new nodes can be added without human interaction.

In order to then apply a configuration to the node, the hostnames for
my machines all conform to a pattern, which I then match against a
regular expression in the node manifest.

For example, instead of this:

  node 'mywebapp1.domain' { include webapp }
  node 'mywebapp2.domain' { include webapp }
  node 'mydatabase.domain' { include database }

You can do this:

  node /mywebapp*/ { include webapp }
  node /mydatabase*/ { include database }

All my servers conform to a common pattern with the project, the type
of node, and a timestamp to ensure uniqueness.

Hope that helps!


On Jul 21, 10:56 am, Oliver Beattie <oli...@obeattie.com> wrote:
> Hi there,
>
> I am trying to setup a "cluster" on Amazon EC2, using auto-scaling. I
> currently have it working so that when the instances are started, they
> generate a CSR, which is automatically signed by the server if it's valid by
> a cron job I setup to run every minute.
>
> However, where does one go from there? I suppose now the nodes need to be
> somehow registered on the puppet master so they can receive the correct
> configuration, but I'm unsure how to do this. I've read several articles
> which involve essentially creating a script which modifies the manifest, but
> is there a better way than this?
>
> I'm fairly new to Puppet, so my other question would be how does one
> classify instances into "roles" or similar — for instance, if I am bringing
> up a webserver, can I just add it to a "webserver" group and it will be
> configured as such?
>
> Any pointers would be very much appreciated :)
>
> —Oliver

-- 
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.

Reply via email to