【问题标题】:Object not found: chefzero - but no chefzero configured找不到对象:chefzero - 但没有配置 chefzero
【发布时间】:2016-05-23 16:45:37
【问题描述】:

vagrant up --provision 期间,它会因错误而停止:

...
==> default: [2016-05-23T08:05:57+00:00] INFO: *** Chef 12.11.1 ***
==> default: [2016-05-23T08:05:57+00:00] INFO: Platform: x86_64-linux
==> default: [2016-05-23T08:05:57+00:00] INFO: Chef-client pid: 1725
==> default: [2016-05-23T08:06:04+00:00] INFO: GET /organizations/chef/nodes/vagrant-0393a049
==> default: [2016-05-23T08:06:04+00:00] INFO: #<ChefZero::RestErrorResponse: 404: Object not found: chefzero://localhost:8889/nodes/vagrant-0393a049>
....
==> default: [2016-05-23T08:06:04+00:00] INFO: HTTP Request Returned 404 Not Found: Object not found: chefzero://localhost:8889/nodes/vagrant-0393a049
==> default: [2016-05-23T08:06:04+00:00] INFO: POST /organizations/chef/nodes
==> default: --- POST BODY ---
==> default: {"name":"vagrant-0393a049","chef_environment":"_default","json_class":"Chef::Node","automatic":{},"normal":{},"chef_type":"node","default":{},"override":{},"run_list":[]}
==> default: --- END POST BODY ---
...

问题是 - 我根本没有chefzero

$ grep -r "chefzero" . | wc -l
0

也许 - 它在某个依赖项中,但我找不到。

另外 - 这个Vagrantfile 以前使用过,Vagrantfile 没有变化:

  config.berkshelf.enabled = true
  config.vm.provision "chef_solo" do |chef|
    chef.add_recipe "apt"
    chef.add_recipe "nginx::repo"
    chef.add_recipe "nginx"
    chef.add_recipe "php5-fpm::install"
    chef.add_recipe "future::mysql"
    chef.add_recipe "future::nginx"
    chef.add_recipe "future::php"
    chef.add_recipe "future"
    chef.add_recipe "future::vm"
    chef.add_recipe "python"
    chef.add_recipe "future::boto3"
    ...

另外,我在Vagrantfile 的目录中看到了一堆文件,如vagrant20160523-25017-1fg91dt2.lock,以及d20160523-21769-1yiatxb 之类的目录。每次启动 VM 后它们都会出现。

感谢任何提示。

【问题讨论】:

  • 目录中的 Vagrant 临时文件是因为 /tmp 权限错误。

标签: vagrant chef-infra


【解决方案1】:

从最近的 Chef 版本开始,几天来报告的问题很少

解决方案是降级您的 Chef 版本。在您的 Vagrantfile 中,只需提及要使用的主厨版本,例如

Vagrant.configure("2") do |config|
  config.vm.provision "chef_solo" do |chef|
    chef.version = "12.10.24"
    chef.add_recipe ....
  end
end

【讨论】:

  • 谢谢,只是-当我尝试更改版本时-每次我有"Omnitruck artifact does not exist for version 12.9.38 on platform ubuntu"。 14.04、12.04、15,16 和 Chef 版本 12.10.24、12.9.41、12.9.38 相同:-|
  • @setevoy 您可以尝试从您的 VirtualMachine 中删除 /opt/chef-client 并再次运行配置程序吗?
  • @glg 嗨,感谢您的评论。不幸的是 - 不,不能,因为这个 Q 被问到 ~ 年前 :-)
  • @setevoy 哎呀我想念那个:)
猜你喜欢
  • 2016-09-17
  • 2013-06-07
  • 2021-06-20
  • 2017-11-05
  • 1970-01-01
  • 2018-06-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多