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


                                            Jonas Rosland
                                            vSpecialist EMEA
                                            @virtualswede




© Copyright 2012 EMC Corporation. All rights reserved.               1
What is Puppet?
    IT automation software
    Helps system administrators manage
    infrastructure throughout its lifecycle
    Provisioning and configuration
    Patch management and compliance
    Highly scalable




© Copyright 2012 EMC Corporation. All rights reserved.   2
How scalable?
    Google manages more than 50000 systems
    Zynga scaled from 0 to 10000 servers in 2
    months
    I am managing tens of machines!




© Copyright 2012 EMC Corporation. All rights reserved.   3
Example from CERN




© Copyright 2012 EMC Corporation. All rights reserved.   4
Why is Puppet cool?
    Centralized, Scalable configuration management for
    server farms
    Abstracted from underlying OS (to a point)
    Configurations can be stored in a version control
    system (like Git) for historical change tracking
    Automated configuration of individual machines
    based on hardware/software configuration
    Auditing of configuration of individual machines




© Copyright 2012 EMC Corporation. All rights reserved.   5
Where Puppet helps
    Bridge the gap between sysadmins and dev teams
    Devs: Same configuration as Production
    environment
        – Need new extension? Update Puppet configurations

    Sysadmins: System changes are tracked through
    commits, can be reviewed easily
    Result: Consistent platforms throughout with
    minimal pain




© Copyright 2012 EMC Corporation. All rights reserved.       6
Puppet Prod-Dev-Test-QA Example
    Production environment
        – Dev creates a copy for dev
        – Test creates a copy for test
        – QA creates a copy for QA
    All changes can easily be propagated
    throughout all environments




© Copyright 2012 EMC Corporation. All rights reserved.   7
© Copyright 2012 EMC Corporation. All rights reserved.   8
© Copyright 2012 EMC Corporation. All rights reserved.   9
© Copyright 2012 EMC Corporation. All rights reserved.   10
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.   12
Auto-Discovered Real-Time Inventory
Data
    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.   13
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.   14
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.   15
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.   16
Metal-to-Cloud Application Lifecycle
Management
    No need for siloed management tools!




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




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




© Copyright 2012 EMC Corporation. All rights reserved.   19
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.   20
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.   21
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.   22
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.    23
DEMOTIME!




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




© Copyright 2012 EMC Corporation. All rights reserved.   25
Send me an
                                            email/tweet!
                                            jonas.rosland@emc.com
                                            @virtualswede




© Copyright 2012 EMC Corporation. All rights reserved.              26
VMUG Sweden 2013-02-08 - Puppet and Razor

More Related Content

Viewers also liked

Dulceeeeeeeeeeeeeeeeeeeeeeeee
DulceeeeeeeeeeeeeeeeeeeeeeeeeDulceeeeeeeeeeeeeeeeeeeeeeeee
Dulceeeeeeeeeeeeeeeeeeeeeeeee
javiera1696
 
Radke garrett visual_resumestoryboard
Radke garrett visual_resumestoryboardRadke garrett visual_resumestoryboard
Radke garrett visual_resumestoryboard
gradke5
 
stem뱅킹1
stem뱅킹1stem뱅킹1
stem뱅킹1
Myun Kim
 
แปลโดยพยัญชนะเรื่องพราหมณ์ชื่อว่าจูเฬกสาฎก ๘
แปลโดยพยัญชนะเรื่องพราหมณ์ชื่อว่าจูเฬกสาฎก ๘แปลโดยพยัญชนะเรื่องพราหมณ์ชื่อว่าจูเฬกสาฎก ๘
แปลโดยพยัญชนะเรื่องพราหมณ์ชื่อว่าจูเฬกสาฎก ๘
วัดดอนทอง กาฬสินธุ์
 
Using punctuation marks
Using punctuation marksUsing punctuation marks
Using punctuation marks
Eric Cruz
 

Viewers also liked (20)

Dulceeeeeeeeeeeeeeeeeeeeeeeee
DulceeeeeeeeeeeeeeeeeeeeeeeeeDulceeeeeeeeeeeeeeeeeeeeeeeee
Dulceeeeeeeeeeeeeeeeeeeeeeeee
 
Don orione nel mondo in italiano (1)
Don orione nel mondo in italiano (1)Don orione nel mondo in italiano (1)
Don orione nel mondo in italiano (1)
 
Vita di don orione in italiano (1)
Vita di don orione in italiano (1)Vita di don orione in italiano (1)
Vita di don orione in italiano (1)
 
Radke garrett visual_resumestoryboard
Radke garrett visual_resumestoryboardRadke garrett visual_resumestoryboard
Radke garrett visual_resumestoryboard
 
บทที่ ๔ ใหม่
บทที่ ๔ ใหม่บทที่ ๔ ใหม่
บทที่ ๔ ใหม่
 
บทที่ ๕ สรุปใหม่
บทที่ ๕ สรุปใหม่บทที่ ๕ สรุปใหม่
บทที่ ๕ สรุปใหม่
 
Van datajournalistiek naar datajournalisme
Van datajournalistiek naar datajournalismeVan datajournalistiek naar datajournalisme
Van datajournalistiek naar datajournalisme
 
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...
 
Guardianships Guide
Guardianships GuideGuardianships Guide
Guardianships Guide
 
06essay
06essay06essay
06essay
 
Algemene Rekenkamer: Transparantie in de 21ste eeuw
Algemene Rekenkamer: Transparantie in de 21ste eeuwAlgemene Rekenkamer: Transparantie in de 21ste eeuw
Algemene Rekenkamer: Transparantie in de 21ste eeuw
 
stem뱅킹1
stem뱅킹1stem뱅킹1
stem뱅킹1
 
Migración y Biopolítica.
Migración y Biopolítica. Migración y Biopolítica.
Migración y Biopolítica.
 
บทที่ ๔ (จริง)
บทที่ ๔ (จริง)บทที่ ๔ (จริง)
บทที่ ๔ (จริง)
 
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...
 
Open onderzoeksdata
Open onderzoeksdataOpen onderzoeksdata
Open onderzoeksdata
 
แปลโดยพยัญชนะเรื่องพราหมณ์ชื่อว่าจูเฬกสาฎก ๘
แปลโดยพยัญชนะเรื่องพราหมณ์ชื่อว่าจูเฬกสาฎก ๘แปลโดยพยัญชนะเรื่องพราหมณ์ชื่อว่าจูเฬกสาฎก ๘
แปลโดยพยัญชนะเรื่องพราหมณ์ชื่อว่าจูเฬกสาฎก ๘
 
Open data en rekenkamers
Open data en rekenkamersOpen data en rekenkamers
Open data en rekenkamers
 
mwoodcock_projectCpart2
mwoodcock_projectCpart2mwoodcock_projectCpart2
mwoodcock_projectCpart2
 
Using punctuation marks
Using punctuation marksUsing punctuation marks
Using punctuation marks
 

Similar to VMUG Sweden 2013-02-08 - Puppet and Razor

Journey to end user computing dallas vmug may 2013
Journey to end user computing   dallas vmug may 2013Journey to end user computing   dallas vmug may 2013
Journey to end user computing dallas vmug may 2013
Tommy Trogden
 

Similar to VMUG Sweden 2013-02-08 - Puppet and Razor (20)

Automated OS and Application deployment using Razor and Puppet
Automated OS and Application deployment using Razor and PuppetAutomated OS and Application deployment using Razor and Puppet
Automated OS and Application deployment using Razor and Puppet
 
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...
 
Pro sphere customer technical
Pro sphere customer technicalPro sphere customer technical
Pro sphere customer technical
 
Journey to end user computing dallas vmug may 2013
Journey to end user computing   dallas vmug may 2013Journey to end user computing   dallas vmug may 2013
Journey to end user computing dallas vmug may 2013
 
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...
 
Automating Workload AE and DE; Agent Deployment and Configuration
Automating Workload AE and DE; Agent Deployment and ConfigurationAutomating Workload AE and DE; Agent Deployment and Configuration
Automating Workload AE and DE; Agent Deployment and Configuration
 
Using Eclipse EMF/GEF to develop an offline designer for identity manager
Using Eclipse EMF/GEF to develop an offline designer for identity managerUsing Eclipse EMF/GEF to develop an offline designer for identity manager
Using Eclipse EMF/GEF to develop an offline designer for identity manager
 
Automated Software Modernization
Automated Software ModernizationAutomated Software Modernization
Automated Software Modernization
 
EMC World 2016 - code.02 Introduction to Immutable Infrastructure
EMC World 2016 - code.02 Introduction to Immutable InfrastructureEMC World 2016 - code.02 Introduction to Immutable Infrastructure
EMC World 2016 - code.02 Introduction to Immutable Infrastructure
 
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
 
InduSoft Water Wastewater Webinar 2012
InduSoft Water Wastewater Webinar 2012InduSoft Water Wastewater Webinar 2012
InduSoft Water Wastewater Webinar 2012
 
Rancher Rodeo 13 mai 2022
Rancher Rodeo 13 mai 2022Rancher Rodeo 13 mai 2022
Rancher Rodeo 13 mai 2022
 
Puppet for Junos
Puppet for JunosPuppet for Junos
Puppet for Junos
 
Leverage Virtual Design to Build a Better System
Leverage Virtual Design to Build a Better SystemLeverage Virtual Design to Build a Better System
Leverage Virtual Design to Build a Better System
 
Basics of Embedded System
Basics of Embedded System Basics of Embedded System
Basics of Embedded System
 
Platform Engineering for the Modern Oracle World
Platform Engineering for the Modern Oracle WorldPlatform Engineering for the Modern Oracle World
Platform Engineering for the Modern Oracle World
 
Revisiting Silent: Installs Are they still useful?
Revisiting Silent: Installs Are they still useful?Revisiting Silent: Installs Are they still useful?
Revisiting Silent: Installs Are they still useful?
 
Codename one
Codename oneCodename one
Codename one
 
Ebs12.2 online patching
Ebs12.2 online patching Ebs12.2 online patching
Ebs12.2 online patching
 
Ebs12.2 online patching(aioug_aug2015)
Ebs12.2 online patching(aioug_aug2015)Ebs12.2 online patching(aioug_aug2015)
Ebs12.2 online patching(aioug_aug2015)
 

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...
 
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...
 
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
 
CoreOS 101 - EMC World 2015
CoreOS 101 - EMC World 2015CoreOS 101 - EMC World 2015
CoreOS 101 - EMC World 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
 
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
 
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

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Recently uploaded (20)

Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
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
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
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
 
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
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
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
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
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
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
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
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 

VMUG Sweden 2013-02-08 - Puppet and Razor

  • 1. OS & App Automated Deployment Using Puppet and Razor Jonas Rosland vSpecialist EMEA @virtualswede © Copyright 2012 EMC Corporation. All rights reserved. 1
  • 2. What is Puppet? IT automation software Helps system administrators manage infrastructure throughout its lifecycle Provisioning and configuration Patch management and compliance Highly scalable © Copyright 2012 EMC Corporation. All rights reserved. 2
  • 3. How scalable? Google manages more than 50000 systems Zynga scaled from 0 to 10000 servers in 2 months I am managing tens of machines! © Copyright 2012 EMC Corporation. All rights reserved. 3
  • 4. Example from CERN © Copyright 2012 EMC Corporation. All rights reserved. 4
  • 5. Why is Puppet cool? Centralized, Scalable configuration management for server farms Abstracted from underlying OS (to a point) Configurations can be stored in a version control system (like Git) for historical change tracking Automated configuration of individual machines based on hardware/software configuration Auditing of configuration of individual machines © Copyright 2012 EMC Corporation. All rights reserved. 5
  • 6. Where Puppet helps Bridge the gap between sysadmins and dev teams Devs: Same configuration as Production environment – Need new extension? Update Puppet configurations Sysadmins: System changes are tracked through commits, can be reviewed easily Result: Consistent platforms throughout with minimal pain © Copyright 2012 EMC Corporation. All rights reserved. 6
  • 7. Puppet Prod-Dev-Test-QA Example Production environment – Dev creates a copy for dev – Test creates a copy for test – QA creates a copy for QA All changes can easily be propagated throughout all environments © Copyright 2012 EMC Corporation. All rights reserved. 7
  • 8. © Copyright 2012 EMC Corporation. All rights reserved. 8
  • 9. © Copyright 2012 EMC Corporation. All rights reserved. 9
  • 10. © Copyright 2012 EMC Corporation. All rights reserved. 10
  • 11. 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. 12
  • 12. Auto-Discovered Real-Time Inventory Data 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. 13
  • 13. 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. 14
  • 14. 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. 15
  • 15. 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. 16
  • 16. Metal-to-Cloud Application Lifecycle Management No need for siloed management tools! © Copyright 2012 EMC Corporation. All rights reserved. 17
  • 17. Puppet + Razor = Good! © Copyright 2012 EMC Corporation. All rights reserved. 18
  • 18. Razor installation using Puppet node razor { class { 'sudo': config_file_replace => false, } include razor } © Copyright 2012 EMC Corporation. All rights reserved. 19
  • 19. 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. 20
  • 20. 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. 21
  • 21. 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. 22
  • 22. 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. 23
  • 23. DEMOTIME! © Copyright 2012 EMC Corporation. All rights reserved. 24
  • 24. Wanna get started? How to and best practices on my blog: http://purevirtual.eu/category/automation/puppet/ http://purevirtual.eu/category/automation/razor/ © Copyright 2012 EMC Corporation. All rights reserved. 25
  • 25. Send me an email/tweet! jonas.rosland@emc.com @virtualswede © Copyright 2012 EMC Corporation. All rights reserved. 26

Editor's Notes

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