# Farid | Vagrant Tutorial Windows 10 ## Install Vagrant Tools yang dibutuhkan: - VirtualBox - Vagrant - Terminal 1. Download Vagrant untuk windows 32/64bit. > https://www.vagrantup.com/downloads 2. Install vagrant pilih next semua, kemudian restart. ![](https://i.imgur.com/H4N2zKO.png) 3. Cek vagrant dengan cmd jika sudah berhasil terinstall. ![](https://i.imgur.com/Pfqvmw1.png) --- ## Setup Vagrant Workspace Buat folder untuk konfigurasi vagrant yang nantinya digunakan untuk menyimpan vagrantfile. ``` D:\> mkdir vagrant/ubuntu-xenial (bisa di sesuaikan) D:\> cd ubuntu-xenial ``` Buat vagrantfile dengan perintah. ``` D:\vagrant\ubuntu-xenial> vagrant init ``` ![](https://i.imgur.com/eXTIVnP.png) --- ## Konfigurasi Vagrantfile Buka vagrantfile dengan text editor, lalu tambahkan konfig berikut: - Untuk membuat vm dengan os ubuntu/xenial yang di dapat dari [Vagrant Cloud](https://app.vagrantup.com/ubuntu/boxes/xenial64). ``` Vagrant.configure("2") do |config| #untuk memasang vm dengan os ubuntu/xenial config.vm.box = "ubuntu/xenial64" #untuk mengaktifkan ip public config.vm.network "public_network" #untuk custom memory dan cpu config.vm.provider "virtualbox" do |v| v.memory = 1024 v.cpus = 2 end end ``` Untuk menjalankan vagrant, gunakan perintah: ``` vagrant up ``` ![](https://i.imgur.com/09a2qtI.png) Untuk mengakses vm vagrant gunakan perintah: ``` vagrant ssh ``` note: pastikan ketika mau mengakses masuk ke dalam folder yang sudah terinstall os, karena terdapat private_key ssh. Untuk mematikan vm, gunakan perintah: ``` vagrant halt ``` Untuk menghapus vm, gunakan perintah: ``` vagrant destroy ``` --- ## Cara Membuat Multi VM Tambahkan ke dalam vagrantfile, perintah berikut: ``` # This file is to setup Ubuntu VM servers Vagrant.configure("2") do |config| vm_box = "ubuntu/xenial64" config.vm.define "admin" do |admin| admin.vm.box = vm_box admin.vm.hostname = 'ubuntu-xenial-admin' admin.vm.network "private_network", ip: "192.168.56.200" admin.vm.provider :virtualbox do |vb| vb.name = "admin-server" end end config.vm.define "db1" do |db1| db1.vm.box = vm_box db1.vm.hostname = 'ubuntu-xenial-db1' db1.vm.network "private_network", ip: "192.168.56.211" db1.vm.provider :virtualbox do |vb| vb.name = "db1-server" end end config.vm.define "app1" do |app1| app1.vm.box = vm_box app1.vm.hostname = 'ubuntu-xenial-app1' app1.vm.network "private_network", ip: "192.168.56.221" app1.vm.provider :virtualbox do |vb| vb.name = "app1-server" end end end ``` Untuk akses ke server dengan ssh, gunakan perintah: ``` vagrant ssh admin # gunakan salah satu nama vm: admin, db1, app1 ``` **Referensi:** https://zemian.github.io/2018/05/19/create-multiple-vms-using-vagrant/