1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

VirtualBox/vagrantで2台サーバ構成の検証環境を作成する

Posted at

はじめに

VirtualBoxで新しいソフトウェアの動作検証はよくやるのですが、たまに2台構成(Manager/Agent型、Master/Slave型など)が必要になったときに、毎回ちまちま一つずつVM作っていたので、Vagrantfileでパパっと2台作れるようにまとめました。

作成する構成

環境情報

今回の作業環境は以下の通りです。

  • Windows 10 (64bit / Home)
  • VirtualBox 5.26
  • Vagrant 2.0.2

作ってみる

vagrantboxの準備

使用するboxを準備します。まずboxが置いてある場所
Vagrantbox.es
↑ここから欲しいboxのurlをコピー

コマンドプロンプト
vagrant box add {title} {url}
vagrant init -m {title}

{title}は、自分で自由に決めます。

ただ、自分が使いやすいような自作のBoxを準備してそれを使い回すほうがあとあとやりやすいと思うので、そのような方は以下参考にしてください。
CentOS7.4のvagrantbox作成

自分の環境では以下のコマンドを実行。

コマンドプロンプト
> vagrant box add centos74 D:\Vagrant\CentOS-7.4-x86_64.box
> vagrant init -m centos74

Vagrantfileの修正/vagrant up

vagrant initで作成されたVagrantfileを修正します。
config.vm.box = "centos74"は追加したBox名に合わせて修正してください。

Vagrantfile
Vagrant.configure("2") do |config|
  config.vm.box = "centos74"
  
  config.vm.define :vm1 do | vm1 |
    vm1.vm.hostname = "VM1"
    vm1.vm.network :private_network, ip: "192.168.33.10", virtualbox__intnet: "intnet"
    vm1.vm.network :forwarded_port, guest: 22, host: 2201, id: "ssh"
  end
  
  config.vm.define :vm2 do | vm2 |
    vm2.vm.hostname = "VM2"
    vm2.vm.network :private_network, ip: "192.168.33.20", virtualbox__intnet: "intnet"
    vm2.vm.network :forwarded_port, guest: 22, host: 2202, id: "ssh"
  end

end

<補足>

  • vm2.vm.network :forwarded_port,~ポートフォワードするSSHポートを指定しています。これがない場合、VM1のSSHポートはデフォルトの2222になりVM2は空いている2223に自動割りあてされます。

修正したらvagrant upします。

コマンドプロンプト
> vagrant up

以上、簡単!

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?