web-dev-qa-db-ja.com

2つ以上のvagrantVMが独自のネットワークで通信できるようにする

パブリックIPを使用せずに直接通信できる複数のサーバーを作成したい。彼らはまだインターネットアクセスを必要としますが、ネットワークの外部から何も彼らに接続する必要はありません。通常、1つのボックスを作成しても機能しますが、サーバーを追加するとネットワークが失敗します。

MacOS:10.8.5
Virtualbox:4.3.12
GuestOS:Ubuntu「precise64」
Vagrant構成のバージョン2を使用する

ほとんどの場合、プライベートネットワークを使用すると、次のようになります。

saltminion01: Warning: Connection timeout. Retrying...
saltminion01: Warning: Connection timeout. Retrying...
saltminion01: Warning: Connection timeout. Retrying...
saltminion01: Warning: Connection timeout. Retrying...
saltminion01: Warning: Connection timeout. Retrying...
saltminion01: Warning: Connection timeout. Retrying...
saltminion01: Warning: Connection timeout. Retrying...
saltminion01: Warning: Connection timeout. Retrying...
saltminion01: Warning: Connection timeout. Retrying...

誰かがこれを行うサンプルVagrantfileを持っていますか?

16
Clutch

次に、2つのVMを作成する例を示します。

  • アルファ10.0.0.10
  • ベータ10.0.0.11

どちらかの内側からVM IPアドレスでもう一方に到達でき、外の世界に接続できます。

Vagrantfile:

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

# Vagrant multi-machine sample setup

Vagrant.configure("2") do |config|
  config.vm.define :alpha do |alpha|
    alpha.vm.box = "hashicorp/precise64"
    alpha.vm.network :private_network, ip: "10.0.0.10"
    alpha.vm.hostname = "alpha"
  end

  config.vm.define :beta do |beta|
    beta.vm.box = "hashicorp/precise64"
    beta.vm.network :private_network, ip: "10.0.0.11"
    beta.vm.hostname = "beta"
  end
end
28
BrianC