SlideShare uma empresa Scribd logo
1 de 13
Baixar para ler offline
DevOps: What is it and why is it important? 
Mark Stillwell 
September 28, 2014
Traditional Development/Deployment best practices 
I source code only in vcs 
I static release as versioned archive 
I unit testing of code in development environment 
I
nal product not installed on developer machine 
I deployment instructions via howto or interactive application 
I time consuming 
I dicult to replicate
Similar Work
ows 
I Collaborating on a paper by emailing Word .doc
les 
I Developing software without vcs, periodically creating 
versioned/dated zip
le in a backup/ directory
Issues With These Approaches 
I Coordination, Communication, Documentation: 
I I'll edit the document and email you when I'm done. 
I I had to tinker with /etc/foo to get things working. 
I Handling of con
icts 
I No automating of merges 
I Lack of one true authoritative latest version. 
I Culture of Fear 
I I know generally what needs to be done, but I'm afraid to try 
because I might break it and not be able to get things working 
again.
Software Speci
c Issues 
I Diculty verifying complicated interaction between multiple 
parts. 
I Brittle deployment: It works, mostly, but don't touch it! 
I Experts-Only install discourages end-users, results in lower 
adoption/mindshare.
DevOps 
I deployment as code in vcs 
I continuously tested 
I test environment similar to deployment environment 
I enabled by virtual machines and containers 
I regular deployments to production 
I industry standard practice! 
I NetFlix, Etsy, Twitter, etc tear down infrastructure and 
redeploy multiple times per day. . . 
I culture of fearless development
Enabling Technologies 
I ansible 
I vagrant 
I docker
Ansible 
I tool for managing distributed software deployments 
I similar tools: puppet, chef, salt, cfengine 
I free software (for command line, commercial web-based 
management interface) 
I written in python 
I con
guration as list of idempotent tasks in yaml based 
con

Mais conteúdo relacionado

Mais procurados

CoffeeScript in 5mins
CoffeeScript in 5minsCoffeeScript in 5mins
CoffeeScript in 5mins
Masakuni Kato
 
HTML5 Multithreading
HTML5 MultithreadingHTML5 Multithreading
HTML5 Multithreading
Allan Huang
 

Mais procurados (19)

Web pack and friends
Web pack and friendsWeb pack and friends
Web pack and friends
 
CoffeeScript in 5mins
CoffeeScript in 5minsCoffeeScript in 5mins
CoffeeScript in 5mins
 
Coffee script throwdown
Coffee script throwdownCoffee script throwdown
Coffee script throwdown
 
プログラマ三大美徳を実現するデプロイフローを目指して
プログラマ三大美徳を実現するデプロイフローを目指してプログラマ三大美徳を実現するデプロイフローを目指して
プログラマ三大美徳を実現するデプロイフローを目指して
 
2016 may-31 dockercon2016–cool-hackssubmission
2016 may-31 dockercon2016–cool-hackssubmission2016 may-31 dockercon2016–cool-hackssubmission
2016 may-31 dockercon2016–cool-hackssubmission
 
MeCab in docker action(OpenWhisk)
MeCab in docker action(OpenWhisk)MeCab in docker action(OpenWhisk)
MeCab in docker action(OpenWhisk)
 
Introduction to Vagrant
Introduction to VagrantIntroduction to Vagrant
Introduction to Vagrant
 
Drupal VM for Drupal 8 Dev - MidCamp 2017
Drupal VM for Drupal 8 Dev - MidCamp 2017Drupal VM for Drupal 8 Dev - MidCamp 2017
Drupal VM for Drupal 8 Dev - MidCamp 2017
 
macos installation automation
macos installation automationmacos installation automation
macos installation automation
 
Drupal VM for Drupal 8 Dev - Drupal Camp STL 2017
Drupal VM for Drupal 8 Dev - Drupal Camp STL 2017Drupal VM for Drupal 8 Dev - Drupal Camp STL 2017
Drupal VM for Drupal 8 Dev - Drupal Camp STL 2017
 
Docker slides
Docker slidesDocker slides
Docker slides
 
Docker
DockerDocker
Docker
 
Unified Infra for Dev/Test and Jenkins Integration Testing (Docker/Vagrant)
Unified Infra for Dev/Test and Jenkins Integration Testing (Docker/Vagrant)Unified Infra for Dev/Test and Jenkins Integration Testing (Docker/Vagrant)
Unified Infra for Dev/Test and Jenkins Integration Testing (Docker/Vagrant)
 
HTML5 Multithreading
HTML5 MultithreadingHTML5 Multithreading
HTML5 Multithreading
 
Selenium meetup docker
Selenium meetup   docker Selenium meetup   docker
Selenium meetup docker
 
Managing windows with Puppet and Chocolatey
Managing windows with Puppet and ChocolateyManaging windows with Puppet and Chocolatey
Managing windows with Puppet and Chocolatey
 
EmacsConf 2019: Interactive Remote Debugging and Development with TRAMP Mode
EmacsConf 2019: Interactive Remote Debugging and Development with TRAMP ModeEmacsConf 2019: Interactive Remote Debugging and Development with TRAMP Mode
EmacsConf 2019: Interactive Remote Debugging and Development with TRAMP Mode
 
SEP DevOps Ignite Talk - Packer
SEP DevOps Ignite Talk - PackerSEP DevOps Ignite Talk - Packer
SEP DevOps Ignite Talk - Packer
 
EC2 AMI Factory with Chef, Berkshelf, and Packer
EC2 AMI Factory with Chef, Berkshelf, and PackerEC2 AMI Factory with Chef, Berkshelf, and Packer
EC2 AMI Factory with Chef, Berkshelf, and Packer
 

Destaque

Destaque (11)

Hacking Virtual Appliances
Hacking Virtual AppliancesHacking Virtual Appliances
Hacking Virtual Appliances
 
Vagrant and Docker
Vagrant and DockerVagrant and Docker
Vagrant and Docker
 
CI and CD Across the Enterprise with Jenkins (devops.com Nov 2014)
CI and CD Across the Enterprise with Jenkins (devops.com Nov 2014)CI and CD Across the Enterprise with Jenkins (devops.com Nov 2014)
CI and CD Across the Enterprise with Jenkins (devops.com Nov 2014)
 
Vagrant and docker
Vagrant and dockerVagrant and docker
Vagrant and docker
 
Vagrant + Ansible + Docker
Vagrant + Ansible + DockerVagrant + Ansible + Docker
Vagrant + Ansible + Docker
 
DevOps, A brief introduction to Vagrant & Ansible
DevOps, A brief introduction to Vagrant & AnsibleDevOps, A brief introduction to Vagrant & Ansible
DevOps, A brief introduction to Vagrant & Ansible
 
Vagrant, Ansible and Docker - How they fit together for productive flexible d...
Vagrant, Ansible and Docker - How they fit together for productive flexible d...Vagrant, Ansible and Docker - How they fit together for productive flexible d...
Vagrant, Ansible and Docker - How they fit together for productive flexible d...
 
An Introduction to Vagrant and Docker
An Introduction to Vagrant and DockerAn Introduction to Vagrant and Docker
An Introduction to Vagrant and Docker
 
Ansible docker
Ansible dockerAnsible docker
Ansible docker
 
Beaker: Automated, Cloud-Based Acceptance Testing - PuppetConf 2014
Beaker: Automated, Cloud-Based Acceptance Testing - PuppetConf 2014Beaker: Automated, Cloud-Based Acceptance Testing - PuppetConf 2014
Beaker: Automated, Cloud-Based Acceptance Testing - PuppetConf 2014
 
Vagrant + Docker provider [+Puppet]
Vagrant + Docker provider [+Puppet]Vagrant + Docker provider [+Puppet]
Vagrant + Docker provider [+Puppet]
 

Semelhante a DevOps introduction with ansible, vagrant, and docker

From Dev to DevOps - Codemotion ES 2012
From Dev to DevOps - Codemotion ES 2012From Dev to DevOps - Codemotion ES 2012
From Dev to DevOps - Codemotion ES 2012
Carlos Sanchez
 
From Dev to DevOps - ApacheCON NA 2011
From Dev to DevOps - ApacheCON NA 2011From Dev to DevOps - ApacheCON NA 2011
From Dev to DevOps - ApacheCON NA 2011
Carlos Sanchez
 
From Dev to DevOps - FOSDEM 2012
From Dev to DevOps - FOSDEM 2012From Dev to DevOps - FOSDEM 2012
From Dev to DevOps - FOSDEM 2012
Carlos Sanchez
 
Future proofing design work with Web components
Future proofing design work with Web componentsFuture proofing design work with Web components
Future proofing design work with Web components
btopro
 
Getting started with puppet and vagrant (1)
Getting started with puppet and vagrant (1)Getting started with puppet and vagrant (1)
Getting started with puppet and vagrant (1)
Puppet
 

Semelhante a DevOps introduction with ansible, vagrant, and docker (20)

Why everyone is excited about Docker (and you should too...) - Carlo Bonamic...
Why everyone is excited about Docker (and you should too...) -  Carlo Bonamic...Why everyone is excited about Docker (and you should too...) -  Carlo Bonamic...
Why everyone is excited about Docker (and you should too...) - Carlo Bonamic...
 
codemotion-docker-2014
codemotion-docker-2014codemotion-docker-2014
codemotion-docker-2014
 
From Dev to DevOps
From Dev to DevOpsFrom Dev to DevOps
From Dev to DevOps
 
From Dev to DevOps - Codemotion ES 2012
From Dev to DevOps - Codemotion ES 2012From Dev to DevOps - Codemotion ES 2012
From Dev to DevOps - Codemotion ES 2012
 
From Dev to DevOps - ApacheCON NA 2011
From Dev to DevOps - ApacheCON NA 2011From Dev to DevOps - ApacheCON NA 2011
From Dev to DevOps - ApacheCON NA 2011
 
Novices guide to docker
Novices guide to dockerNovices guide to docker
Novices guide to docker
 
Docker Starter Pack
Docker Starter PackDocker Starter Pack
Docker Starter Pack
 
From Dev to DevOps - FOSDEM 2012
From Dev to DevOps - FOSDEM 2012From Dev to DevOps - FOSDEM 2012
From Dev to DevOps - FOSDEM 2012
 
IC3 -- Configuration Management 101
IC3 -- Configuration Management 101IC3 -- Configuration Management 101
IC3 -- Configuration Management 101
 
Harmonious Development: Via Vagrant and Puppet
Harmonious Development: Via Vagrant and PuppetHarmonious Development: Via Vagrant and Puppet
Harmonious Development: Via Vagrant and Puppet
 
Future proofing design work with Web components
Future proofing design work with Web componentsFuture proofing design work with Web components
Future proofing design work with Web components
 
Maven: Managing Software Projects for Repeatable Results
Maven: Managing Software Projects for Repeatable ResultsMaven: Managing Software Projects for Repeatable Results
Maven: Managing Software Projects for Repeatable Results
 
Getting started with puppet and vagrant (1)
Getting started with puppet and vagrant (1)Getting started with puppet and vagrant (1)
Getting started with puppet and vagrant (1)
 
Automate Yo' Self
Automate Yo' SelfAutomate Yo' Self
Automate Yo' Self
 
Puppet for Sys Admins
Puppet for Sys AdminsPuppet for Sys Admins
Puppet for Sys Admins
 
Puppet and Vagrant in development
Puppet and Vagrant in developmentPuppet and Vagrant in development
Puppet and Vagrant in development
 
Drupal 7 ci and testing
Drupal 7 ci and testingDrupal 7 ci and testing
Drupal 7 ci and testing
 
Using Docker in the Real World
Using Docker in the Real WorldUsing Docker in the Real World
Using Docker in the Real World
 
Drupal Meetup Lisbon
Drupal Meetup LisbonDrupal Meetup Lisbon
Drupal Meetup Lisbon
 
A DevOps guide to Kubernetes
A DevOps guide to KubernetesA DevOps guide to Kubernetes
A DevOps guide to Kubernetes
 

Mais de Mark Stillwell

DevOps introduction with ansible, vagrant, and docker
DevOps introduction with ansible, vagrant, and dockerDevOps introduction with ansible, vagrant, and docker
DevOps introduction with ansible, vagrant, and docker
Mark Stillwell
 
Dynamic Fractional Resource Scheduling Practical Issues and Future Directions...
Dynamic Fractional Resource Scheduling Practical Issues and Future Directions...Dynamic Fractional Resource Scheduling Practical Issues and Future Directions...
Dynamic Fractional Resource Scheduling Practical Issues and Future Directions...
Mark Stillwell
 
Dynamic Fractional Resource Scheduling -- 2010, ARCS
Dynamic Fractional Resource Scheduling -- 2010, ARCSDynamic Fractional Resource Scheduling -- 2010, ARCS
Dynamic Fractional Resource Scheduling -- 2010, ARCS
Mark Stillwell
 
Dynamic Fractional Resource Scheduling For HPC Workloads -- 2009, Lyon
Dynamic Fractional Resource Scheduling For HPC Workloads -- 2009, LyonDynamic Fractional Resource Scheduling For HPC Workloads -- 2009, Lyon
Dynamic Fractional Resource Scheduling For HPC Workloads -- 2009, Lyon
Mark Stillwell
 
Resource Allocation using Virtual Clusters
Resource Allocation using Virtual ClustersResource Allocation using Virtual Clusters
Resource Allocation using Virtual Clusters
Mark Stillwell
 

Mais de Mark Stillwell (7)

HARNESS project Demo
HARNESS project DemoHARNESS project Demo
HARNESS project Demo
 
DevOps introduction with ansible, vagrant, and docker
DevOps introduction with ansible, vagrant, and dockerDevOps introduction with ansible, vagrant, and docker
DevOps introduction with ansible, vagrant, and docker
 
Main
MainMain
Main
 
Dynamic Fractional Resource Scheduling Practical Issues and Future Directions...
Dynamic Fractional Resource Scheduling Practical Issues and Future Directions...Dynamic Fractional Resource Scheduling Practical Issues and Future Directions...
Dynamic Fractional Resource Scheduling Practical Issues and Future Directions...
 
Dynamic Fractional Resource Scheduling -- 2010, ARCS
Dynamic Fractional Resource Scheduling -- 2010, ARCSDynamic Fractional Resource Scheduling -- 2010, ARCS
Dynamic Fractional Resource Scheduling -- 2010, ARCS
 
Dynamic Fractional Resource Scheduling For HPC Workloads -- 2009, Lyon
Dynamic Fractional Resource Scheduling For HPC Workloads -- 2009, LyonDynamic Fractional Resource Scheduling For HPC Workloads -- 2009, Lyon
Dynamic Fractional Resource Scheduling For HPC Workloads -- 2009, Lyon
 
Resource Allocation using Virtual Clusters
Resource Allocation using Virtual ClustersResource Allocation using Virtual Clusters
Resource Allocation using Virtual Clusters
 

Último

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
 

Último (20)

Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
Pharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodologyPharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodology
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxBUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 

DevOps introduction with ansible, vagrant, and docker

  • 1. DevOps: What is it and why is it important? Mark Stillwell September 28, 2014
  • 2. Traditional Development/Deployment best practices I source code only in vcs I static release as versioned archive I unit testing of code in development environment I
  • 3. nal product not installed on developer machine I deployment instructions via howto or interactive application I time consuming I dicult to replicate
  • 4. Similar Work ows I Collaborating on a paper by emailing Word .doc
  • 5. les I Developing software without vcs, periodically creating versioned/dated zip
  • 6. le in a backup/ directory
  • 7. Issues With These Approaches I Coordination, Communication, Documentation: I I'll edit the document and email you when I'm done. I I had to tinker with /etc/foo to get things working. I Handling of con icts I No automating of merges I Lack of one true authoritative latest version. I Culture of Fear I I know generally what needs to be done, but I'm afraid to try because I might break it and not be able to get things working again.
  • 9. c Issues I Diculty verifying complicated interaction between multiple parts. I Brittle deployment: It works, mostly, but don't touch it! I Experts-Only install discourages end-users, results in lower adoption/mindshare.
  • 10. DevOps I deployment as code in vcs I continuously tested I test environment similar to deployment environment I enabled by virtual machines and containers I regular deployments to production I industry standard practice! I NetFlix, Etsy, Twitter, etc tear down infrastructure and redeploy multiple times per day. . . I culture of fearless development
  • 11. Enabling Technologies I ansible I vagrant I docker
  • 12. Ansible I tool for managing distributed software deployments I similar tools: puppet, chef, salt, cfengine I free software (for command line, commercial web-based management interface) I written in python I con
  • 13. guration as list of idempotent tasks in yaml based con
  • 14. guration I really only pseudo-idempotent I push model that only requires administrator's computer have ansible software and client machines have sshd and python I all other require some kind of bootstrapping process on clients I some (e.g., puppet) require server setup
  • 15. Example Playbook - hosts: all sudo: True tasks: - name: ensure sysctl is configured sysctl: name: vm.swappiness value: 10 state: present - name: ensure latest version is installed apt: pkg: etckeeper state: latest
  • 16. Vagrant I command line wrapper to virtualisation tools like virtualbox/kvm I sets up disks / networking etc. I all con
  • 17. guration in text Vagrant
  • 18. le I can bring up and network multiple vms with dierent operating systems I can invoke provisioning tools like ansible, or shell scripts I user just needs to cd to right directory, type vagrant up
  • 20. le Vagrant.configure(2) do |config| config.vm.box = ubuntu/trusty config.vm.network forwarded_port, guest: 80, host: 80 config.vm.provider virtualbox do |v| v.memory = 1280 end config.vm.provision ansible do |ansible| ansible.playbook = site.yml end end
  • 21. Docker I interface for managing container based deployments I light-weight environment virtualisation that makes use of linux-kernel features I like chroot on steroids I currently uses lxc, but this may change in the future I also manages layered
  • 22. le sytems using aufs copy-on-write I disk-space ecient I docker.io has a repository of of layers, e.g. docker pull ubuntu I can be used to provide lightweight linux virtual machines, but this isn't the most ecient approach I no need to run multiple copies of system services I preference is one process per container, single responsibility principle I inter-process communication enabled by mapping directories / ports between containers and/or host
  • 23. Websites I http://ansible.com I http://vagrantup.com I http://docker.io