配置错误LoadError:无法加载此类文件 - chef_handler_foreman(/etc/chef/client.rb中的require语句)

时间:2017-06-29 17:38:46

标签: ruby chef redhat chef-recipe theforeman

我正在尝试将现有的厨师节点注册到Foreman。我跟着说:

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

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

  

要求' chef_handler_foreman'

     

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

     

foreman_facts_upload true

     

foreman_reports_upload true

     

foreman_enc true

我做了两件事。

当我经营厨师 - 客户时,我得到:

  

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

     

[2017-06-29T13:25:09-04:00]致命错误:配置错误LoadError:无法加载此类文件 - chef_handler_foreman

     

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

     

[2017-06-29T13:25:09-04:00]致命:由于/etc/chef/client.rb'

中的错误导致中止      

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

以下是我安装了宝石的证据:

  

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

     

chef_handler_foreman(0.2.0)

我正在运行Redhat 7.3。

我调查过以下问题和其他一些问题。这些问题的答案表明了一个区分大小写的问题,而这种情况并非如此:

  

LoadError: cannot load such file -- english

我做错了什么?任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:3)

您应该查看/opt/chef/embedded/bin/gem list | grep foreman

我怀疑你的系统ruby中安装了gem,而不是在omnibus安装程序中捆绑的chef's ruby​​中,以避免与系统ruby发生冲突。

通常你应该使用厨师在厨师里面安装宝石并自行配置。 使用chef_gem资源安装宝石,并利用chef_client食谱来配置厨师。