3

引导 VM 时

$ knife bootstrap localhost --ssh-user vagrant --ssh-password vagrant --ssh-port 2222 --sudo

引导过程返回以下异常:

Bootstrapping Chef on localhost
localhost /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/mixlib-log-1.4.1/lib/mixlib/log.rb:97:in `level=': Log level must be one of :debug, :info, :warn, :error, or :fatal (ArgumentError)
localhost   from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.14.2/lib/chef/application.rb:117:in `configure_logging'
localhost   from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.14.2/lib/chef/application/client.rb:242:in `configure_logging'
localhost   from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.14.2/lib/chef/application.rb:63:in `reconfigure'
localhost   from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.14.2/lib/chef/application/client.rb:197:in `reconfigure'
localhost   from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.14.2/lib/chef/application.rb:68:in `run'
localhost   from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-10.14.2/bin/chef-client:26:in `<top (required)>'
localhost   from /usr/bin/chef-client:23:in `load'
localhost   from /usr/bin/chef-client:23:in `<main>'

我刚刚更新了我的厨师版本:

$ knife -v
Chef 11.8.0

这是厨师的错误吗?

4

4 回答 4

3

我遇到了这个确切的问题,我告诉引导程序安装的 Chef 版本是 10.30.2。

但是,在我的本地机器上运行的 Chef 版本是 11。

一旦我在本地机器上安装了 Chef 版本 10,关于日志级别的错误就消失了。

于 2013-12-15T12:14:51.767 回答
2

错误跟踪表明它是从chef-client. 所以你需要检查/etc/chef/client.rb

您需要一个条目,例如:

log_level   :info

有关详细信息,请参阅关于 client.rb的文章。

于 2013-11-17T04:27:45.350 回答
2

I found a workaround for this, what i consider to be a bug in not being able to bootstrap chef 10.x client using chef/knife version 11.

You can put this in your knife.rb

chef_client_path 'chef-client -l info'

Chris Jerdonek posted a workaround here Knife bootstraping returns Log level must be one of

于 2014-03-18T17:53:04.703 回答
0

对我来说,这个问题发生在我试图在不与 knife.rb 位于同一目录的情况下进行引导引导时

于 2013-11-20T14:40:39.903 回答