首页 > 解决方案 > 在 chef-client 运行期间无法安装 Chef gem

问题描述

我正在使用以下版本的厨师环境

操作系统和版本详细信息如下:

我在初始运行期间配置的节点上运行厨师客户端,安装厨师宝石失败并出现以下错误。

在检查它无法连接到 ruby​​ 站点来安装 gems,但我的服务器有活动的互联网连接。我从Bundle Install Not Working获得了这些详细信息

安装食谱宝石:

Running handlers:
[2019-10-17T19:09:35+08:00] ERROR: Running exception handlers
Running handlers complete
[2019-10-17T19:09:35+08:00] ERROR: Exception handlers complete
Chef Client failed. 0 resources updated in 05 minutes 13 seconds
[2019-10-17T19:09:35+08:00] INFO: Sending resource update report (run-id: 942e7eaa-14c0-487d-8a6c-6d96a49c99ff)
[2019-10-17T19:09:36+08:00] FATAL: Stacktrace dumped to c:/chef/cache/chef-stacktrace.out
[2019-10-17T19:09:36+08:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
[2019-10-17T19:09:36+08:00] FATAL: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [0], but received
 '17'
---- Begin output of bundle install ----
STDOUT: Fetching source index from https://www.rubygems.org/

Retrying fetcher due to error (2/4): Bundler::HTTPError Could not fetch specs from https://www.rubygems.org/
Retrying fetcher due to error (3/4): Bundler::HTTPError Could not fetch specs from https://www.rubygems.org/
Retrying fetcher due to error (4/4): Bundler::HTTPError Could not fetch specs from https://www.rubygems.org/
Could not fetch specs from https://www.rubygems.org/
STDERR:
---- End output of bundle install ----
Ran bundle install returned 17 

会不会是 DNS 问题?我有来自服务器的有效互联网连接,并且可以手动登陆 ruby​​ 站点。

有没有办法可以手动安装 ruby​​/cookbook gems?

标签: rubyruby-on-rails-3chef-infrachef-recipe

解决方案


会不会是 DNS 问题?我有来自服务器的有效互联网连接,并且可以手动登陆 ruby​​ 站点。

如果您在节点上运行 chef-client,那么服务器与“活动互联网连接”有什么关系。您应该验证节点本身是否有可用的 Internet 连接。

有没有办法可以手动安装 ruby​​/cookbook gems?

你当然可以。如果您希望将 ruby​​gem 安装到 chef embedded ruby​​ 中(与chef_gem资源相同),请gem与 chef embedded ruby​​ 一起使用。

$ /opt/chef/bin/gem install <rubygem-name>

否则,您可以像往常一样将其安装到 ruby​​ 系统(与gem_package资源相同)

$ gem install <rubygem-name>

我还建议您使用调试日志级别运行 chef-client 以获取有关该问题的更多信息

$ chef-client --log_level debug

推荐阅读