Configuration error LoadError: cannot load such file -- chef_handler_foreman (require statement in /etc/chef/client.rb)

Configuration error LoadError: cannot load such file -- chef_handler_foreman (require statement in /etc/chef/client.rb)

我正在尝试将现有的主厨节点注册到工头。我关注了:

https://www.theforeman.org/plugins/foreman_chef/0.5/index.html

这告诉我安装 chef_handler_foreman gem 并将以下内容放入 /etc/chef/client.rb:

require 'chef_handler_foreman'

foreman_server_options 'https://your.proxy.server:8443'

foreman_facts_upload true

foreman_reports_upload true

foreman_enc true

我都做了。

当我 运行 chef-client 时,我得到:

[root@ip-10-139-67-124 chef]# chef-client

[2017-06-29T13:25:09-04:00] FATAL: Configuration error LoadError: cannot load such file -- chef_handler_foreman

[2017-06-29T13:25:09-04:00] FATAL: /etc/chef/client.rb:4:in `from_string'

[2017-06-29T13:25:09-04:00] FATAL: Aborting due to error in '/etc/chef/client.rb'

[root@ip-10-139-67-124 chef]#

这是我安装 gem 的证据:

[root@ip-10-139-67-124 chef]# gem list | grep chef

chef_handler_foreman (0.2.0)

我是运行宁红帽7.3。

我已经研究了以下问题和其他几个问题。对这些问题的回答表明存在区分大小写的问题,但此处并非如此:

LoadError: cannot load such file -- english

我做错了什么?感谢任何帮助。

你应该检查/opt/chef/embedded/bin/gem list | grep foreman

我怀疑您在系统 ruby 中安装了 gem 而不是捆绑在综合安装程序中的厨师 ruby 中,以避免与系统 ruby 发生冲突。

通常你应该使用 chef 在 chef 中安装 gem 并自行配置。 使用 chef_gem 资源安装 gems 并利用 chef_client 食谱配置 chef。