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
Dulceeeeeeeeeeeeeeeeeeeeeeeeejaviera1696
 
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)adamoa4
 
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)adamoa4
 
Radke garrett visual_resumestoryboard
Radke garrett visual_resumestoryboardRadke garrett visual_resumestoryboard
Radke garrett visual_resumestoryboardgradke5
 
Van datajournalistiek naar datajournalisme
Van datajournalistiek naar datajournalismeVan datajournalistiek naar datajournalisme
Van datajournalistiek naar datajournalismeArjan Fassed
 
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
 
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 eeuwArjan Fassed
 
stem뱅킹1
stem뱅킹1stem뱅킹1
stem뱅킹1Myun Kim
 
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
 
Open onderzoeksdata
Open onderzoeksdataOpen onderzoeksdata
Open onderzoeksdataArjan Fassed
 
แปลโดยพยัญชนะเรื่องพราหมณ์ชื่อว่าจูเฬกสาฎก ๘
แปลโดยพยัญชนะเรื่องพราหมณ์ชื่อว่าจูเฬกสาฎก ๘แปลโดยพยัญชนะเรื่องพราหมณ์ชื่อว่าจูเฬกสาฎก ๘
แปลโดยพยัญชนะเรื่องพราหมณ์ชื่อว่าจูเฬกสาฎก ๘วัดดอนทอง กาฬสินธุ์
 
Open data en rekenkamers
Open data en rekenkamersOpen data en rekenkamers
Open data en rekenkamersArjan Fassed
 
Using punctuation marks
Using punctuation marksUsing punctuation marks
Using punctuation marksEric 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

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 PuppetPuppet
 
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}
 
Pro sphere customer technical
Pro sphere customer technicalPro sphere customer technical
Pro sphere customer technicalsolarisyougood
 
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 2013Tommy Trogden
 
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
 
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 ConfigurationCA Technologies
 
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 managerEclipse Day India
 
Automated Software Modernization
Automated Software ModernizationAutomated Software Modernization
Automated Software ModernizationManuel Dolle
 
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{code}
 
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 SystemsHiroshiMisawa
 
InduSoft Water Wastewater Webinar 2012
InduSoft Water Wastewater Webinar 2012InduSoft Water Wastewater Webinar 2012
InduSoft Water Wastewater Webinar 2012AVEVA
 
Rancher Rodeo 13 mai 2022
Rancher Rodeo 13 mai 2022Rancher Rodeo 13 mai 2022
Rancher Rodeo 13 mai 2022SUSE
 
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 SystemRockwell Automation
 
Basics of Embedded System
Basics of Embedded System Basics of Embedded System
Basics of Embedded System Rajesh Roshan
 
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 WorldSimon Haslam
 
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?Revelation Technologies
 
Ebs12.2 online patching
Ebs12.2 online patching Ebs12.2 online patching
Ebs12.2 online patching aioughydchapter
 
Ebs12.2 online patching(aioug_aug2015)
Ebs12.2 online patching(aioug_aug2015)Ebs12.2 online patching(aioug_aug2015)
Ebs12.2 online patching(aioug_aug2015)pasalapudi123
 

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

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 2016Jonas 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 2015Jonas Rosland
 
Docker and Containers overview - Docker Workshop
Docker and Containers overview - Docker WorkshopDocker and Containers overview - Docker Workshop
Docker and Containers overview - Docker WorkshopJonas 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
 
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
 
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 2015Jonas 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 2015Jonas Rosland
 
CoreOS 101 - EMC World 2015
CoreOS 101 - EMC World 2015CoreOS 101 - EMC World 2015
CoreOS 101 - EMC World 2015Jonas 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 2015Jonas Rosland
 
EMC World 2015 - The Devops Toolkit
EMC World 2015 - The Devops ToolkitEMC World 2015 - The Devops Toolkit
EMC World 2015 - The Devops ToolkitJonas Rosland
 
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-madnessJonas 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...
 
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

Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 

Recently uploaded (20)

Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 

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