On 10 September 2010 18:54, Stefan Schlesinger <[email protected]> wrote:
>
> On Sep 10, 2010, at 15:47 , Gavin wrote:
>> File does not exist: /usr/share/puppet/rack/puppetmasterd/public/
>> production.
>
> Actually I think I can reproduce your problem when I turn that
> option off in puppetmaster vhost: RackAutoDetect On

Hi Stefan,

Thanks for the pointers however I am still not coming right with this.

I still get the 'File does not exist' error: File does not exist:
/usr/share/puppet/rack/puppetmasterd/public/production

My installed packages look almost identical to yours:-

ii  apache2-mpm-worker                  2.2.9-10+lenny8
ii  libapache2-mod-passenger            2.2.11debian-1
ii  puppetmaster                        2.6.0-4
ii  librack-ruby1.8                     1.1.0-4
ii  rails                               2.1.0-7

My Apache vhost is confugured as follows:-

PassengerHighPerformance on
PassengerMaxPoolSize 12
PassengerPoolIdleTime 1500
# PassengerMaxRequests 1000
PassengerStatThrottleRate 120
RackAutoDetect Off
RailsAutoDetect Off


Listen 8140
<VirtualHost *:8140>

    SSLEngine on
    SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:-LOW:-SSLv2:-EXP
    SSLCertificateFile
/var/lib/puppet/ssl/certs/puppet.issecurity.co.za.pem
    SSLCertificateKeyFile
/var/lib/puppet/ssl/private_keys/puppet.issecurity.co.za.pem
    SSLCertificateChainFile /var/lib/puppet/ssl/ca/ca_crt.pem
    SSLCACertificateFile    /var/lib/puppet/ssl/ca/ca_crt.pem
    # CRL checking should be enabled; if you have problems with Apache
complaining about the CRL, disable the next line
    SSLCARevocationFile     /var/lib/puppet/ssl/ca/ca_crl.pem
    SSLVerifyClient optional
    SSLVerifyDepth  1
    SSLOptions +StdEnvVars

    # The following client headers allow the same configuration to
work with Pound.
    RequestHeader set X-SSL-Subject %{SSL_CLIENT_S_DN}e
    RequestHeader set X-Client-DN %{SSL_CLIENT_S_DN}e
    RequestHeader set X-Client-Verify %{SSL_CLIENT_VERIFY}e
    PassengerRoot /usr
    PassengerRuby /usr/bin/ruby
    RailsAutoDetect On
    #RackAutoDetect On
    DocumentRoot /usr/share/puppet/rack/puppetmasterd/public/
    RackBaseURI /
    <Directory /usr/share/puppet/rack/puppetmasterd/>
        Options None
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>
</VirtualHost>
~
Here is what my config.ru looks like:

# a config.ru, for use with every rack-compatible webserver.
# SSL needs to be handled outside this, though.

# if puppet is not in your RUBYLIB:
# $:.unshift('/opt/puppet/lib')

$0 = "puppetmasterd"
require 'puppet'

# if you want debugging:
# ARGV << "--debug"

ARGV << "--rack"
require 'puppet/application/puppetmasterd'
# we're usually running inside a Rack::Builder.new {} block,
# therefore we need to call run *here*.
run Puppet::Application[:puppetmasterd].run

And here are the file permissions:-

puppet:~# ls -lah /usr/share/puppet/rack/puppetmasterd/
total 20K
drwxr-xr-x 4 puppet puppet 4.0K Sep 29 13:54 .
drwxr-xr-x 3 root   root   4.0K Sep  1 10:58 ..
-rw-r--r-- 1 puppet puppet  470 Sep 22 16:38 config.ru
drwxr-xr-x 2 puppet puppet 4.0K Jul 28 21:02 public
drwxr-xr-x 2 puppet puppet 4.0K Jul 28 21:02 tmp

I tried to play around with all of the options in the apache config,
ie: On/Off, doc root, etc, and no matter what I do I still get the
same error.

I upped the log level of Apache and can see all the debug logs but the
only useful line in the logs tells me about the error as described
above.

I'm trying to deploy Puppet here in our DC and we have hundreds of
servers to manage, so Passenger is our only option.

Do you or anyone else perhaps have any other pointers that may assist
me in getting to the bottom of this ??

Thanks again for your help so far.

Regards,
Gavin

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.

Reply via email to