vagrant - 增加特定 vagrant box 的内存

标签 vagrant vagrantfile vagrant-windows vagrant-provision

我有这个 Vagrantfile。在这里,我将所有 VM 的内存定义为 2048。但是我希望我的傀儡师有 4096,代理有 2048。怎么做?

Vagrant.configure("2") do |config|
  config.vm.synced_folder ".", "/vagrant", type: "virtualbox"

  config.vm.provider "virtualbox" do |v|
    v.memory = 2048
    v.cpus = 2
  end

  config.vm.define "puppetmaster" do |pm|
    pm.vm.box = "centos/7"
    pm.vm.network "private_network", ip: "192.168.33.10"
    pm.vm.hostname = "puppetmaster"
  end

  config.vm.define "puppet-agent-centos" do |pac|
    pac.vm.box = "centos/7"
    pac.vm.network "private_network", ip: "192.168.33.11"
    pac.vm.hostname = "centos-agent"
  end

  config.vm.define "puppet-agent-ubuntu" do |pau|
    pau.vm.box = "ubuntu/xenial64"
    pau.vm.network "private_network", ip: "192.168.33.12"
    pau.vm.hostname = "ubuntu-agent"
  end
end

谢谢!

最佳答案

您可以通过覆盖特定 VM 的值轻松做到这一点

  config.vm.define "puppetmaster" do |pm|
    pm.vm.box = "centos/7"
    pm.vm.network "private_network", ip: "192.168.33.10"
    pm.vm.hostname = "puppetmaster"

    pm.vm.provider "virtualbox" do |pmv|
      pmv.memory = 4096
    end
  end

所以你的整个文件变成
Vagrant.configure("2") do |config|
  config.vm.synced_folder ".", "/vagrant", type: "virtualbox"

  config.vm.provider "virtualbox" do |v|
    v.memory = 2048
    v.cpus = 2
  end

  config.vm.define "puppetmaster" do |pm|
    pm.vm.box = "centos/7"
    pm.vm.network "private_network", ip: "192.168.33.10"
    pm.vm.hostname = "puppetmaster"

    pm.vm.provider "virtualbox" do |pmv|
      pmv.memory = 4096
    end
  end

  config.vm.define "puppet-agent-centos" do |pac|
    pac.vm.box = "centos/7"
    pac.vm.network "private_network", ip: "192.168.33.11"
    pac.vm.hostname = "centos-agent"
  end

  config.vm.define "puppet-agent-ubuntu" do |pau|
    pau.vm.box = "ubuntu/xenial64"
    pau.vm.network "private_network", ip: "192.168.33.12"
    pau.vm.hostname = "ubuntu-agent"
  end
end

关于vagrant - 增加特定 vagrant box 的内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43999126/

相关文章:

ssh - Vagrant WSL rsync 和 ssh 权限错误

javascript - 浏览器中JS字符集错误

php - 在 Mac OSX 上非常慢的 laravel homestead/vagrant/virtualbox

vagrant - 为什么 `vagrant up` 会导致出现 VirtualBox VM 窗口?

mysql - 使用 Vagrant 时如何导入 MySQL 数据库

Vagrant 与 Hyper-V Provider 一起运行 Laravel Homestead

linux - vagrant/ansible nginx 版本错误

kubernetes - 在Vagrant下使用Kubernetes公开用于主机的Traefik Web UI

Vagrant + Ansible 解析超慢

node.js - vagrant 端口转发不起作用 : Connection reset by peer