Matt Shields
2014-Apr-10 15:14 UTC
[Puppet Users] Problem starting Apache/Passenger/Puppetmaster
I'm not sure what happened but my Passenger virtual host for the puppet master has stopped working last week. It's running on Amazon Linux (CentOS) I'm getting the following error. Error page: exit (SystemExit) /usr/lib/ruby/site_ruby/1.8/puppet/util.rb:493:in `exit' /usr/lib/ruby/site_ruby/1.8/puppet/util.rb:493:in `exit_on_fail' /usr/lib/ruby/site_ruby/1.8/puppet/application.rb:370:in `run' /usr/lib/ruby/site_ruby/1.8/puppet/context.rb:51:in `override' /usr/lib/ruby/site_ruby/1.8/puppet.rb:224:in `override' /usr/lib/ruby/site_ruby/1.8/puppet/application.rb:362:in `run' /usr/lib/ruby/site_ruby/1.8/puppet/util/command_line.rb:137:in `run' /usr/lib/ruby/site_ruby/1.8/puppet/util/command_line.rb:91:in `execute' config.ru:35 /usr/lib/ruby/gems/1.8/gems/rack-1.5.2/lib/rack/builder.rb:55:in `instance_eval' /usr/lib/ruby/gems/1.8/gems/rack-1.5.2/lib/rack/builder.rb:55:in `initialize' config.ru:1:in `new' config.ru:1 Here's some other info that might be helpful [root@puppet ~]# rpm -qa | grep puppet | sort puppet-3.5.0-1.el6.noarch puppet-dashboard-1.2.23-1.el6.noarch puppetdb-1.6.3-1.el6.noarch puppetdb-terminus-1.6.3-1.el6.noarch puppetlabs-release-6-10.noarch puppet-server-3.5.0-1.el6.noarch rubygem-puppet-lint-0.3.2-1.el6.noarch rubygem-puppet-lint-doc-0.3.2-1.el6.noarch [root@puppet conf.d]# gem list *** LOCAL GEMS *** addressable (2.3.6, 2.3.5) arr-pm (0.0.9, 0.0.8) backports (3.6.0, 3.3.5) builder (3.2.2) cabin (0.6.1) cgi_multipart_eof_fix (2.5.0) childprocess (0.5.2, 0.3.9) clamp (0.6.3) daemon_controller (1.2.0, 1.1.7) daemons (1.0.10) facter (2.0.1, 1.7.5) fastthread (1.0.7) ffi (1.9.3, 1.0.9) fpm (1.0.2, 0.4.42) ftw (0.0.39, 0.0.37) gem_plugin (0.2.3) hiera (1.3.2, 1.3.0) http_parser.rb (0.6.0, 0.5.3) json (1.8.1, 1.7.7, 1.5.5) json_pure (1.8.1) mongrel (1.1.5) net-ldap (0.6.0, 0.2.2) net-ping (1.5.3) passenger (4.0.41) peach (0.5.1) puppet (3.4.3, 3.3.2) puppet-lint (0.3.2) rack (1.5.2) rake (10.2.2, 10.1.0, 10.0.4) rdoc (4.1.1, 4.0.1) rgen (0.6.6) rubygems-update (2.2.2) stomp (1.3.2, 1.2.10) xml-simple (1.1.3) [root@puppet conf.d]# cat 00_passenger.conf # RHEL/CentOS: LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-4.0.41/buildout/apache2/mod_passenger.so <IfModule mod_passenger.c> PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-4.0.41 PassengerDefaultRuby /usr/bin/ruby1.8 </IfModule> # And the passenger performance tuning settings: PassengerHighPerformance On #PassengerUseGlobalQueue On # Set this to about 1.5 times the number of CPU cores in your master: PassengerMaxPoolSize 6 # Recycle master processes after they service 1000 requests PassengerMaxRequests 1000 # Stop processes if they sit idle for 10 minutes PassengerPoolIdleTime 600 #RailsAutoDetect On [root@puppet conf.d]# cat puppetmaster.conf # And the passenger performance tuning settings: #PassengerHighPerformance On #PassengerUseGlobalQueue On # Set this to about 1.5 times the number of CPU cores in your master: #PassengerMaxPoolSize 6 # Recycle master processes after they service 1000 requests #PassengerMaxRequests 1000 # Stop processes if they sit idle for 10 minutes #PassengerPoolIdleTime 600 Listen 8140 <VirtualHost *:8140> SSLEngine On # Only allow high security cryptography. Alter if needed for compatibility. SSLProtocol All -SSLv2 SSLCipherSuite HIGH:!ADH:RC4+RSA:-MEDIUM:-LOW:-EXP SSLCertificateFile /var/lib/puppet/ssl/certs/puppet.pem SSLCertificateKeyFile /var/lib/puppet/ssl/private_keys/puppet.pem SSLCertificateChainFile /var/lib/puppet/ssl/ca/ca_crt.pem SSLCACertificateFile /var/lib/puppet/ssl/ca/ca_crt.pem SSLCARevocationFile /var/lib/puppet/ssl/ca/ca_crl.pem SSLVerifyClient optional SSLVerifyDepth 1 SSLOptions +StdEnvVars +ExportCertData # These request headers are used to pass the client certificate # authentication information on to the puppet master process 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 # RackAutoDetect On # RackBaseURI / PassengerBaseURI / PassengerUser puppet PassengerGroup puppet PassengerLogLevel 3 DocumentRoot /usr/share/puppet/rack/puppetmasterd/public/ PassengerAppRoot /usr/share/puppet/rack/puppetmasterd <Directory /usr/share/puppet/rack/puppetmasterd/> Options None AllowOverride None Order Allow,Deny Allow from All </Directory> ErrorLog /var/log/httpd/puppetmaster_error.log CustomLog /var/log/httpd/puppetmaster_access.log combined </VirtualHost> [root@puppet ~]# cat /usr/share/puppet/rack/puppetmasterd/config.ru # 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: # $LOAD_PATH.unshift('/opt/puppet/lib') $0 = "master" # if you want debugging: # ARGV << "--debug" ARGV << "--rack" # Rack applications typically don't start as root. Set --confdir and --vardir # to prevent reading configuration from ~puppet/.puppet/puppet.conf and writing # to ~puppet/.puppet ARGV << "--confdir" << "/etc/puppet" ARGV << "--vardir" << "/var/lib/puppet" # NOTE: it's unfortunate that we have to use the "CommandLine" class # here to launch the app, but it contains some initialization logic # (such as triggering the parsing of the config file) that is very # important. We should do something less nasty here when we've # gotten our API and settings initialization logic cleaned up. # # Also note that the "$0 = master" line up near the top here is # the magic that allows the CommandLine class to know that it's # supposed to be running master. # # --cprice 2012-05-22 require 'puppet/util/command_line' # we're usually running inside a Rack::Builder.new {} block, # therefore we need to call run *here*. run Puppet::Util::CommandLine.new.execute Matt -- 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+unsubscribe@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/CAOTD2YScOiC1vuf0C9VTZS%2By7rcezeQ7CYQb6f8xyCRgP6V70w%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.