Come si aumenta la RAM e si configura la rete solo host in Vagrant?


95

Vorrei aumentare la RAM ad almeno 1 GB e vorrei configurare la rete "Solo host" per utilizzare "199.188.44.20".

Questo è il mio 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

Tuttavia, quando corro vagrant upricevo:

La VM non è riuscita a rimanere nello stato "in esecuzione" durante il tentativo di avvio. Ciò è normalmente causato da una configurazione errata o da incompatibilità del sistema host. Apri la GUI di VirtualBox e prova ad avviare manualmente la macchina virtuale per ottenere un messaggio di errore più informativo

E ricevo un connection refuseerrore quando provo ad accedere alla VM.


L'aumento della RAM potrebbe essere utile quando viene visualizzato il messaggio "Killed".
wieczorek1990

Risposte:


63

È possibile modificare varie proprietà della VM aggiungendo la seguente configurazione ( vedere la documentazione di Vagrant per maggiori informazioni ):

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

È possibile ottenere le proprietà che si desidera modificare dai documenti per le opzioni della riga di comando di VirtualBox:

La documentazione del vagabondo contiene la sezione su come modificare l'indirizzo IP:

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

Inoltre puoi ristrutturare la configurazione in questo modo, terminando con end senza annidarlo. Questo è più semplice.

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

143

Per aumentare la memoria o il conteggio della CPU quando usi Vagrant 2, aggiungilo al tuo Vagrantfile

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

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

14
Grazie! Bisogna ricordarsi di fare vagrant halte vagrant upriavviare la macchina con le nuove impostazioni. Non è sufficiente farlo vagrant suspend. Potrebbe essere utile per (* tosse *) qualcuno da conoscere ...
larsr

41
Puoi anche farlovagrant reload
Matt Frear


Puoi scrivere anche in questo modo config.vm.provider:
virtualbox


7

Non sono riuscito a far funzionare nessuna di queste risposte. Ecco cosa ho finito per mettere all'inizio del mio Vagrantfile, prima del Vagrant::Config.run doblocco:

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

Ho notato che lo stile dell'accessorio di scelta rapida, "vb.memory = 1024", non sembrava funzionare.


3

Puoi facilmente aumentare la RAM della tua VM modificando la proprietà di memoria della sezione config.vm.provider nel tuo file vagrant.

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

Questo alloca circa 4 GB di RAM alla tua VM. È possibile modificarlo in base alle proprie esigenze. Ad esempio, la seguente impostazione allocherà 2 GB di RAM alla tua VM.

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

Prova a rimuovere il file config.vm.customize ["modifyvm", :id, "--memory", 1024] nel tuo file e ad aggiungere il codice sopra.

Per la configurazione di rete, prova a modificare il config.vm.network :hostonly, "199.188.44.20"nel tuo file inconfig.vm.network "private_network", ip: "199.188.44.20"

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.