• CTO at Cult of Bits
• 10+ years of professional Java
development
Me
Slide 4
Slide 4 text
What are we
going to talk
about?
Slide 5
Slide 5 text
What?
Stop installing things
by hand
Slide 6
Slide 6 text
Why?
Slide 7
Slide 7 text
Why?
Because it’s
Boring
Slide 8
Slide 8 text
Why?
Because you will make
mistakes
Slide 9
Slide 9 text
Why?
Ultimately, because
it’s something that
your computer can do
better and cheaper.
Slide 10
Slide 10 text
Chef
Slide 11
Slide 11 text
Chef
Chef is an automation platform that
transforms infrastructure into code.
source: http://www.opscode.com/chef/
Slide 12
Slide 12 text
Chef variants
Slide 13
Slide 13 text
Chef variants
Chef Server
Slide 14
Slide 14 text
Chef variants
Chef Server
Use it to manage
many computers
Slide 15
Slide 15 text
Chef variants
Chef Solo
chef-solo is an open source version of
the chef-client that allows using
cookbooks with nodes without
requiring access to a server.
Slide 16
Slide 16 text
(some)
Chef
concepts
Slide 17
Slide 17 text
Chef concepts
Node
A node is any physical, virtual, or cloud
machine that is configured to be
maintained by a chef-client.
Slide 18
Slide 18 text
Chef concepts
Role
A role is a way to define certain patterns
and processes that exist across nodes in
an organization as belonging to a single
job function.
Slide 19
Slide 19 text
Chef concepts
Cookbook
A cookbook is the fundamental unit of
configuration and policy distribution.
Each cookbook defines a scenario, such
as everything needed to install and
configure MySQL, and then it contains all
of the components that are required to
support that scenario
Slide 20
Slide 20 text
What else are
we going to
talk about?
Slide 21
Slide 21 text
What?
Get rid of the
“it works on my
machine”
issues
Slide 22
Slide 22 text
Why?
Slide 23
Slide 23 text
Why?
Because it’s a
waste of time
Slide 24
Slide 24 text
Why?
Because it reflects
poorly on you
Slide 25
Slide 25 text
Vagrant
Slide 26
Slide 26 text
Vagrant
Vagrant is a tool for building complete
development environments. Vagrant
lowers development environment setup
time, increases development/production
parity, and makes the "works on my
machine" excuse a relic of the past.
source: http://www.vagrantup.com/
Slide 27
Slide 27 text
Vagrant
concepts
Slide 28
Slide 28 text
Vagrant concepts
Providers
Enable Vagrant to work with different
backends: VirtualBox (the default),
VMware Fusion (paid), AWS, Rackspace,
Digital Ocean, etc…
Slide 29
Slide 29 text
Vagrant concepts
Boxes
Boxes are the skeleton from which
Vagrant machines are constructed. They
are portable files which can be used by
others on any platform that runs Vagrant
to bring up a working environment.
!
Boxes are provider specific.
Slide 30
Slide 30 text
Vagrant concepts
Vagrantfile
The primary function of the Vagrantfile is
to describe the type of machine required
for a project, and how to configure and
provision these machines.
!
Commit them to version control.
Slide 31
Slide 31 text
DEMO
TIME
available at: https://vimeo.com/77776149
Slide 32
Slide 32 text
References
Slide 33
Slide 33 text
The Chef Homepage
http://www.opscode.com/chef/
The Vagrant Homepage
http://www.vagrantup.com/
A big list of available Vagrant boxes
http://www.vagrantbox.es/
References