多机 Vagrant 设置仅创建两个虚拟机之一

多机 Vagrant 设置仅创建两个虚拟机之一

下面的 VagrantFile 应该创建 2 个 VM,但是运行时vagrant up只有 1 个 VM 启动(这似乎是在 2 个 VM 之间半随机选择的)。无论哪个 VM 先启动,我都会收到一条消息(位于 VagrantFile 之后),说通过 SSH 发送的命令可能失败了。我不确定这个问题的真正原因,但目前我假设它与可能失败的命令有关。

Vagrant文​​件:

Vagrant.configure("2") do |config|
    serverVals= {
            :hostname => "server-vagrant",
            :box => "rough working RHEL8 Server Installed.box",
            :name => "TEST - SERVER VAGRANT",
            :cpus => "4",
            :mem => "9216",
        }

    config.vm.define serverVals[:name] do |server|
        config.vm.synced_folder '.', '/vagrant', disabled: true
        config.vm.allow_fstab_modification = false

        server.vm.box = serverVals[:box]
        server.vm.provider :virtualbox do |vb|
            vb.gui = true
            vb.customize ["modifyvm", :id, "--name", serverVals[:name]]
            vb.customize ["modifyvm", :id, "--memory", serverVals[:mem]]
            vb.customize ["modifyvm", :id, "--cpus", serverVals[:cpus]]
        end
    end

    clientVals= {
            :hostname => "client-vagrant",
            :box => "rough working RHEL8 Client Installed.box",
            :name => "TEST - CLIENT VAGRANT",
            :cpus => "4",
            :mem => "9216",
        }

   

    config.vm.define clientVals[:name] do |client|
        config.vm.synced_folder '.', '/vagrant', disabled: true
        config.vm.allow_fstab_modification = false

        client.vm.box = clientVals[:box]
        client.vm.provider :virtualbox do |vb2|
            vb2.gui = true
            vb2.customize ["modifyvm", :id, "--name", clientVals[:name]]
            vb2.customize ["modifyvm", :id, "--memory", clientVals[:mem]]
            vb2.customize ["modifyvm", :id, "--cpus", clientVals[:cpus]]
        end
    end
end

错误信息:

sed -i '/#VAGRANT-BEGIN/,/#VAGRANT-END/d' /etc/fstab

Stdout from the command:

Stderr from the command:

我尝试添加以下两行以禁止sed运行该命令,看看这是否是导致第二台虚拟机无法创建的原因。

  1. config.vm.synced_folder '.', '/vagrant', disabled: true
  2. config.vm.allow_fstab_modification = false

我期望错误信息消失,但它仍然存在。

相关内容