Vagrant 로 여러 VM 생성하기
Vagrant Plugin 설치
vagrant-vbguest is a Vagrant plugin which automatically installs the host's VirtualBox Guest Additions on the guest system.
$ vagrant plugin install vagrant-vbguest
Vagrant File 생성
$ vagrant init
Vagrant File 작성
$ vi Vagrantfile
Vagrant.configure("2") do |config|
config.vm.provision "shell", inline: "echo Hello"
config.vm.provider "virtualbox" do |vb|
vb.gui = false
vb.memory = "1536"
vb.cpus = "1"
#config.ssh.insert_key = false
#config.ssh.private_key_path = ["/Users/leo/vagrant/keypair"] #, "~/.vagrant.d/insecure_private_key"]
#config.vm.provision "file", source: "/Users/leo/vagrant/keypair/vagrant.pub", destination: "~/.ssh/authorized_keys"
end
config.vm.define "ansible" do |ansible|
ansible.vm.box = "centos/7"
ansible.vm.hostname = "ansible"
ansible.vm.provision "shell", inline: "sudo -i; yum update"
ansible.vm.network "private_network", ip:"192.168.100.11"
end
config.vm.define "c1" do |c1|
c1.vm.box = "centos/7"
c1.vm.hostname = "c1"
c1.vm.provision "shell", inline: "sudo -i; yum update"
c1.vm.network "private_network", ip:"192.168.100.51"
end
config.vm.define "c2" do |c2|
c2.vm.box = "centos/7"
c2.vm.hostname = "c2"
c2.vm.provision "shell", inline: "sudo -i; yum update"
c2.vm.network "private_network", ip:"192.168.100.52"
end
config.vm.define "windows" do |windows|
windows.vm.box = "qusztavvargadr/w16s"
windows.vm.hostname = "windows2016"
#master.vm.provision "shell", inline: "sudo -i; apt-get update"
windows.vm.network "private_network", ip:"192.168.100.101"
end
config.vm.define "ubuntu" do |ubuntu|
ubuntu.vm.box = "ubuntu/bionic64"
ubuntu.vm.hostname = "ubuntu"
ubuntu.vm.provision "shell", inline: "sudo -i; apt-get update"
ubuntu.vm.network "private_network", ip:"192.168.100.151"
end
end
Vagrant 로 ubuntu bionic64 설치하기
$ vagrant up ubuntu
vagrantcloud.com 의 ubuntu/bionic64 box 를 virtualbox 에 설치하게 된다.