2012-09-06 9 views
80

Chciałbym zwiększyć pamięć RAM do co najmniej 1 GB i chciałbym skonfigurować sieć "Host-Only" do użycia "199.188.44.20".Jak zwiększyć pamięć RAM i skonfigurować sieć host-only w Vagrant?

To jest mój Vagrantfile:

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

Vagrant::Config.run do |config| 

    config.vm.customize ["modifyvm", :id, "--memory", 1024] 

    config.vm.network :hostonly, "199.188.44.20" 

    config.vm.define :web do |web_config| 
     web_config.vm.box = "lucid32" 
     web_config.vm.forward_port 80, 8080 

     web_config.vm.provision :puppet do |puppet| 
      puppet.manifests_path = "manifests" 
      puppet.manifest_file = "lucid32.pp" 
     end 
    end 

    config.vm.define :web2 do |web2_config| 
     web2_config.vm.box = "lucid32" 
     web2_config.vm.forward_port 80, 8081 

     web2_config.vm.provision :puppet do |puppet| 
      puppet.manifests_path = "manifests" 
      puppet.manifest_file = "myweb.pp" 
     end 
    end 
end 

Jednak, gdy biegnę vagrant up Dostaję:

VM nie pozostają w stanie "Running" podczas próby rozruchu. Jest to zwykle spowodowane błędną konfiguracją lub niezgodnym z systemem hosta. Proszę otworzyć VirtualBox GUI i próbować uruchomić maszynę wirtualną ręcznie, aby uzyskać bardziej pouczające komunikat o błędzie

A ja dostaję błąd connection refuse gdy próbuję zalogować się do VM.

+0

Zwiększenie pamięci RAM może pomóc, gdy pojawi się „Zabity” wiadomość. – wieczorek1990

Odpowiedz

56

Można modyfikować różne właściwości VM dodając następującą konfigurację (see the Vagrant docs for a bit more info):

# Configure VM Ram usage 
    config.vm.customize [ 
         "modifyvm", :id, 
         "--name", "Test_Environment", 
         "--memory", "1024" 
         ] 

można uzyskać właściwości, które chcesz zmienić z dokumentów dla VirtualBox opcjami wiersza polecenia:

vagrant documentation ma sekcję na temat zmień adres IP:

Vagrant::Config.run do |config| 
    config.vm.network :hostonly, "192.168.50.4" 
end 

Możesz także zrestrukturyzować konfigurację w ten sposób, kończąc na zakończeniu bez zagnieżdżania go. To jest łatwiejsze.

config.vm.define :web do |web_config| 
    web_config.vm.box = "lucid32" 
    web_config.vm.forward_port 80, 8080 
end 
web_config.vm.provision :puppet do |puppet| 
    puppet.manifests_path = "manifests" 
    puppet.manifest_file = "lucid32.pp" 
end 
+3

To działa z Vagrant 1.0.1 – Gourneau

94

Od Vagrant 1.1customize opcja jest coraz VirtualBox specyficzne.

Nowoczesny sposób to zrobić to:

config.vm.provider :virtualbox do |vb| 
    vb.customize ["modifyvm", :id, "--memory", "256"] 
end 
+1

Możesz także użyć 'vagrant up --provider = virtualbox' na http://docs.vagrantup.com/v2/providers/basic_usage.html – user456584

+2

Przez _nowoczesny sposób_ masz na myśli' VAGRANTFILE_API_VERSION = " 2 "', jak opisano w [Vagrant docs] (http://docs.vagrantup.com/v2/vagrantfile/version.html) – AlexT

7

nie mogłem dostać żadnej z tych odpowiedzi do pracy. Oto, co skończyło się na umieszczenie na samym szczycie mojej Vagrantfile, przed blokiem Vagrant::Config.run do:

Vagrant.configure("2") do |config| 
    config.vm.provider "virtualbox" do |vb| 
    vb.customize ["modifyvm", :id, "--memory", "1024"] 
    end 
end 

zauważyłem, że skrót styl accessor „vb.memory = 1024”, nie wydają się działać.

101

Aby zwiększyć liczbę pamięci lub procesora przy użyciu Vagrant 2, dodać do swojej Vagrantfile

Vagrant.configure("2") do |config| 
    # usual vagrant config here 

    config.vm.provider "virtualbox" do |v| 
     v.memory = 1024 
     v.cpus = 2 
    end 
end 
+8

Dzięki! Trzeba pamiętać, aby zrobić "vagrant halt" i "vagrant up", aby ponownie uruchomić maszynę z nowymi ustawieniami. Nie wystarczy "zawiesić włóczęgę". Przydałby się (* kaszląc *), żeby ktoś wiedział ... – larsr

+30

Możesz również wykonać polecenie "przeładuj ponownie" –

+1

Dla celów porównawczych: https://docs.vagrantup.com/v2/virtualbox/configuration.html –

0

można łatwo zwiększyć RAM VM poprzez modyfikację właściwości pamięci sekcji config.vm.provider w swojej włóczęgi plik.

config.vm.provider "virtualbox" do |vb| 
vb.memory = "4096" 
end 

Przydziela około 4 GB pamięci RAM do maszyny wirtualnej. Możesz to zmienić zgodnie z wymaganiami. Na przykład następujące ustawienie przydzieli 2 GB pamięci RAM do maszyny wirtualnej.

config.vm.provider "virtualbox" do |vb| 
vb.memory = "2048" 
end 

Spróbuj usunąć config.vm.customize ["modifyvm", :id, "--memory", 1024] ze swojego pliku i dodać powyższy kod.

Dla konfiguracji sieci, spróbuj modyfikując config.vm.network :hostonly, "199.188.44.20" w pliku do config.vm.network "private_network", ip: "199.188.44.20"

Powiązane problemy