部署

时间:2015-10-19 02:53:04

标签: deployment chef virtual-machine

当我们尝试在VM中创建文件时,我们面临禁止http 403的问题。我们正在使用以下厨师代码来完成这项工作。

X_FILES = %w{x-log4j.properties x-override.properties x-core.properties x.conf}
x_FILES.each do |file|
  template "/etc/b2b/x/#{file}" do
    mode 0644
    source "#{file}.erb"
    owner 'root'
    action :create
    notifies :restart, "service[a2a-x]"
    only_if { File.exist?("/etc/a2a/x") }
    helpers MongoUtil
    helpers xUtil
  end
end

我们有多个虚拟机,错误不一致。在重新启动部署作业时,该过程正常。

错误日志如下

[2015-10-01T01:40:03+05:30] INFO: Processing template[/etc/b2b/x/x-log4j.properties] action create (b2b::install_configure_x line 89)
[2015-10-01T01:40:04+05:30] INFO: HTTP Request Returned 403 Forbidden: 

================================================================================
Error executing action `create` on resource 'template[/etc/b2b/x/x-log4j.properties]'
================================================================================

Net::HTTPServerException
------------------------
403 "Forbidden"

Resource Declaration:
---------------------
# In /var/chef/cache/cookbooks/b2b/recipes/install_configure_x.rb

 89:   template "/etc/b2b/x/#{file}" do
 90:     mode 0644
 91:     source "#{file}.erb"
 92:     owner 'root'
 93:     action :create
 94:     notifies :restart, "service[b2b-x]"
 95:     only_if { File.exist?("/etc/b2b/x") }
 96:     helpers MongoUtil
 97:     helpers TenantIdUtil
 98:   end
 99: end

Compiled Resource:
------------------
# Declared in /var/chef/cache/cookbooks/b2b/recipes/install_configure_x.rb:89:in `block in from_file'

template("/etc/b2b/x/x-log4j.properties") do
  provider Chef::Provider::Template
  action [:create]
  retries 0
  retry_delay 2
  guard_interpreter :default
  path "/etc/b2b/x/x-log4j.properties"
  backup 5
  atomic_update true
  source "x-log4j.properties.erb"
  helper_modules [MongoUtil, TenantIdUtil]
  cookbook_name "b2b"
  recipe_name "install_configure_x"
  mode 420
  owner "root"
  only_if { #code block }
end

非常感谢这方面的任何帮助。提前谢谢。

1 个答案:

答案 0 :(得分:0)

如果遇到其他人,就像我一样,这很可能是由于认证令牌由于厨师长时间运行而超时。 这是一个详细解决该问题的页面: https://discourse.chef.io/t/seeing-a-weird-403-error-while-running-recipe/6149/2