Your browser doesn't support the features required by impress.js, so you are presented with a simplified version of this presentation.
For the best experience please use the latest Chrome, Safari or Firefox browser.
Say Goodbye to “It works on my machine” with Chef and Vagrant!!
by: Curt Gratz
Obligatory Who Am I
Co-owner of
Computer Know How
Member of TEAM ColdBox
Open CFML Foundation
Husband/Dad
What will we be covering?
- The Problem - “it works on my machine”
- The Solution - Chef and Vagrant
- Setting up a “Vagrant File” and "CookBooks"
- Comparing stacks quickly using Chef and Vagrant
The Problem
Solution 1: The Uber Readme
If you're lucky....
Install Party
- Webserver (Apache,Ngnix,IIS)
- CFML Engine (Adobe, Railo, Bluedragon)
- DB (MSSQL, MySQL, Oracle, etc)
- caching software (Couchbase, MongoDB, Terracotta)
Config Party (oh wait, theres more)
- Webserver
- CFML Engine
- DB Server
- cache
Setup Party (nope, not done yet)
- Get Code (clone repo, FTP, etc)
- Restore DB, run scripts
- Configure all the software to point to code
The Problem
PROBLEM
- Prone to human error
- Configuration errors
- Quickly drop out-of-sync production
- Requires special maintance
- Heavy Maintance
- Time Consuming
- Platform specfic
Solution 2: The Setup Script
If you're lucky....
Script Party
- Get Script Code (clone repo, FTP, etc)
- Configure script for your machine
- Run script
The Problem
PROBLEM
- Configuration errors
- Quickly drop out of sync production
- Requires special maintance
- Platform specfic
Solution 3: GLHF
Good Luck Have Fun....
The Problem
PROBLEM
- Not Repeatable
- Not Verifiable
- Not Isolated
- Difficult
- SLOW,SLOW,SLOW
The Solution
Chef and Vagrant....
Vagrant
A tool for creating, managing, and distributing portable development environments
Vagrant
Zero to VM in seconds
Vagrant
- CLI managment
- VM Creation
- Provisioning
- Scripted properties
- Single command setup
Vagrant
- Works on
- Mac
- Linux
- Windows
- ChromeOS
Vagrant
- Providers
- VirtualBox
- VMWare
- Hyper-V
- AWS
- Rackspace
- Digital Ocean
- and many more
Chef
Chef models IT infrastructure and application delivery as code, giving you the power and flexibility to achieve awesomeness.
Chef
- Code centeric
- Scalable
- Consistant
- Efficient
- Cookbooks
SOLUTION
- Repeatable
- Verifiable
- Isolated
- Understandable
- Pretty Fast
Vagrant Basic Principles
- Boxes
- VagrantFile
- 'vagrant' CLI
vagrant CLI
- vagrant up
- vagrant destroy
- vagrant halt
- vagrant suspend
You had me at hello
OK, great, so show me!