Lucas Arruda
lucas@ciandt.com
Virtualization and
Provisioning with
Vagrant and Puppet

Lucas Arruda
lucas@ciandt.com
Lucas Arruda
Based on Campinas-SP
DevOps @ CI&T
Open-Source enthusiast
~10 yrs on the road
Zend Certified Engineer PHP 5.3
Common
Scenario
●
Each developer has its own
predefined stack of
technologies.

Apache (native)

●

WAMP/XAMPP/MAMP

●

PHP 5.??

●

MySQL...
"If you've ever maintained a
large web application, one of
the hardest parts is onboarding
new resources."

"Running every...
BUT IT
WORKS
ON MY
MACHINE...
It's important to build
and maintain a
software using the
same requirements on
all environments it will
be deployed.
Change
Proposal
Vagrant up!

Create and
configure
lightweight,
reproducible
and portable
development
environments.
Virtualization
Boxes
Vagrantfile
Puppet

You can easily
automate
repetitive tasks,
quickly deploy
critical
applications, and
proactively
manage changes.
Manifests
Declarative Language
Serverless
LET'S PUT
SOME
HANDS
ON!
HMMM...
THIS IS
NICE,
HUH!?
How Vagrant works
Plug-ins
Bindler
Cachier
Host Manager
AWS / OpenStack / RackSpace
CopyMyConf
Nugrant
Rsync
Windows
Node / NodeMaster / Shell Comman...
How Puppet works
Puppet's Reusable Configuration Model
PuPHPet

ciandt.com
CAN'T WAIT
TO PUT
MY HANDS
ON IT!
Alternatives
rove.io
Debian-based distributions:

$ dpkg --get-selections > /backup/installed-software.log

# dpkg --set-selections < /backup/i...
Q&A
vagrantup.com
github.com/mitchellh/vagrant

puppetlabs.com
github.com/puppetlabs

vagrantbox.es

forge.puppetlabs.com
...
THANKS
FOR
BEING
HERE!
lunascar@gmail.com
@lunascarruda
google.com/+LucasArruda
fb.com/lucasnarruda
linkedin.com/in/larruda
github.com/larruda
co...
PHP Conference Brasil 2013 - Virtualização e Provisionamento de Ambientes com Vagrant e Puppet
Upcoming SlideShare
Loading in …5
×

PHP Conference Brasil 2013 - Virtualização e Provisionamento de Ambientes com Vagrant e Puppet

1,106 views

Published on

[This is an updated version of http://goo.gl/AoN9Tm]

Você já parou pra pensar que sua stack de desenvolvimento (Apache, PHP, MySQL, etc) consome recursos de sua máquina do trabalho ou pessoal em momentos que você não está desenvolvendo?

E quanto ao setup de ambiente e as muitas configurações que precisamos fazer a cada projeto novo que chega ou quando algum membro novo entra no time?

Logo depois, como garantir que todos do time estão utilizando exatamente as mesmas versões para garantir máxima compatibilidade entre os diversos ambientes (local, staging, produção, etc)?

Venha conhecer como a combinação entre duas tecnologias irá automatizar bastante processo manual economizando tempo e recursos e garantindo maior compatibilidade.

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

No Downloads
Views
Total views
1,106
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
0
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

PHP Conference Brasil 2013 - Virtualização e Provisionamento de Ambientes com Vagrant e Puppet

  1. 1. Lucas Arruda lucas@ciandt.com
  2. 2. Virtualization and Provisioning with Vagrant and Puppet Lucas Arruda lucas@ciandt.com
  3. 3. Lucas Arruda Based on Campinas-SP DevOps @ CI&T Open-Source enthusiast ~10 yrs on the road Zend Certified Engineer PHP 5.3
  4. 4. Common Scenario
  5. 5. ● Each developer has its own predefined stack of technologies. Apache (native) ● WAMP/XAMPP/MAMP ● PHP 5.?? ● MySQL 5.?? MariaDB ? ● Modules/Extensions ● Libraries & Dependencies ● PEAR/PECL/Composer ● Frameworks ● Tweaks, etc...
  6. 6. "If you've ever maintained a large web application, one of the hardest parts is onboarding new resources." "Running everything on a home machine and remembering to turn it all off in the end of the day is unfeasible." Software installation ● "A new members comes in? Oh... all it again. What!? Does he uses Windows XP!? oh my..." ● Config and tweaking ● Platform-related issues ● Time consuming op.
  7. 7. BUT IT WORKS ON MY MACHINE...
  8. 8. It's important to build and maintain a software using the same requirements on all environments it will be deployed.
  9. 9. Change Proposal
  10. 10. Vagrant up! Create and configure lightweight, reproducible and portable development environments.
  11. 11. Virtualization Boxes Vagrantfile
  12. 12. Puppet You can easily automate repetitive tasks, quickly deploy critical applications, and proactively manage changes.
  13. 13. Manifests Declarative Language Serverless
  14. 14. LET'S PUT SOME HANDS ON!
  15. 15. HMMM... THIS IS NICE, HUH!?
  16. 16. How Vagrant works
  17. 17. Plug-ins
  18. 18. Bindler Cachier Host Manager AWS / OpenStack / RackSpace CopyMyConf Nugrant Rsync Windows Node / NodeMaster / Shell Commander VBGuest
  19. 19. How Puppet works
  20. 20. Puppet's Reusable Configuration Model
  21. 21. PuPHPet ciandt.com
  22. 22. CAN'T WAIT TO PUT MY HANDS ON IT!
  23. 23. Alternatives
  24. 24. rove.io
  25. 25. Debian-based distributions: $ dpkg --get-selections > /backup/installed-software.log # dpkg --set-selections < /backup/installed-software.log && dselect RPM-based distributions: $ rpm -qa > /backup/installed-software.log # yum -y install $(cat /backup/installed-software.log)
  26. 26. Q&A vagrantup.com github.com/mitchellh/vagrant puppetlabs.com github.com/puppetlabs vagrantbox.es forge.puppetlabs.com docs.vagrantup.com docs.puppetlabs.com ciandt.com
  27. 27. THANKS FOR BEING HERE!
  28. 28. lunascar@gmail.com @lunascarruda google.com/+LucasArruda fb.com/lucasnarruda linkedin.com/in/larruda github.com/larruda coderbits.com/larruda ciandt.com

×