Your SlideShare is downloading. ×
0
Vagrant
Vagrant
Vagrant
Vagrant
Vagrant
Vagrant
Vagrant
Vagrant
Vagrant
Vagrant
Vagrant
Vagrant
Vagrant
Vagrant
Vagrant
Vagrant
Vagrant
Vagrant
Vagrant
Vagrant
Vagrant
Vagrant
Vagrant
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Vagrant

635

Published on

Published in: Technology
0 Comments
6 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
635
On Slideshare
0
From Embeds
0
Number of Embeds
18
Actions
Shares
0
Downloads
8
Comments
0
Likes
6
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Vagrant
  • 2. Agenda • Introduction to Vagrant • Create VM • Provisioning • plugins 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 3. Introduction 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 4. Vagrant • A open source command line VM provision tool • MIT licence • Still virtualization, but more easier, more flexible • Support shell, puppet, chef on provisioning 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 5. Easy to use and share http://www.vagrantbox.es/ http://puppet-vagrant-boxes.puppetlabs.com/ 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 6. Installation • Install virtualbox – https://www.virtualbox.org/wiki/Downloads • Install vagrant (support windows, mac, linux) – http://downloads.vagrantup.com/tags/v1.3.5 • Get GNU commands on windows (not necessary) – Install git (MINGW) – Install Cygwin (too fat) 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 7. Architecture Providers 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 8. How does it work? • Via VBoxManage tool • list running VM – $ VBoxManage list runningvms • pause VM – $ VBoxManage controlvm <vmname> pause • send poweroff single to VM (tells VM OS to shutdown) – $ VBoxManage controlvm <vmname> acpipowerbutton • … 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 9. Why we need it • Deploy a project on a machine for testing – mess things up – Fix it – …loop… • Environment specific – I can run it well on MY machine (cause I only test it on my machine) • Can not automate • I don‟t have machines… 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 10. Problem to solve • Provisioning: – automate trivial things • install httpd, mysql, config, config, config… • reuse: – Package configured VM as a “box” • testing: – clean environment for testing • Portable: – one box file – local machine 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 11. Create VM 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 12. Basic Commands • Vm status control: – – – – Up halt destroy reload (for config change) – resume – suspend 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 13. Create a VM • vagrant box add precise32 http://files.vagrantup.com/precise32.box • Vagrant init precise32 (new a vagrantfile) • Vagrant up (create VM) • vagrant ssh (get into the VM) 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 14. Networking • default : eth0 for NAT • Port forwarding – config.vm.network :forwarded_port, host: 8070, guest: 8070 • Host-only – config.vm.network :private_network, ip: "192.168.56.2“ • Bridge – config.vm.network :public_network – config.vm.network :public_network, :bridge => 'en0: Wi-Fi (AirPort)„ • (Not always work) 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 15. More settings in Vagrantfile • Hardware spec. – config.vm.provider :virtualbox do |vb| – vb.customize ["modifyvm", :id, "--memory", "1024"] – end • Hostname – config.vm.hostname = “YOUR_HOSTNAME“ • Share folder – config.vm.synced_folder "../data", "/vagrant_data“ host guest 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 16. Provisioning 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 17. Shell • Auto execute the shell script as root • Vagrantfile syntax: – config.vm.provision :shell, :path => "bootstrap.sh" • Command – $ vagrant provision –provision-with shell 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 18. Puppet • Auto apply a puppet script • Vagrantfile syntax: – config.vm.provision :puppet do |puppet| – puppet.manifests_path = "manifests" – puppet.manifest_file = "init.pp" – end • Folder structure: – Vagrantfile – Manifests – Init.pp 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 19. Plugins • vagrant plugin install vagrant-vbox-snapshot • vagrant plugin install vagrant-vbguest 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 20. Q&A 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 21. Backup Slides 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 22. Get ssh command on windows • ssh – Install git (MINGW) – Install Cygwin (too fat, I think) • There‟re many ways you can do to achieve this goal, My suggestion is to install git on your windows – Download git – 6 page quick tutorial • Then use putty to ssh in. 2/17/2014 Copyright 2013 Trend Micro Inc.
  • 23. Reference • http://www.slideshare.net/ihower/vagrant-osdc • https://github.com/mitchellh/vagrant-aws • http://kvz.io/blog/2013/01/16/vagrant-tip-keep-virtualboxguest-additions-in-sync/ 2/17/2014 Copyright 2013 Trend Micro Inc.

×