I have installed Puppet as per official documentation and I have got installed Ruby 1.8.7.
But via rvm I have installed ruby 2.3.3 and then installed rack and passenger gems with `gem install rack passenger` and installed `passenger-install-apache2-module` successfully.
I made changes accordingly to puppetmaster.conf and placed it in conf.d directory of httpd service.
After starting httpd service I have given as `puppet cert` and its showing below errors
[root@lab puppet-fundamentals-puppetmaster]# puppet cert
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- json (L
oadError)
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/lib/ruby/site_ruby/1.8/puppet/module.rb:3
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/lib/ruby/site_ruby/1.8/puppet/parser/files.rb:1
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/lib/ruby/site_ruby/1.8/puppet/parser/templatewrapper.rb:1
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/lib/ruby/site_ruby/1.8/puppet/parser/scope.rb:6
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/lib/ruby/site_ruby/1.8/puppet/parser/methods.rb:2
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/lib/ruby/site_ruby/1.8/puppet/parser/ast/method_call.rb:2
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/lib/ruby/site_ruby/1.8/puppet/parser/ast.rb:115
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/lib/ruby/site_ruby/1.8/puppet/parser/parser.rb:11
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/lib/ruby/site_ruby/1.8/puppet/parser.rb:4
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/lib/ruby/site_ruby/1.8/puppet.rb:282
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/lib/ruby/site_ruby/1.8/puppet/util/command_line.rb:12
from /usr/bin/puppet:7:in `require'
I don't understand why Puppet still looking over ruby 1.8 even I did mention as in puppetmaster.conf
PassengerRoot /usr/local/rvm/gems/ruby-2.3.3/gems/passenger-5.1.2
PassengerDefaultRuby /usr/local/rvm/gems/ruby-2.3.3/wrappers/ruby
Is there any way I can tell Puppet to look over ruby-2.3.3 as default ruby for all its needs ?
[root@lab ~]# puppet --version
3.8.7
[root@lab ~]#
[root@lab ~]# ruby -v
ruby 2.3.3p222 (2016-11-21 revision 56859) [x86_64-linux]
[root@lab ~]# rvm all ruby list
rvm rubies
=* ruby-2.3.3 [ x86_64 ]
Thank you.
↧