web-dev-qa-db-ja.com

VagrantでRAMを増やし、ホストオンリーネットワークを設定するにはどうすればよいですか?

RAMを少なくとも1 GBに増やし、「ホストのみ」のネットワーキングを構成して「199.188.44.20」を使用したいと思います。

これは私の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

ただし、vagrant upを実行すると、次のようになります。

VMは、起動の試行中に「実行中」状態を維持できませんでした。これは通常、構成の誤りまたはホストシステムの互換性が原因です。VirtualBoxGUIを開いて、仮想マシンの起動を試みてくださいより詳細なエラーメッセージを手動で取得する

そして、VMにログインしようとするとconnection refuseエラーが表示されます。

89
Dc Redwing

次の構成を追加することで、さまざまなVMプロパティを変更できます( 詳細についてはVagrantのドキュメントを参照 ):

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

VirtualBoxコマンドラインオプションのドキュメントから変更するプロパティを取得できます。

vagrant documentation には、IPアドレスを変更する方法に関するセクションがあります。

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

また、このように構成を再構築することもできます。終了は、ネストせずに終了で行います。これは簡単です。

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
62
pyfunc

Vagrant 2の使用時にメモリまたはCPUの数を増やすには、これをVagrantfileに追加します

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

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

Vagrant 1.1customizeオプションがVirtualBox固有になっているため。

それを行う現代的な方法は次のとおりです。

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

私はこれらの答えのどれもうまくいかなかった。 Vagrant::Config.run doブロックの前に、Vagrantfileの最上部に配置した結果は次のとおりです。

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

ショートカットアクセサスタイル "vb.memory = 1024"が機能していないようでした。

7
esharp

Vagrantファイルのconfig.vm.providerセクションのメモリプロパティを変更することで、VMのRAMを簡単に増やすことができます。

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

これにより、約4GBのRAMがVMに割り当てられます。これは要件に応じて変更できます。たとえば、次の設定では、VMに2GBのRAMを割り当てます。

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

ファイルからconfig.vm.customize ["modifyvm", :id, "--memory", 1024]を削除して、上記のコードを追加してみてください。

ネットワーク構成については、ファイルのconfig.vm.network :hostonly, "199.188.44.20"をtoconfig.vm.network "private_network", ip: "199.188.44.20"に変更してみてください

2
codeness93