[Puppet Users] Re: configure apache passenger problem
When I was just setting up passenger, I had to alter that line referencing mod_passenger.so to our apache modules directory. # LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.2.11/ext/apache2/mod_passenger.so This needed to be changed to /etc/httpd/modules/mod_passenger.so since that is where apache has the module for passenger. I think you just need to track down where that module is and point the configuration to the right place. On Saturday, July 7, 2012 12:23:29 PM UTC-6, Hai wrote: I am configuring apache passenger by following the doc http://projects.reductivelabs.com/projects/puppet/wiki/Using_Passenger I am getting following erros when start httpd: ]# /etc/init.d/httpd start Starting httpd: httpd: Syntax error on line 221 of /etc/httpd/conf/httpd.conf: Syntax error on line 5 of /etc/httpd/conf.d/10_passenger.conf: Cannot load /usr/lib/ruby/gems/1.8/gems/passenger-3.0.12/ext/apache2/mod_passenger.c into server: /usr/lib/ruby/gems/1.8/gems/passenger-3.0.12/ext/apache2/mod_passenger.c: invalid ELF header [FAILED] the /usr/lib/ruby/gems/1.8/gems/passenger-3.0.12/ext/apache2/mod_passenger.c is the only thing I found in my system, I cannot find a mod_passenger.so file. here is my config, please help: === # ll total 28 -rw-r--r-- 1 root root 861 Jul 7 11:08 10_passenger.conf -rw-r--r-- 1 root root 1299 Jul 7 10:57 rack.conf -rw-r--r-- 1 root root 392 Dec 8 2011 README -rw-r--r-- 1 root root 9473 Dec 8 2009 ssl.conf -rw-r--r-- 1 root root 299 May 20 2009 welcome.conf == # cat 10_passenger.conf # /etc/httpd/conf.d/10_passenger.conf # The passenger module path should match ruby gem version # LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.2.11/ext/apache2/mod_passenger.so LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-3.0.12/ext/apache2/mod_passenger.c PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-3.0.12 PassengerRuby /usr/bin/ruby # Recommended Passenger Configuration PassengerHighPerformance on PassengerUseGlobalQueue on # PassengerMaxPoolSize control number of application instances, # typically 1.5x the number of processor cores. PassengerMaxPoolSize 6 # Restart ruby process after handling specific number of request to resolve MRI memory leak. PassengerMaxRequests 4000 # Shutdown idle Passenger instances after 30 min. PassengerPoolIdleTime 1800 # End of /etc/httpd/conf.d/10_passenger.conf = # cat rack.conf # you probably want to tune these settings PassengerHighPerformance on PassengerMaxPoolSize 12 PassengerPoolIdleTime 1500 # PassengerMaxRequests 1000 PassengerStatThrottleRate 120 RackAutoDetect Off RailsAutoDetect Off Listen 8140 VirtualHost *:8140 SSLEngine on SSLProtocol -ALL +SSLv3 +TLSv1 SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:-LOW:-SSLv2:-EXP SSLCertificateFile /var/lib/puppet/ssl/certs/hqd-puppet-01.telenav.com.pem SSLCertificateKeyFile /var/lib/puppet/ssl/private_keys/hqd-puppet-01.telenav.com.pem SSLCertificateChainFile /var/lib/puppet/ssl/certs/ca.pem SSLCACertificateFile/var/lib/puppet/ssl/ca/ca_crt.pem # If Apache complains about invalid signatures on the CRL, you can try disabling # CRL checking by commenting the next line, but this is not recommended. SSLCARevocationFile /var/lib/puppet/ssl/ca/ca_crl.pem SSLVerifyClient optional SSLVerifyDepth 1 SSLOptions +StdEnvVars DocumentRoot /etc/puppet/rack/public/ RackBaseURI / Directory /etc/puppet/rack/ Options None AllowOverride None Order allow,deny allow from all /Directory /VirtualHost -- Hai Tao -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/SHGyouoA1-IJ. 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.
[Puppet Users] Re: configure apache passenger problem
Sound like you only have the passenger gem installed, it needs to install the apache module. Here is a snippet from a Centos puppet build. init.pp # # modules/passenger/manifests/init.pp class passenger { package { 'rack': ensure = '1.1.0', provider = 'gem', require = Class['rubygems'], before = Package['passenger'], } package { 'passenger': ensure = installed, provider = 'gem', require = Package['rack'], before = File['/opt/passenger'], } # auto install passenger apache2 module and create links file { '/opt/passenger': ensure = 'directory', owner = 'root', group = 'root', mode = '0755', before = File['/opt/passenger/auto_passenger_install.sh'], } file { '/opt/passenger/auto_passenger_install.sh': ensure = 'present', owner = 'root', group = 'root', mode = '0755', source = 'puppet:///modules/passenger/auto_passenger_install.sh', before = Exec['auto_passenger_install'], } exec { 'auto_passenger_install': command = '/opt/passenger/auto_passenger_install.sh', timeout = '900', creates = '/etc/passenger', } } The install script. This installs the mod_passenger.so and links the directory to /etc/passenger (which means easy to upgrade version, the link is just swapped - apache still needs to restart as it reads the hardlink when started.) #!/bin/bash auto_passenger_install.sh # # modules/passenger/files/auto_passenger_install.sh # # Script variables SCRIPT=$(readlink -f $0) SCRIPTNAME=$(basename $SCRIPT) SCRIPTPATH=$(dirname $SCRIPT) SERVER=`hostname | cut -d'.' -f1-1` TIMESTAMP=$(date +%s) RUNDATE=`date -d @$TIMESTAMP +%Y%m%d%H%M%S` LOG_PATH=/var/log/scripts/$SCRIPTNAME if [ ! -d $LOG_PATH ]; then mkdir -p $LOG_PATH fi LOGFILE=$LOG_PATH/$RUNDATE.$SCRIPTNAME.log RUBYGEMS_VER_DIR=$(basename `facter rubysitedir`) PASSENGER_VERSION=`gem list --local | grep passenger | sed -e 's/passenger (//g;s/)//g'` cd /usr/lib/ruby/gems/$RUBYGEMS_VER_DIR/gems/passenger-$PASSENGER_VERSION /usr/bin/ruby /usr/bin/rake apache2:clean apache2 RELEASE=yes ln -s /usr/lib/ruby/gems/$RUBYGEMS_VER_DIR/gems/passenger-$PASSENGER_VERSION /etc/passenger -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/CS-7QcEic_IJ. 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.