SlideShare a Scribd company logo
Automated OS & App
                                            Deployment
                                            Using Puppet and Razor

                                            Jonas Rosland
                                            Software-Defined Specialist
                                            @virtualswede




© Copyright 2012 EMC Corporation. All rights reserved.                    1
Image credit: @mpyeager, http://ow.ly/i/1P9YU
 © Copyright 2012 EMC Corporation. All rights reserved.   2
So what’s Razor?
    Cloud provisioning tool
    Operating Systems AND Hypervisors
    Physical AND virtual
    Event-driven instead of user-driven




© Copyright 2012 EMC Corporation. All rights reserved.   3
Why not just use templates?
    They get old fast
    Pre-packages bits are harder to maintain
    No easy upgrade to next distro version




© Copyright 2012 EMC Corporation. All rights reserved.   4
So how does it work?




© Copyright 2012 EMC Corporation. All rights reserved.   5
Auto-Discovered Real-Time Inventory
Data
    Boots a Micro-Kernel
    Primarily using facter
    For every hardware node
    Eliminating inefficient, error-prone manual
    processes
    Full insight into the latest, up-to-date status
    of your hardware inventory




© Copyright 2012 EMC Corporation. All rights reserved.   6
Dynamic Image Selection
    Selects the correct operating system image
    Based on auto-discovered, real-time
    inventory data
    No manual intervention needed




© Copyright 2012 EMC Corporation. All rights reserved.   7
Model-Based Provisioning
    Models the desired state of each hardware
    node and its operating system
    Automatically tracks provisioning progress
    toward this state
    Full control over a node’s boot sequence and
    a complete log of its lifecycle




© Copyright 2012 EMC Corporation. All rights reserved.   8
Open APIs and Plug-in Architecture
    RESTful open APIs
    Full programmatic control of the rules and
    models that govern operating system image
    selection and hardware provisioning
    Enables the Puppet community to collaborate
    and share plug-ins to support any operating
    system and any boot sequence




© Copyright 2012 EMC Corporation. All rights reserved.   9
Metal-to-Cloud Application Lifecycle
Management
    No need for siloed management tools!




© Copyright 2012 EMC Corporation. All rights reserved.   10
Puppet + Razor = Good!




© Copyright 2012 EMC Corporation. All rights reserved.   11
Razor installation using Puppet
node razor {
    class { 'sudo':
        config_file_replace => false,
    }
    include razor
}




© Copyright 2012 EMC Corporation. All rights reserved.   12
Add a broker
rz_broker { 'puppet_broker':
    ensure => present,
    plugin => 'puppet',
    metadata => {
        broker_version => '2.7.18',
        server => 'puppet.purevirtual.lab',
    }
  }



© Copyright 2012 EMC Corporation. All rights reserved.   13
Add an image to deploy
rz_image { "ubuntu_precise_image":
    ensure => present,
    type                => 'os',
    version => '12.04.1',
 source =>
"http://ftp.sunet.se/pub/os/Linux/distributions/ubunt
u/ubuntu-cd/12.04.1/ubuntu-12.04.1-server-
amd64.iso",
}



© Copyright 2012 EMC Corporation. All rights reserved.   14
Add a model for deployment
rz_model { 'install_ubuntu_precise':
    ensure => present,
    description => 'Ubuntu Precise',
    image => 'ubuntu_precise_image',
  metadata => {'domainname' => 'purevirtual.lab',
'hostname_prefix' => 'ubuntu-', 'root_password' =>
'password'},
    template => 'ubuntu_precise',
}



© Copyright 2012 EMC Corporation. All rights reserved.   15
Finally, create a policy to tie it all
together
rz_policy { 'ubuntu_precise_policy':
    ensure => present,
    broker => 'puppet_broker',
    model                  => 'install_ubuntu_precise',
    enabled => 'true',
    tags                => ['memsize_1GiB'],
    template => 'linux_deploy',
    maximum => 10,
}


© Copyright 2012 EMC Corporation. All rights reserved.    16
DEMOTIME!




© Copyright 2012 EMC Corporation. All rights reserved.   17
Wanna get started?
How to and best practices on my blog:
http://purevirtual.eu/category/automation/puppet/
http://purevirtual.eu/category/automation/razor/


                                          Send me an email/tweet!
                                           jonas.rosland@emc.com
                                                         @virtualswede




© Copyright 2012 EMC Corporation. All rights reserved.                   18
PuppetCamp Amsterdam 2013 - Automated OS and App deployment using Puppet and Razor

More Related Content

Viewers also liked

CoreOS 101 - EMC World 2015
CoreOS 101 - EMC World 2015CoreOS 101 - EMC World 2015
CoreOS 101 - EMC World 2015
Jonas Rosland
 
Puppet Deployment at OnApp
Puppet Deployment at OnApp Puppet Deployment at OnApp
Puppet Deployment at OnApp
Puppet
 
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
Carlos Sanchez
 
Managing Windows Systems with Puppet - PuppetConf 2013
Managing Windows Systems with Puppet - PuppetConf 2013Managing Windows Systems with Puppet - PuppetConf 2013
Managing Windows Systems with Puppet - PuppetConf 2013
Puppet
 
Designing Puppet: Roles/Profiles Pattern
Designing Puppet: Roles/Profiles PatternDesigning Puppet: Roles/Profiles Pattern
Designing Puppet: Roles/Profiles Pattern
Puppet
 
Tocopilla Norte: imágenes y memoria
Tocopilla Norte: imágenes y memoria Tocopilla Norte: imágenes y memoria
Tocopilla Norte: imágenes y memoria
Damir Galaz-Mandakovic
 
All US Zip Codes
All US Zip CodesAll US Zip Codes
All US Zip Codes
draconianshame5
 
Singhanias
SinghaniasSinghanias
Dulceeeeeeeeeeeeeeeeeeeeeeeee
DulceeeeeeeeeeeeeeeeeeeeeeeeeDulceeeeeeeeeeeeeeeeeeeeeeeee
Dulceeeeeeeeeeeeeeeeeeeeeeeeejaviera1696
 
Radke garrett visual_resumestoryboard
Radke garrett visual_resumestoryboardRadke garrett visual_resumestoryboard
Radke garrett visual_resumestoryboardgradke5
 
Using punctuation marks
Using punctuation marksUsing punctuation marks
Using punctuation marksEric Cruz
 
Avanzado excel
Avanzado excelAvanzado excel
Avanzado excel
rfms07
 
2015 03-19-devops-toolkit-varrow-madness
2015 03-19-devops-toolkit-varrow-madness2015 03-19-devops-toolkit-varrow-madness
2015 03-19-devops-toolkit-varrow-madness
Jonas Rosland
 
บทความเรื่องการบริหารงานตามหลักฆราวาสธรรม ๒
บทความเรื่องการบริหารงานตามหลักฆราวาสธรรม ๒บทความเรื่องการบริหารงานตามหลักฆราวาสธรรม ๒
บทความเรื่องการบริหารงานตามหลักฆราวาสธรรม ๒วัดดอนทอง กาฬสินธุ์
 
Vitadomorionesshqiptare con himno en albanes
Vitadomorionesshqiptare con himno en albanesVitadomorionesshqiptare con himno en albanes
Vitadomorionesshqiptare con himno en albanesadamoa4
 
Classroom rules
Classroom rulesClassroom rules
Classroom rulesEric Cruz
 

Viewers also liked (20)

CoreOS 101 - EMC World 2015
CoreOS 101 - EMC World 2015CoreOS 101 - EMC World 2015
CoreOS 101 - EMC World 2015
 
Puppet Deployment at OnApp
Puppet Deployment at OnApp Puppet Deployment at OnApp
Puppet Deployment at OnApp
 
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
 
Managing Windows Systems with Puppet - PuppetConf 2013
Managing Windows Systems with Puppet - PuppetConf 2013Managing Windows Systems with Puppet - PuppetConf 2013
Managing Windows Systems with Puppet - PuppetConf 2013
 
Designing Puppet: Roles/Profiles Pattern
Designing Puppet: Roles/Profiles PatternDesigning Puppet: Roles/Profiles Pattern
Designing Puppet: Roles/Profiles Pattern
 
Tocopilla Norte: imágenes y memoria
Tocopilla Norte: imágenes y memoria Tocopilla Norte: imágenes y memoria
Tocopilla Norte: imágenes y memoria
 
Bata Home
Bata HomeBata Home
Bata Home
 
All US Zip Codes
All US Zip CodesAll US Zip Codes
All US Zip Codes
 
Singhanias
SinghaniasSinghanias
Singhanias
 
Dulceeeeeeeeeeeeeeeeeeeeeeeee
DulceeeeeeeeeeeeeeeeeeeeeeeeeDulceeeeeeeeeeeeeeeeeeeeeeeee
Dulceeeeeeeeeeeeeeeeeeeeeeeee
 
Radke garrett visual_resumestoryboard
Radke garrett visual_resumestoryboardRadke garrett visual_resumestoryboard
Radke garrett visual_resumestoryboard
 
Grade 10 science
Grade 10 scienceGrade 10 science
Grade 10 science
 
Using punctuation marks
Using punctuation marksUsing punctuation marks
Using punctuation marks
 
Avanzado excel
Avanzado excelAvanzado excel
Avanzado excel
 
2015 03-19-devops-toolkit-varrow-madness
2015 03-19-devops-toolkit-varrow-madness2015 03-19-devops-toolkit-varrow-madness
2015 03-19-devops-toolkit-varrow-madness
 
บทความเรื่องการบริหารงานตามหลักฆราวาสธรรม ๒
บทความเรื่องการบริหารงานตามหลักฆราวาสธรรม ๒บทความเรื่องการบริหารงานตามหลักฆราวาสธรรม ๒
บทความเรื่องการบริหารงานตามหลักฆราวาสธรรม ๒
 
Vitadomorionesshqiptare con himno en albanes
Vitadomorionesshqiptare con himno en albanesVitadomorionesshqiptare con himno en albanes
Vitadomorionesshqiptare con himno en albanes
 
Adjectives
AdjectivesAdjectives
Adjectives
 
Classroom rules
Classroom rulesClassroom rules
Classroom rules
 
บทที่ ๔ (จริง)
บทที่ ๔ (จริง)บทที่ ๔ (จริง)
บทที่ ๔ (จริง)
 

Similar to PuppetCamp Amsterdam 2013 - Automated OS and App deployment using Puppet and Razor

Codename one
Codename oneCodename one
Sviluppo IoT - Un approccio standard da Nerd ad Impresa, prove pratiche di Me...
Sviluppo IoT - Un approccio standard da Nerd ad Impresa, prove pratiche di Me...Sviluppo IoT - Un approccio standard da Nerd ad Impresa, prove pratiche di Me...
Sviluppo IoT - Un approccio standard da Nerd ad Impresa, prove pratiche di Me...
Codemotion
 
Delivering Mobile Apps to the Field with Oracle
Delivering Mobile Apps to the Field with OracleDelivering Mobile Apps to the Field with Oracle
Delivering Mobile Apps to the Field with Oracle
Simon Haslam
 
X Means Y
X Means YX Means Y
X Means Y
CommonsWare
 
Android Demonstration Solution (ADS)
Android Demonstration Solution (ADS) Android Demonstration Solution (ADS)
Android Demonstration Solution (ADS) Amila Gamanayake
 
What is Codename One - Transcript.pdf
What is Codename One - Transcript.pdfWhat is Codename One - Transcript.pdf
What is Codename One - Transcript.pdf
ShaiAlmog1
 
Configuration Management and Transforming Legacy Applications in the Enterpri...
Configuration Management and Transforming Legacy Applications in the Enterpri...Configuration Management and Transforming Legacy Applications in the Enterpri...
Configuration Management and Transforming Legacy Applications in the Enterpri...
Docker, Inc.
 
Rhomobile 5.5 Release Notes
Rhomobile 5.5 Release NotesRhomobile 5.5 Release Notes
Rhomobile 5.5 Release Notes
Konstantin Rybas
 
Puppet for Junos
Puppet for JunosPuppet for Junos
Puppet for Junos
Juniper Networks
 
What is Codename One.pdf
What is Codename One.pdfWhat is Codename One.pdf
What is Codename One.pdf
ShaiAlmog1
 
Node-RED Installer, Standalone Installer using Electron
Node-RED Installer, Standalone Installer using ElectronNode-RED Installer, Standalone Installer using Electron
Node-RED Installer, Standalone Installer using Electron
Hitachi, Ltd. OSS Solution Center.
 
EMC World 2016 - mioaITL.08 Infrastructure as Code: Not Your Parent's Data Ce...
EMC World 2016 - mioaITL.08 Infrastructure as Code: Not Your Parent's Data Ce...EMC World 2016 - mioaITL.08 Infrastructure as Code: Not Your Parent's Data Ce...
EMC World 2016 - mioaITL.08 Infrastructure as Code: Not Your Parent's Data Ce...
{code}
 
.Net Gadgeteer
.Net Gadgeteer .Net Gadgeteer
.Net Gadgeteer
Wade Zhu
 
Code and Conquer with Globe Labs, October 27, 2012
Code and Conquer with Globe Labs, October 27, 2012Code and Conquer with Globe Labs, October 27, 2012
Code and Conquer with Globe Labs, October 27, 2012
jobandesther
 
EclipseCon 2016 - OCCIware : one Cloud API to rule them all
EclipseCon 2016 - OCCIware : one Cloud API to rule them allEclipseCon 2016 - OCCIware : one Cloud API to rule them all
EclipseCon 2016 - OCCIware : one Cloud API to rule them all
Marc Dutoo
 
OCCIware Project at EclipseCon France 2016, by Marc Dutoo, Open Wide
OCCIware Project at EclipseCon France 2016, by Marc Dutoo, Open WideOCCIware Project at EclipseCon France 2016, by Marc Dutoo, Open Wide
OCCIware Project at EclipseCon France 2016, by Marc Dutoo, Open Wide
OCCIware
 
Better Code: Concurrency
Better Code: ConcurrencyBetter Code: Concurrency
Better Code: Concurrency
Platonov Sergey
 
Introduction to Test Execution Automation Framework for Embedded Systems
Introduction to Test Execution Automation Framework for Embedded SystemsIntroduction to Test Execution Automation Framework for Embedded Systems
Introduction to Test Execution Automation Framework for Embedded Systems
HiroshiMisawa
 
Enabing DevOps in an SDN World
Enabing DevOps in an SDN WorldEnabing DevOps in an SDN World
Enabing DevOps in an SDN World
Cisco DevNet
 
Smart Face Recognition System Analysis
Smart Face Recognition System AnalysisSmart Face Recognition System Analysis
Smart Face Recognition System Analysis
Vishal Aditya
 

Similar to PuppetCamp Amsterdam 2013 - Automated OS and App deployment using Puppet and Razor (20)

Codename one
Codename oneCodename one
Codename one
 
Sviluppo IoT - Un approccio standard da Nerd ad Impresa, prove pratiche di Me...
Sviluppo IoT - Un approccio standard da Nerd ad Impresa, prove pratiche di Me...Sviluppo IoT - Un approccio standard da Nerd ad Impresa, prove pratiche di Me...
Sviluppo IoT - Un approccio standard da Nerd ad Impresa, prove pratiche di Me...
 
Delivering Mobile Apps to the Field with Oracle
Delivering Mobile Apps to the Field with OracleDelivering Mobile Apps to the Field with Oracle
Delivering Mobile Apps to the Field with Oracle
 
X Means Y
X Means YX Means Y
X Means Y
 
Android Demonstration Solution (ADS)
Android Demonstration Solution (ADS) Android Demonstration Solution (ADS)
Android Demonstration Solution (ADS)
 
What is Codename One - Transcript.pdf
What is Codename One - Transcript.pdfWhat is Codename One - Transcript.pdf
What is Codename One - Transcript.pdf
 
Configuration Management and Transforming Legacy Applications in the Enterpri...
Configuration Management and Transforming Legacy Applications in the Enterpri...Configuration Management and Transforming Legacy Applications in the Enterpri...
Configuration Management and Transforming Legacy Applications in the Enterpri...
 
Rhomobile 5.5 Release Notes
Rhomobile 5.5 Release NotesRhomobile 5.5 Release Notes
Rhomobile 5.5 Release Notes
 
Puppet for Junos
Puppet for JunosPuppet for Junos
Puppet for Junos
 
What is Codename One.pdf
What is Codename One.pdfWhat is Codename One.pdf
What is Codename One.pdf
 
Node-RED Installer, Standalone Installer using Electron
Node-RED Installer, Standalone Installer using ElectronNode-RED Installer, Standalone Installer using Electron
Node-RED Installer, Standalone Installer using Electron
 
EMC World 2016 - mioaITL.08 Infrastructure as Code: Not Your Parent's Data Ce...
EMC World 2016 - mioaITL.08 Infrastructure as Code: Not Your Parent's Data Ce...EMC World 2016 - mioaITL.08 Infrastructure as Code: Not Your Parent's Data Ce...
EMC World 2016 - mioaITL.08 Infrastructure as Code: Not Your Parent's Data Ce...
 
.Net Gadgeteer
.Net Gadgeteer .Net Gadgeteer
.Net Gadgeteer
 
Code and Conquer with Globe Labs, October 27, 2012
Code and Conquer with Globe Labs, October 27, 2012Code and Conquer with Globe Labs, October 27, 2012
Code and Conquer with Globe Labs, October 27, 2012
 
EclipseCon 2016 - OCCIware : one Cloud API to rule them all
EclipseCon 2016 - OCCIware : one Cloud API to rule them allEclipseCon 2016 - OCCIware : one Cloud API to rule them all
EclipseCon 2016 - OCCIware : one Cloud API to rule them all
 
OCCIware Project at EclipseCon France 2016, by Marc Dutoo, Open Wide
OCCIware Project at EclipseCon France 2016, by Marc Dutoo, Open WideOCCIware Project at EclipseCon France 2016, by Marc Dutoo, Open Wide
OCCIware Project at EclipseCon France 2016, by Marc Dutoo, Open Wide
 
Better Code: Concurrency
Better Code: ConcurrencyBetter Code: Concurrency
Better Code: Concurrency
 
Introduction to Test Execution Automation Framework for Embedded Systems
Introduction to Test Execution Automation Framework for Embedded SystemsIntroduction to Test Execution Automation Framework for Embedded Systems
Introduction to Test Execution Automation Framework for Embedded Systems
 
Enabing DevOps in an SDN World
Enabing DevOps in an SDN WorldEnabing DevOps in an SDN World
Enabing DevOps in an SDN World
 
Smart Face Recognition System Analysis
Smart Face Recognition System AnalysisSmart Face Recognition System Analysis
Smart Face Recognition System Analysis
 

More from Jonas Rosland

Running stateful services in containers - ContainerDays Boston 2016
Running stateful services in containers - ContainerDays Boston 2016Running stateful services in containers - ContainerDays Boston 2016
Running stateful services in containers - ContainerDays Boston 2016
Jonas Rosland
 
Open Source, infrastructure as Code, Cloud Native Apps 2015
Open Source, infrastructure as Code, Cloud Native Apps 2015Open Source, infrastructure as Code, Cloud Native Apps 2015
Open Source, infrastructure as Code, Cloud Native Apps 2015
Jonas Rosland
 
Docker and Containers overview - Docker Workshop
Docker and Containers overview - Docker WorkshopDocker and Containers overview - Docker Workshop
Docker and Containers overview - Docker Workshop
Jonas Rosland
 
VMworld 2015 San Francisco - INF5432 - Infrastructure as Code - Ban Snowflake...
VMworld 2015 San Francisco - INF5432 - Infrastructure as Code - Ban Snowflake...VMworld 2015 San Francisco - INF5432 - Infrastructure as Code - Ban Snowflake...
VMworld 2015 San Francisco - INF5432 - Infrastructure as Code - Ban Snowflake...
Jonas Rosland
 
VMworld 2015 San Francisco - CNA5520 - Run your Stateful and Stateless Apps i...
VMworld 2015 San Francisco - CNA5520 - Run your Stateful and Stateless Apps i...VMworld 2015 San Francisco - CNA5520 - Run your Stateful and Stateless Apps i...
VMworld 2015 San Francisco - CNA5520 - Run your Stateful and Stateless Apps i...
Jonas Rosland
 
DevOps at EMC NYC August 2015 - Modernize your apps to drive organizational e...
DevOps at EMC NYC August 2015 - Modernize your apps to drive organizational e...DevOps at EMC NYC August 2015 - Modernize your apps to drive organizational e...
DevOps at EMC NYC August 2015 - Modernize your apps to drive organizational e...
Jonas Rosland
 
Scale out data persistence for all your stateful container needs - Docker Mee...
Scale out data persistence for all your stateful container needs - Docker Mee...Scale out data persistence for all your stateful container needs - Docker Mee...
Scale out data persistence for all your stateful container needs - Docker Mee...
Jonas Rosland
 
CIO Connect 2015 - Modernize your applications to drive organizational effici...
CIO Connect 2015 - Modernize your applications to drive organizational effici...CIO Connect 2015 - Modernize your applications to drive organizational effici...
CIO Connect 2015 - Modernize your applications to drive organizational effici...
Jonas Rosland
 
Docker Compose and Panamax - ContainerDays Boston - June 2015
Docker Compose and Panamax - ContainerDays Boston - June 2015Docker Compose and Panamax - ContainerDays Boston - June 2015
Docker Compose and Panamax - ContainerDays Boston - June 2015
Jonas Rosland
 
Open Source and EMC {code} Overview - June 2015
Open Source and EMC {code} Overview - June 2015Open Source and EMC {code} Overview - June 2015
Open Source and EMC {code} Overview - June 2015
Jonas Rosland
 
Docker 101 - DevOps at EMC May 2015
Docker 101 - DevOps at EMC May 2015Docker 101 - DevOps at EMC May 2015
Docker 101 - DevOps at EMC May 2015
Jonas Rosland
 
EMC World 2015 - The Devops Toolkit
EMC World 2015 - The Devops ToolkitEMC World 2015 - The Devops Toolkit
EMC World 2015 - The Devops Toolkit
Jonas Rosland
 
Docker and containers - For Boston Docker Meetup Workshop in March 2015
Docker and containers - For Boston Docker Meetup Workshop in March 2015Docker and containers - For Boston Docker Meetup Workshop in March 2015
Docker and containers - For Boston Docker Meetup Workshop in March 2015Jonas Rosland
 

More from Jonas Rosland (13)

Running stateful services in containers - ContainerDays Boston 2016
Running stateful services in containers - ContainerDays Boston 2016Running stateful services in containers - ContainerDays Boston 2016
Running stateful services in containers - ContainerDays Boston 2016
 
Open Source, infrastructure as Code, Cloud Native Apps 2015
Open Source, infrastructure as Code, Cloud Native Apps 2015Open Source, infrastructure as Code, Cloud Native Apps 2015
Open Source, infrastructure as Code, Cloud Native Apps 2015
 
Docker and Containers overview - Docker Workshop
Docker and Containers overview - Docker WorkshopDocker and Containers overview - Docker Workshop
Docker and Containers overview - Docker Workshop
 
VMworld 2015 San Francisco - INF5432 - Infrastructure as Code - Ban Snowflake...
VMworld 2015 San Francisco - INF5432 - Infrastructure as Code - Ban Snowflake...VMworld 2015 San Francisco - INF5432 - Infrastructure as Code - Ban Snowflake...
VMworld 2015 San Francisco - INF5432 - Infrastructure as Code - Ban Snowflake...
 
VMworld 2015 San Francisco - CNA5520 - Run your Stateful and Stateless Apps i...
VMworld 2015 San Francisco - CNA5520 - Run your Stateful and Stateless Apps i...VMworld 2015 San Francisco - CNA5520 - Run your Stateful and Stateless Apps i...
VMworld 2015 San Francisco - CNA5520 - Run your Stateful and Stateless Apps i...
 
DevOps at EMC NYC August 2015 - Modernize your apps to drive organizational e...
DevOps at EMC NYC August 2015 - Modernize your apps to drive organizational e...DevOps at EMC NYC August 2015 - Modernize your apps to drive organizational e...
DevOps at EMC NYC August 2015 - Modernize your apps to drive organizational e...
 
Scale out data persistence for all your stateful container needs - Docker Mee...
Scale out data persistence for all your stateful container needs - Docker Mee...Scale out data persistence for all your stateful container needs - Docker Mee...
Scale out data persistence for all your stateful container needs - Docker Mee...
 
CIO Connect 2015 - Modernize your applications to drive organizational effici...
CIO Connect 2015 - Modernize your applications to drive organizational effici...CIO Connect 2015 - Modernize your applications to drive organizational effici...
CIO Connect 2015 - Modernize your applications to drive organizational effici...
 
Docker Compose and Panamax - ContainerDays Boston - June 2015
Docker Compose and Panamax - ContainerDays Boston - June 2015Docker Compose and Panamax - ContainerDays Boston - June 2015
Docker Compose and Panamax - ContainerDays Boston - June 2015
 
Open Source and EMC {code} Overview - June 2015
Open Source and EMC {code} Overview - June 2015Open Source and EMC {code} Overview - June 2015
Open Source and EMC {code} Overview - June 2015
 
Docker 101 - DevOps at EMC May 2015
Docker 101 - DevOps at EMC May 2015Docker 101 - DevOps at EMC May 2015
Docker 101 - DevOps at EMC May 2015
 
EMC World 2015 - The Devops Toolkit
EMC World 2015 - The Devops ToolkitEMC World 2015 - The Devops Toolkit
EMC World 2015 - The Devops Toolkit
 
Docker and containers - For Boston Docker Meetup Workshop in March 2015
Docker and containers - For Boston Docker Meetup Workshop in March 2015Docker and containers - For Boston Docker Meetup Workshop in March 2015
Docker and containers - For Boston Docker Meetup Workshop in March 2015
 

Recently uploaded

Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 

Recently uploaded (20)

Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 

PuppetCamp Amsterdam 2013 - Automated OS and App deployment using Puppet and Razor

  • 1. Automated OS & App Deployment Using Puppet and Razor Jonas Rosland Software-Defined Specialist @virtualswede © Copyright 2012 EMC Corporation. All rights reserved. 1
  • 2. Image credit: @mpyeager, http://ow.ly/i/1P9YU © Copyright 2012 EMC Corporation. All rights reserved. 2
  • 3. So what’s Razor? Cloud provisioning tool Operating Systems AND Hypervisors Physical AND virtual Event-driven instead of user-driven © Copyright 2012 EMC Corporation. All rights reserved. 3
  • 4. Why not just use templates? They get old fast Pre-packages bits are harder to maintain No easy upgrade to next distro version © Copyright 2012 EMC Corporation. All rights reserved. 4
  • 5. So how does it work? © Copyright 2012 EMC Corporation. All rights reserved. 5
  • 6. Auto-Discovered Real-Time Inventory Data Boots a Micro-Kernel Primarily using facter For every hardware node Eliminating inefficient, error-prone manual processes Full insight into the latest, up-to-date status of your hardware inventory © Copyright 2012 EMC Corporation. All rights reserved. 6
  • 7. Dynamic Image Selection Selects the correct operating system image Based on auto-discovered, real-time inventory data No manual intervention needed © Copyright 2012 EMC Corporation. All rights reserved. 7
  • 8. Model-Based Provisioning Models the desired state of each hardware node and its operating system Automatically tracks provisioning progress toward this state Full control over a node’s boot sequence and a complete log of its lifecycle © Copyright 2012 EMC Corporation. All rights reserved. 8
  • 9. Open APIs and Plug-in Architecture RESTful open APIs Full programmatic control of the rules and models that govern operating system image selection and hardware provisioning Enables the Puppet community to collaborate and share plug-ins to support any operating system and any boot sequence © Copyright 2012 EMC Corporation. All rights reserved. 9
  • 10. Metal-to-Cloud Application Lifecycle Management No need for siloed management tools! © Copyright 2012 EMC Corporation. All rights reserved. 10
  • 11. Puppet + Razor = Good! © Copyright 2012 EMC Corporation. All rights reserved. 11
  • 12. Razor installation using Puppet node razor { class { 'sudo': config_file_replace => false, } include razor } © Copyright 2012 EMC Corporation. All rights reserved. 12
  • 13. Add a broker rz_broker { 'puppet_broker': ensure => present, plugin => 'puppet', metadata => { broker_version => '2.7.18', server => 'puppet.purevirtual.lab', } } © Copyright 2012 EMC Corporation. All rights reserved. 13
  • 14. Add an image to deploy rz_image { "ubuntu_precise_image": ensure => present, type => 'os', version => '12.04.1', source => "http://ftp.sunet.se/pub/os/Linux/distributions/ubunt u/ubuntu-cd/12.04.1/ubuntu-12.04.1-server- amd64.iso", } © Copyright 2012 EMC Corporation. All rights reserved. 14
  • 15. Add a model for deployment rz_model { 'install_ubuntu_precise': ensure => present, description => 'Ubuntu Precise', image => 'ubuntu_precise_image', metadata => {'domainname' => 'purevirtual.lab', 'hostname_prefix' => 'ubuntu-', 'root_password' => 'password'}, template => 'ubuntu_precise', } © Copyright 2012 EMC Corporation. All rights reserved. 15
  • 16. Finally, create a policy to tie it all together rz_policy { 'ubuntu_precise_policy': ensure => present, broker => 'puppet_broker', model => 'install_ubuntu_precise', enabled => 'true', tags => ['memsize_1GiB'], template => 'linux_deploy', maximum => 10, } © Copyright 2012 EMC Corporation. All rights reserved. 16
  • 17. DEMOTIME! © Copyright 2012 EMC Corporation. All rights reserved. 17
  • 18. Wanna get started? How to and best practices on my blog: http://purevirtual.eu/category/automation/puppet/ http://purevirtual.eu/category/automation/razor/ Send me an email/tweet! jonas.rosland@emc.com @virtualswede © Copyright 2012 EMC Corporation. All rights reserved. 18

Editor's Notes

  1. Ockham’s Razor = Simpler explanations is better than complex ones
  2. Show:FacterRazor policyBoot up ESXi serverRazor nodeShow ESXibeing installed
  3. Templates cancurrently be ”linux_deploy” or ”vmware_hypervisor”
  4. Show:FacterRazor policyBoot up ESXi serverRazor nodeShow ESXibeing installed