Kitchen无法将网络配置看成Vagrantfile

时间:2014-01-24 14:23:40

标签: vagrant

我正在使用厨房来测试我的食谱,我在Vagrantfile中进行了网络配置,但是厨房实例没有看到这种配置。

这是我的 Vagrantfile 配置。

# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|

  config.vm.hostname = "demo-berkshelf"

  config.vm.box = "ubuntu-12.04"

  config.vm.network :private_network, ip: "33.33.33.10"

  config.berkshelf.enabled = true

  config.vm.provision :chef_solo do |chef|
    chef.json = {
      :mysql => {
        :server_root_password => 'rootpass',
        :server_debian_password => 'debpass',
        :server_repl_password => 'replpass'
      }
    }

    chef.run_list = [
        "recipe[demo::default]"
    ]
  end
end

这是我的 .kitchen.yml 配置。

---
driver:
  name: vagrant

provisioner:
  name: chef_solo

platforms:
  - name: ubuntu-12.04
    driver_config:
      box: "ubuntu-12.04"

suites:
  - name: default
    run_list:
      - recipe[demo::default]
    attributes:

当我登录厨房时,向我显示我不希望

的网络配置
roberto@rcisla-pc:~$ kitchen login default-ubuntu-1204
Welcome to Ubuntu 12.04 LTS (GNU/Linux 3.2.0-23-generic-pae i686)

 * Documentation:  https://help.ubuntu.com/
Welcome to your Vagrant-built virtual machine.
Last login: Wed Jan 22 14:02:59 2014 from 10.0.2.2
vagrant@default-ubuntu-1204:~$ ifconfig 
eth0      Link encap:Ethernet  HWaddr 08:00:27:12:96:98  
          inet addr:10.0.2.15  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe12:9698/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:360 errors:0 dropped:0 overruns:0 frame:0
          TX packets:365 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:49328 (49.3 KB)  TX bytes:42004 (42.0 KB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

我在Vagrantfile中配置的33.33.33.10在哪里? 先谢谢你的帮助。

1 个答案:

答案 0 :(得分:2)

默认情况下,Test Kitchen不会使用您的Vagrantfile;它根据.kitchen.yml生成自己的。有关如何通过它配置网络的说明,请参阅the README。例如:

driver:
  name: vagrant
  network:
  - ["private_network", { ip: "192.168.33.10" }]

can也使用自定义Vagrantfile模板,但通常不需要它。有关示例,请参阅default template

最后,不要使用33.33.33。*地址。这是一个有人拥有的有效网络。使用来自10.0.0.0/8或192.168.0.0/16等专用网络的IP。 192.168.33。*似乎与Vagrant相当普遍。