SlideShare ist ein Scribd-Unternehmen logo
1 von 29
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 5.?? MariaDB ?

●

Modules/Extensions

●

Libraries & Dependencies

●

PEAR/PECL/Composer

●

Frameworks

●

Tweaks, etc...
"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.
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 Commander
VBGuest
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/installed-software.log && dselect

RPM-based distributions:

$ rpm -qa > /backup/installed-software.log

# yum -y install $(cat /backup/installed-software.log)
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
THANKS
FOR
BEING
HERE!
lunascar@gmail.com
@lunascarruda
google.com/+LucasArruda
fb.com/lucasnarruda
linkedin.com/in/larruda
github.com/larruda
coderbits.com/larruda

ciandt.com

Weitere ähnliche Inhalte

Was ist angesagt?

'MICROFRONTENDS WITH REACT' by Liliia Karpenko
 'MICROFRONTENDS WITH REACT' by Liliia Karpenko 'MICROFRONTENDS WITH REACT' by Liliia Karpenko
'MICROFRONTENDS WITH REACT' by Liliia Karpenko
OdessaJS Conf
 

Was ist angesagt? (20)

Swift for back end: A new generation of full stack languages?
Swift for back end: A new generation of full stack languages?Swift for back end: A new generation of full stack languages?
Swift for back end: A new generation of full stack languages?
 
'MICROFRONTENDS WITH REACT' by Liliia Karpenko
 'MICROFRONTENDS WITH REACT' by Liliia Karpenko 'MICROFRONTENDS WITH REACT' by Liliia Karpenko
'MICROFRONTENDS WITH REACT' by Liliia Karpenko
 
Laravel Dusk
Laravel DuskLaravel Dusk
Laravel Dusk
 
10 tips for continuous integration
10 tips for continuous integration10 tips for continuous integration
10 tips for continuous integration
 
How fast can you onboard a new team member with VAGRANT ?
How fast can you onboard a new team member with VAGRANT ?How fast can you onboard a new team member with VAGRANT ?
How fast can you onboard a new team member with VAGRANT ?
 
Getting your project_started
Getting your project_startedGetting your project_started
Getting your project_started
 
Project management frameworks for software developing
Project management frameworks for software developingProject management frameworks for software developing
Project management frameworks for software developing
 
Vagrant + SaltStack + Django - Ararat Poghosyan - DM10
Vagrant + SaltStack + Django - Ararat Poghosyan - DM10Vagrant + SaltStack + Django - Ararat Poghosyan - DM10
Vagrant + SaltStack + Django - Ararat Poghosyan - DM10
 
Introduce native client
Introduce native clientIntroduce native client
Introduce native client
 
Managing Complexity with Module::Release
Managing Complexity with Module::ReleaseManaging Complexity with Module::Release
Managing Complexity with Module::Release
 
ZendCon 2015 - Laravel Forge: Hello World to Hello Production
ZendCon 2015 - Laravel Forge: Hello World to Hello ProductionZendCon 2015 - Laravel Forge: Hello World to Hello Production
ZendCon 2015 - Laravel Forge: Hello World to Hello Production
 
Vaadin slides for @Devoxx 2012
Vaadin slides for @Devoxx 2012Vaadin slides for @Devoxx 2012
Vaadin slides for @Devoxx 2012
 
Web Leaps Forward
Web Leaps ForwardWeb Leaps Forward
Web Leaps Forward
 
The bugfix confirmation loop - PyConFI 2013
The bugfix confirmation loop - PyConFI 2013The bugfix confirmation loop - PyConFI 2013
The bugfix confirmation loop - PyConFI 2013
 
Ipython notebook
Ipython notebookIpython notebook
Ipython notebook
 
Fastlane
FastlaneFastlane
Fastlane
 
Andrii Shumada "No excuses for not writing tests"
Andrii Shumada "No excuses for not writing tests"Andrii Shumada "No excuses for not writing tests"
Andrii Shumada "No excuses for not writing tests"
 
Grunt js and WordPress
Grunt js and WordPressGrunt js and WordPress
Grunt js and WordPress
 
Build Chef development box from scratch
Build Chef development box from scratchBuild Chef development box from scratch
Build Chef development box from scratch
 
Xdebug for Beginners
Xdebug for BeginnersXdebug for Beginners
Xdebug for Beginners
 

Andere mochten auch (12)

This Is Why We Can't Have Nice Things
This Is Why We Can't Have Nice ThingsThis Is Why We Can't Have Nice Things
This Is Why We Can't Have Nice Things
 
Motley Fool One Mindset Charts
Motley Fool One Mindset ChartsMotley Fool One Mindset Charts
Motley Fool One Mindset Charts
 
MKT531 Corporate Branding Gavin Teggart
MKT531 Corporate Branding Gavin TeggartMKT531 Corporate Branding Gavin Teggart
MKT531 Corporate Branding Gavin Teggart
 
Bastiar
BastiarBastiar
Bastiar
 
Bahtiar bab
Bahtiar babBahtiar bab
Bahtiar bab
 
Tugas bastiar tes prensetasi akademik
Tugas bastiar tes prensetasi akademikTugas bastiar tes prensetasi akademik
Tugas bastiar tes prensetasi akademik
 
96x1 poeers2550t
96x1 poeers2550t96x1 poeers2550t
96x1 poeers2550t
 
1
11
1
 
Kayoze irani
Kayoze iraniKayoze irani
Kayoze irani
 
Pp. dewi ariani bab 6
Pp. dewi ariani bab 6Pp. dewi ariani bab 6
Pp. dewi ariani bab 6
 
BASTIAR go
BASTIAR goBASTIAR go
BASTIAR go
 
Para mi hermano
Para mi hermanoPara mi hermano
Para mi hermano
 

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

Screaming Fast Wpmu
Screaming Fast WpmuScreaming Fast Wpmu
Screaming Fast Wpmu
djcp
 

Ähnlich wie PHP Conference Brasil 2013 - Virtualização e Provisionamento de Ambientes com Vagrant e Puppet (20)

Scaling php - Intercon php
Scaling php - Intercon phpScaling php - Intercon php
Scaling php - Intercon php
 
"The life beyond Terraform, or the rise of Platform Engineering", Stanislav ...
"The life beyond Terraform, or the rise of Platform Engineering",  Stanislav ..."The life beyond Terraform, or the rise of Platform Engineering",  Stanislav ...
"The life beyond Terraform, or the rise of Platform Engineering", Stanislav ...
 
Setting advanced PHP development environment
Setting advanced PHP development environmentSetting advanced PHP development environment
Setting advanced PHP development environment
 
Unikernel User Summit 2015: Getting started in unikernels using the rump kernel
Unikernel User Summit 2015: Getting started in unikernels using the rump kernelUnikernel User Summit 2015: Getting started in unikernels using the rump kernel
Unikernel User Summit 2015: Getting started in unikernels using the rump kernel
 
Docker for local development
Docker for local developmentDocker for local development
Docker for local development
 
Professional PHP: an open-source alternative for enterprise development [Kort...
Professional PHP: an open-source alternative for enterprise development [Kort...Professional PHP: an open-source alternative for enterprise development [Kort...
Professional PHP: an open-source alternative for enterprise development [Kort...
 
OpenSouthCode 2016 - Accenture DevOps Platform 2016-05-07
OpenSouthCode 2016  - Accenture DevOps Platform 2016-05-07OpenSouthCode 2016  - Accenture DevOps Platform 2016-05-07
OpenSouthCode 2016 - Accenture DevOps Platform 2016-05-07
 
Modern Web-site Development Pipeline
Modern Web-site Development PipelineModern Web-site Development Pipeline
Modern Web-site Development Pipeline
 
Ria Applications And PHP
Ria Applications And PHPRia Applications And PHP
Ria Applications And PHP
 
Uvod u php - Danilo Purić i Tarik Zaimović
Uvod u php - Danilo Purić i Tarik ZaimovićUvod u php - Danilo Purić i Tarik Zaimović
Uvod u php - Danilo Purić i Tarik Zaimović
 
Node & Express as Workflow Tools
Node & Express as Workflow ToolsNode & Express as Workflow Tools
Node & Express as Workflow Tools
 
Dotnet on linux
Dotnet on linuxDotnet on linux
Dotnet on linux
 
Devops with Python by Yaniv Cohen DevopShift
Devops with Python by Yaniv Cohen DevopShiftDevops with Python by Yaniv Cohen DevopShift
Devops with Python by Yaniv Cohen DevopShift
 
Dockerize magento 2 24.02.2016
Dockerize magento 2   24.02.2016Dockerize magento 2   24.02.2016
Dockerize magento 2 24.02.2016
 
Teaching Open Source In The University
Teaching Open Source In The UniversityTeaching Open Source In The University
Teaching Open Source In The University
 
Automated deployment
Automated deploymentAutomated deployment
Automated deployment
 
Screaming Fast Wpmu
Screaming Fast WpmuScreaming Fast Wpmu
Screaming Fast Wpmu
 
Powering tensor flow with big data using apache beam, flink, and spark cern...
Powering tensor flow with big data using apache beam, flink, and spark   cern...Powering tensor flow with big data using apache beam, flink, and spark   cern...
Powering tensor flow with big data using apache beam, flink, and spark cern...
 
Whoops! I Rewrote It in Rust
Whoops! I Rewrote It in RustWhoops! I Rewrote It in Rust
Whoops! I Rewrote It in Rust
 
Making sense of the front-end, for PHP developers
Making sense of the front-end, for PHP developersMaking sense of the front-end, for PHP developers
Making sense of the front-end, for PHP developers
 

Mehr von Lucas Arruda

Mehr von Lucas Arruda (6)

Serverless no Google Cloud
Serverless no Google CloudServerless no Google Cloud
Serverless no Google Cloud
 
How to build an ETL pipeline with Apache Beam on Google Cloud Dataflow
How to build an ETL pipeline with Apache Beam on Google Cloud DataflowHow to build an ETL pipeline with Apache Beam on Google Cloud Dataflow
How to build an ETL pipeline with Apache Beam on Google Cloud Dataflow
 
Escalando PHP e Drupal: performance ao infinito e além! - DrupalCamp SP 2015
Escalando PHP e Drupal: performance ao infinito e além! - DrupalCamp SP 2015Escalando PHP e Drupal: performance ao infinito e além! - DrupalCamp SP 2015
Escalando PHP e Drupal: performance ao infinito e além! - DrupalCamp SP 2015
 
Selling the Open-Source Philosophy - DrupalCon Latin America
Selling the Open-Source Philosophy - DrupalCon Latin AmericaSelling the Open-Source Philosophy - DrupalCon Latin America
Selling the Open-Source Philosophy - DrupalCon Latin America
 
InterConPHP 2014 - Scaling PHP
InterConPHP 2014 - Scaling PHPInterConPHP 2014 - Scaling PHP
InterConPHP 2014 - Scaling PHP
 
1st CI&T Lightning Talks: Writing better code with Object Calisthenics
1st CI&T Lightning Talks: Writing better code with Object Calisthenics1st CI&T Lightning Talks: Writing better code with Object Calisthenics
1st CI&T Lightning Talks: Writing better code with Object Calisthenics
 

Kürzlich hochgeladen

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Kürzlich hochgeladen (20)

MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 

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