2015-04-18 73 views
0

我正在嘗試使用Chef-Provisioning來啓動一些Vagrant虛擬機。 chef-client -z provision.rb命令運行併成功完成。我知道這臺機器或其他東西存在,因爲當我重新運行命令時,它可以毫不費力地完成這個運行。廚師提供 - 流浪漢:這個機器?

裏面knife.rb我定義配置文件:

profiles({ 
    'default' => { 
    }, 
    'ubuntu_vagrant' => { 
     :driver => 'vagrant:', 
     :machine_options => { 
     :vagrant_options => { 
      'vm.box' => 'chef/ubuntu-14.04', 
     } 
     } 
    }, 
    'ubuntu_docker' => { 
     :driver => 'docker', 
     :machine_options => { 
     :docker_options => { 
      :base_image => { 
      :name => 'ubuntu', 
      :tag => '14.04.2' 
      } 
     } 
     } 
    } 
    }) 

然後我執行sudo CHEF_PROFILE=ubuntu_vagrant chef-client -z provision.rb

provision.rb:

machine 'webserver' do 
    recipe 'djnginx' 
end 

結果:

sudo CHEF_PROFILE=ubuntu_vagrant chef-client -z provision.rb 
[2015-04-18T13:13:23-08:00] INFO: Started chef-zero at http://localhost:8889 with repository at /Users/djenriquez/chef-repo 
One version per cookbook 

[2015-04-18T13:13:23-08:00] INFO: Forking chef instance to converge... 
Starting Chef Client, version 12.2.1 
[2015-04-18T13:13:23-08:00] INFO: *** Chef 12.2.1 *** 
[2015-04-18T13:13:23-08:00] INFO: Chef-client pid: 948 
[2015-04-18T13:13:26-08:00] INFO: Run List is [] 
[2015-04-18T13:13:26-08:00] INFO: Run List expands to [] 
[2015-04-18T13:13:26-08:00] INFO: Starting Chef Run for djenriquez07 
[2015-04-18T13:13:26-08:00] INFO: Running start handlers 
[2015-04-18T13:13:26-08:00] INFO: Start handlers complete. 
[2015-04-18T13:13:26-08:00] INFO: HTTP Request Returned 404 Not Found : Object not found: /reports/nodes/djenriquez07/runs 
resolving cookbooks for run list: [] 
[2015-04-18T13:13:26-08:00] INFO: Loading cookbooks [] 
Synchronizing Cookbooks: 
Compiling Cookbooks... 
[2015-04-18T13:13:26-08:00] WARN: Node djenriquez07 has an empty run list. 
Converging 1 resources 
Recipe: @recipe_files::/Users/djenriquez/chef-repo/cookbooks/djnginx/provision.rb 
* machine[webserver] action converge[2015-04-18T13:13:26-08:00] INFO: Processing machine[webserver] action converge (@recipe_files::/Users/djenriquez/chef-repo/cookbooks/djnginx/provision.rb line 1) 
[2015-04-18T13:13:26-08:00] INFO: Processing vagrant_cluster[/] action create (basic_chef_client::block line 212) 
[2015-04-18T13:13:26-08:00] INFO: Processing directory[/] action create (basic_chef_client::block line 15) 
[2015-04-18T13:13:26-08:00] INFO: Processing file[/Vagrantfile] action create (basic_chef_client::block line 16) 
[2015-04-18T13:13:26-08:00] INFO: Processing file[/webserver.vm] action create (basic_chef_client::block line 232) 
[2015-04-18T13:13:26-08:00] INFO: Processing chef_node[webserver] action create (basic_chef_client::block line 57) 
[2015-04-18T13:13:31-08:00] INFO: Processing chef_node[webserver] action create (basic_chef_client::block line 57) 
[2015-04-18T13:13:31-08:00] INFO: Executing sudo cp /etc/chef/client.pem /tmp/client.pem.1379680942 on [email protected] 
[2015-04-18T13:13:32-08:00] INFO: Completed cp /etc/chef/client.pem /tmp/client.pem.1379680942 on [email protected]: exit status 0 
[2015-04-18T13:13:32-08:00] INFO: Executing sudo chown vagrant /tmp/client.pem.1379680942 on [email protected] 
[2015-04-18T13:13:32-08:00] INFO: Completed chown vagrant /tmp/client.pem.1379680942 on [email protected]: exit status 0 
[2015-04-18T13:13:32-08:00] INFO: Executing sudo rm /tmp/client.pem.1379680942 on [email protected] 
[2015-04-18T13:13:32-08:00] INFO: Completed rm /tmp/client.pem.1379680942 on [email protected]: exit status 0 
[2015-04-18T13:13:32-08:00] INFO: Processing chef_client[webserver] action create (basic_chef_client::block line 131) 
[2015-04-18T13:13:32-08:00] INFO: Processing chef_node[webserver] action create (basic_chef_client::block line 142) 
[2015-04-18T13:13:32-08:00] INFO: Port forwarded: local URL http://localhost:8889 is available to 127.0.0.1 as http://localhost:8889 for the duration of this SSH connection. 
[2015-04-18T13:13:32-08:00] INFO: Executing sudo ls -d /etc/chef/client.rb on [email protected] 
[2015-04-18T13:13:32-08:00] INFO: Completed ls -d /etc/chef/client.rb on [email protected]: exit status 0 
[2015-04-18T13:13:32-08:00] INFO: Executing sudo md5sum -b /etc/chef/client.rb on [email protected] 
[2015-04-18T13:13:32-08:00] INFO: Completed md5sum -b /etc/chef/client.rb on [email protected]: exit status 0 
[2015-04-18T13:13:32-08:00] INFO: Executing sudo chef-client -v on [email protected] 
[2015-04-18T13:13:33-08:00] INFO: Completed chef-client -v on [email protected]: exit status 0 
[2015-04-18T13:13:33-08:00] INFO: Processing chef_node[webserver] action create (basic_chef_client::block line 57) 
(up to date) 
[2015-04-18T13:13:33-08:00] INFO: Chef Run complete in 6.688063 seconds 

Running handlers: 
[2015-04-18T13:13:33-08:00] INFO: Running report handlers 
Running handlers complete 
[2015-04-18T13:13:33-08:00] INFO: Report handlers complete 
Chef Client finished, 0/1 resources updated in 9.993406 seconds 

但是我看着virutalbox,並沒有看到爲此實例創建的虛擬機,也不能訪問由djnginx食譜創建的靜態nginx頁面。

何處是我的虛擬機?還是廚師提供不實際爲我創造一個流浪VM?

如果我爲此烹飪書創建了一個Vagrantfile並運行vagrant up,則虛擬機啓動並且我可以導航到靜態nginx頁面。

回答

0

默認情況下,Vagrant機器存儲在「.chef/vms」中。您可以通過這個目錄並運行正常的流浪漢命令,e.g看清自己的現狀:

cd .chef/vms vagrant status

您也可以使用vagrant global-status命令來查看您的工作站上的任何虛擬機的狀態。這是一個有用的命令,因爲它還爲您提供了一個全局ID,您可以使用它在任何VM上發出vagrant命令,而不必使用Vagrantfile查找目錄。

+0

Tyvm!這些命令將非常有用! –

0

您可能希望在您的機器資源中設置converge true,至少在測試時。它似乎沒有在創建的虛擬機上運行你的配方。看起來已經創建了一個虛擬機,併成功地在其上運行了linux命令,所以即使找不到它,它仍在運行。