首页 > 解决方案 > puppet master 找不到 configdir,如何解决这个问题?

问题描述

sudo puppet master --verbose --no-daemonize

当我运行上面的命令时

[root@puppetmaster bin]# sudo puppet master --verbose --no-daemonize /usr/lib/ruby/site_ruby/1.8/puppet/settings.rb:1348:in convert': Error converting value for param 'basemodulepath': Could not find value for $configdir (Puppet::Settings::InterpolationError) from /usr/lib/ruby/site_ruby/1.8/puppet/settings.rb:1337:ingsub' 来自 /usr/lib/ruby/site_ruby/ 1.8/puppet/settings.rb:1337:in convert' from /usr/lib/ruby/site_ruby/1.8/puppet/settings.rb:1315:ininterpolate' from /usr/lib/ruby/site_ruby/1.8/puppet/settings.rb:1060:in value' from /usr/lib/ruby/site_ruby/1.8/puppet/settings.rb:121:in[]' from /usr/lib/ruby/site_ruby/1.8/puppet .rb:184:in base_context' from /usr/lib/ruby/site_ruby/1.8/puppet/application.rb:356:inrun' from /usr/lib/ruby/site_ruby/1.8/puppet/util/command_line.rb:146:in run' from /usr/lib/ruby/site_ruby/1.8/puppet/util/command_line.rb:92:inexecute' from /usr/bin/puppet:8

即使我现在使用 $configdir 和值 /etc/puppet 创建了一个环境变量,但仍然是同样的问题。

请建议如何纠正这个

标签: puppet

解决方案


Puppet 通常不提供或依赖任何“configdir”设置,但它确实提供并依赖confdir. 由于 Puppet 抱怨能够确定不同参数的值basemodulepath,所以我推断,

  1. 您正在使用启用了目录环境的 Puppet 3.8(Ruby 1.8 在以后的版本中不受支持,并且basemodulepath是目录环境的东西),并且

  2. 您的 environment.conf 文件之一错误地为其环境指定了一个值basemodulepath$configdir而不是$confdir.

请注意,Puppet 3.8 已过时且不受支持。在我写这篇文章时,最新的是 Puppet 6.12。


推荐阅读