【问题标题】:Vagrant installed through Chef (Kitchen) ignoring designated private IP in .kitchen.yml fileVagrant 通过 Chef (Kitchen) 安装,忽略 .kitchen.yml 文件中指定的私有 IP
【发布时间】:2017-12-02 05:05:36
【问题描述】:

我的 .kitchen.yml 文件中有以下信息,我在其中指定了 private_network ip。

    - name: dcos-bootstrap
driver:
  network:
    - ["private_network", {ip: "192.168.3.37"}]
run_list: abc::_dcos_bootstrap
driver:
  customize:
    cpus: 1
    memory: 2048
attributes:
  abc:
    defg:
      enable: true
      kube_node: true
includes:
  - centos-7.3

但是当我在我的流浪机器上执行“ip a”时,我得到以下结果,ip 为 10.0.2.15 而不是 192.168.3.37 -

    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
   valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
   valid_lft forever preferred_lft forever
    2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 08:00:27:cb:e3:7f brd ff:ff:ff:ff:ff:ff
inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic enp0s3
   valid_lft 86260sec preferred_lft 86260sec
inet6 fe80::df13:cd81:535b:3d27/64 scope link
   valid_lft forever preferred_lft forever
    3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN
link/ether 02:42:26:d3:6b:62 brd ff:ff:ff:ff:ff:ff
inet 172.17.0.1/16 scope global docker0
   valid_lft forever preferred_lft forever

有人可以帮忙吗?我正在使用 Vagrant 2.0.1。

完整的厨房.yml

---
driver:
  name: vagrant
  customize:
  cpus: 1
  memory: 2048

provisioner:
  name: chef_zero
  data_path: test/shared
  require_chef_omnibus: 12.17.44-1

platforms:
  - name: ubuntu-16.04
  - name: centos-7.3

suites:
  - name: dcos-bootstrap
    driver:
       network:
           - ["private_network", {ip: "192.168.3.37"}]
   run_list: abc::_dcos_bootstrap
   driver:
   customize:
       cpus: 1
       memory: 2048
   attributes:
       abc:
           defg:
           enable: true
           kube_node: true
  includes:
       - centos-7.3

【问题讨论】:

  • 请出示完整的厨房配置。
  • @coderanger - 我已将其包含在下面
  • 以后,您可以编辑您的问题以添加更多信息,这实际上并不是一个答案。

标签: vagrant chef-infra


【解决方案1】:

问题是您在套件对象下有 driver 键。它需要看起来像这样:

   suites:
     - name: dcos-bootstrap
       run_list: abc::_dcos_bootstrap
       driver:
         customize:
           cpus: 1
           memory: 2048
         network:
           - ["private_network", {ip: "192.168.3.37"}]
       attributes:
           abc:
               defg:
               enable: true
               kube_node: true
       includes:
           - centos-7.3

否则driver 键的第二个实例会完全覆盖第一个实例,如您所见。

【讨论】:

  • 这对我来说是一个愚蠢的错误。有效。非常感谢!
猜你喜欢
  • 1970-01-01
  • 2017-01-30
  • 1970-01-01
  • 1970-01-01
  • 2017-02-01
  • 1970-01-01
  • 2015-10-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多