【问题标题】:Create multiple host with Vagrant and VirtualBox使用 Vagrant 和 VirtualBox 创建多个主机
【发布时间】:2021-05-30 23:01:20
【问题描述】:

我有以下问题。我需要一个 Vagrant 文件来创建:

  • 3 台 Ubuntu 18.04 主机;
  • 1 Ubuntu 16.04 主机。

我有以下 Vagrant 文件:

require 'yaml'

# Load settings from servers.yml file.
environment = YAML.load_file('env.yaml')

...

Vagrant.configure("2") do |config|
    environment["servers"].each do |server|
        config.vm.define server["name"] do |srv_config|
            srv_config.vm.box = server["box"]
            srv_config.ssh.insert_key = false
            srv_config.vm.hostname = server["name"]
            srv_config.vm.network :private_network, ip: server["eth1"]
            srv_config.vm.provider "virtualbox" do |v|
                v.name = server["name"]
                v.customize ["modifyvm", :id, "--groups", "/Development"]
                v.customize ["modifyvm", :id, "--memory", server["mem"]]
                v.customize ["modifyvm", :id, "--cpus", server["cpu"]]
            end

            srv_config.vm.provision "file" ...
        end
    end
end

现在我希望这个 Vagrant 文件从外部 env.yml 文件中获取服务器配置(操作系统、CPU、内存、IP 等),如下所示:

servers:
- name: node-0
  box: generic/ubuntu1804
  eth1: 192.168.20.101
  mem: 1024
  cpu: 1
- name: node-1
  box: generic/ubuntu1804
  eth1: 192.168.20.102
  mem: 1024
  cpu: 1
- name: node-2
  box: generic/ubuntu1804
  eth1: 192.168.20.103
  mem: 1024
  cpu: 1
- name: legacy
  box: generic/ubuntu1604
  eth1: 192.168.20.105
  mem: 1024
  cpu: 1

我的问题是我不知道为什么创建节点:

  • node-0 使用 Ubuntu 16.04 而不是 18.04
  • node-1 与 Ubuntu 18.04(这是正确的)
  • node-2 与 Ubuntu 18.04(这是正确的)
  • 旧版 Ubuntu 16.04(这是正确的)

您可以理解我的主要问题是 node-0 是使用 Ubuntu 16.04 而不是 Ubuntu 18.04 创建的。为什么?我调试了代码,对于srv_config.vm.box,对于node-0,值是generic/ubuntu1804。此外,我正确地看到每台机器有 1 个 CPU 和 1 Gb RAM,但在 Virtual Box 中我没有看到开发组中的机器。 任何人都可以帮助我理解为什么会出现这些问题?

【问题讨论】:

    标签: vagrant virtualbox vagrantfile


    【解决方案1】:

    我想我解决了这个问题。该文件是正确的,问题是 Vagrant 缓存。我删除了.vagrant 文件夹并再次运行vagrant up

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-07-03
      • 2013-11-24
      • 1970-01-01
      • 2017-08-01
      • 2019-05-17
      • 2018-05-04
      • 2014-09-06
      • 1970-01-01
      相关资源
      最近更新 更多