SlideShare a Scribd company logo
1 of 19
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

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
 
Dulceeeeeeeeeeeeeeeeeeeeeeeee
DulceeeeeeeeeeeeeeeeeeeeeeeeeDulceeeeeeeeeeeeeeeeeeeeeeeee
Dulceeeeeeeeeeeeeeeeeeeeeeeee
javiera1696
 
Radke garrett visual_resumestoryboard
Radke garrett visual_resumestoryboardRadke garrett visual_resumestoryboard
Radke garrett visual_resumestoryboard
gradke5
 
Using punctuation marks
Using punctuation marksUsing punctuation marks
Using punctuation marks
Eric Cruz
 
บทความเรื่องการบริหารงานตามหลักฆราวาสธรรม ๒
บทความเรื่องการบริหารงานตามหลักฆราวาสธรรม ๒บทความเรื่องการบริหารงานตามหลักฆราวาสธรรม ๒
บทความเรื่องการบริหารงานตามหลักฆราวาสธรรม ๒
วัดดอนทอง กาฬสินธุ์
 
Vitadomorionesshqiptare con himno en albanes
Vitadomorionesshqiptare con himno en albanesVitadomorionesshqiptare con himno en albanes
Vitadomorionesshqiptare con himno en albanes
adamoa4
 
Classroom rules
Classroom rulesClassroom rules
Classroom rules
Eric 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

Android Demonstration Solution (ADS)
Android Demonstration Solution (ADS) Android Demonstration Solution (ADS)
Android Demonstration Solution (ADS)
Amila Gamanayake
 
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
 

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

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
Jonas 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

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
 

Recently uploaded (20)

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
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
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
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
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
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
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
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 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