On 5/29/2013 10:53 AM, Matt wrote:
I'm wondering if its possible to create virtual hosted puppet masters
using passenger for isolation between groups/customers. How would I go
about pointing through apache/passenger to point to a different puppet
conf file?

Assuming a dir structure like this,

/etc/puppetmaster/cust1/
/etc/puppetmaster/cust1/public/config.ru
/etc/puppetmaster/cust1/puppetmaster.conf

/etc/puppetmaster/cust2/
/etc/puppetmaster/cust2/public/config.ru
/etc/puppetmaster/cust2/puppetmaster.conf

Each vhost would point to it's public dir

  <Directory /etc/puppetmaster/cust1/public>
      Options None
      AllowOverride None
      Order allow,deny
      allow from all
  </Directory>

The config.ru would point to the puppetmaster.conf or whatever you'd like to name it.

ARGV << "--rack"
ARGV << "--config=/etc/puppetmaster/cust1/puppetmaster.conf"
require 'puppet/application/master'

And finally the puppetmaster.conf would point to the directories you'd like to use.

[main]
confdir=/etc/puppetmaster/cust1/etc
logdir=/etc/puppetmaster/cust1/logs
vardir=/etc/puppetmaster/cust1/var
ssldir=$vardir/ssl
rundir=/etc/puppetmaster/cust1/run
factpath=$vardir/lib/facter
templatedir=$confdir/templates

[production]
modulepath = $confdir/environments/production/modules
manifest = $confdir/environments/production/manifests/site.pp

Same thing for each additional Puppet master.

Ramin

--
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 [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/puppet-users?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to