我们用于启动EC2实例的OpsWork Chef脚本已停止工作。
我对日志文件的解释,如下所示,是Route53尝试使用Fog,但由于Nokogiri需要Ruby 2.1.0或更高版本,因此无法安装Fog。
经过一些谷歌搜索后,我发现Ruby版本与OpsWork版本捆绑在一起,因为我们使用的是Chef 11是Ruby 2.0。
我不明白的是我们在Nokogirl上有固定版本
gem_package "nokogiri" do
action :install
version "1.5.11"
end
去年运行的所有Chef脚本,所以我猜测在Nokogiri或Fog中发生了一些变化。任何帮助将不胜感激。
From log...
[2017-01-30T09:29:48+10:00] INFO: Processing package[autoconf] action nothing (build-essential::_debian line 108)
[2017-01-30T09:29:48+10:00] INFO: Processing package[binutils-doc] action nothing (build-essential::_debian line 108)
[2017-01-30T09:29:48+10:00] INFO: Processing package[bison] action nothing (build-essential::_debian line 108)
[2017-01-30T09:29:48+10:00] INFO: Processing package[build-essential] action nothing (build-essential::_debian line 108)
[2017-01-30T09:29:48+10:00] INFO: Processing package[flex] action nothing (build-essential::_debian line 108)
[2017-01-30T09:29:48+10:00] INFO: Processing package[gettext] action nothing (build-essential::_debian line 108)
[2017-01-30T09:29:48+10:00] INFO: Processing package[ncurses-dev] action nothing (build-essential::_debian line 108)
[2017-01-30T09:29:48+10:00] INFO: Processing package[libxml2-dev] action nothing (route53::default line 23)
[2017-01-30T09:29:48+10:00] INFO: Processing package[libxslt1-dev] action nothing (route53::default line 28)
[2017-01-30T09:29:48+10:00] INFO: Processing chef_gem[fog] action install (route53::default line 44)
[2017-01-30T09:29:48+10:00] INFO: Installing chef-gem fog = 1.20
ERROR: Error installing fog:
nokogiri requires Ruby version >= 2.1.0.
[2017-01-30T09:29:55+10:00] INFO:
[2017-01-30T09:29:55+10:00] INFO: Processing route53_record[fresno.servers.digitaldealer.com.au] action create (digitaldealer::adddns line 4)
================================================================================
Error executing action `create` on resource 'route53_record[fresno.servers.digitaldealer.com.au]'
================================================================================
LoadError
---------
cannot load such file -- fog/aws/dns
Cookbook Trace:
---------------
/var/lib/aws/opsworks/cache.stage2/cookbooks/route53/providers/record.rb:3:in `require'
/var/lib/aws/opsworks/cache.stage2/cookbooks/route53/providers/record.rb:3:in `block in class_from_file'
答案 0 :(得分:1)
在厨师运行期间安装宝石时,您应使用chef_gem
资源(由route53::default
使用)。
chef_gem "nokogiri" do
action :install
version "1.5.11"
end
确保在route53::default
之前执行。