SlideShare a Scribd company logo
1 of 43
1© Copyright 2012 EMC Corporation. All rights reserved.
Automated OS & App
Deployment
Using Puppet and Razor
Jonas Rosland
Software-Defined Specialist
@virtualswede
2© Copyright 2012 EMC Corporation. All rights reserved.
3© Copyright 2012 EMC Corporation. All rights reserved.
Project Manager
Is a person who thinks nine women
can deliver a baby in one month
5© Copyright 2012 EMC Corporation. All rights reserved.
6© Copyright 2012 EMC Corporation. All rights reserved.
7© Copyright 2012 EMC Corporation. All rights reserved.
12© Copyright 2012 EMC Corporation. All rights reserved.
Puppetize everything!
13© Copyright 2012 EMC Corporation. All rights reserved.
What is Puppet?
IT automation software
Helps system administrators manage
infrastructure throughout its lifecycle
Provisioning and configuration
Patch management and compliance
Highly scalable
14© Copyright 2012 EMC Corporation. All rights reserved.
How scalable?
Google manages more than 50000 systems
Zynga scaled from 0 to 10000 servers in 2
months
I am managing tens of machines!
15© Copyright 2012 EMC Corporation. All rights reserved.
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
16© Copyright 2012 EMC Corporation. All rights reserved.
Where Puppet helps
Bridge the gap between sysadmins and app/dev
teams
Using a common structure to create Dev, QA and
Production environments
Standardizing applications and their configurations
Result: Consistent platforms throughout with
minimal pain
17© Copyright 2012 EMC Corporation. All rights reserved.
Puppet gives you
Software-Defined Infrastructure
18© Copyright 2012 EMC Corporation. All rights reserved.
Example of a Puppet manifest
node /blogserver/ {
include ntp
include wordpress
firewall { '100 allow http':
proto => 'tcp',
dport => '80',
action => 'accept',
}
}
19© Copyright 2012 EMC Corporation. All rights reserved.
Puppet Architecture
20© Copyright 2012 EMC Corporation. All rights reserved.
21© Copyright 2012 EMC Corporation. All rights reserved.
22© Copyright 2012 EMC Corporation. All rights reserved.
24© Copyright 2012 EMC Corporation. All rights reserved.
25© Copyright 2012 EMC Corporation. All rights reserved.
So what’s Razor?
Cloud provisioning tool
Operating Systems AND Hypervisors
Physical AND virtual
Event-driven instead of user-driven
26© Copyright 2012 EMC Corporation. All rights reserved.
Why not just use templates?
They get old fast
Pre-packages bits are harder to maintain
No easy upgrade to next distro version
27© Copyright 2012 EMC Corporation. All rights reserved.
So how does it work?
28© Copyright 2012 EMC Corporation. All rights reserved.
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
29© Copyright 2012 EMC Corporation. All rights reserved.
Dynamic Image Selection
Selects the correct operating system image
Based on auto-discovered, real-time
inventory data
No manual intervention needed
30© Copyright 2012 EMC Corporation. All rights reserved.
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
31© Copyright 2012 EMC Corporation. All rights reserved.
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
32© Copyright 2012 EMC Corporation. All rights reserved.
Metal-to-Cloud Application Lifecycle
Management
No need for siloed management tools!
33© Copyright 2012 EMC Corporation. All rights reserved.
Puppet + Razor = Good!
34© Copyright 2012 EMC Corporation. All rights reserved.
Razor installation using Puppet
node razor {
class { 'sudo':
config_file_replace => false,
}
include razor
}
35© Copyright 2012 EMC Corporation. All rights reserved.
Add a broker
rz_broker { 'puppet_broker':
ensure => present,
plugin => 'puppet',
metadata => {
broker_version => '2.7.18',
server => 'puppet.purevirtual.lab',
}
}
36© Copyright 2012 EMC Corporation. All rights reserved.
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",
}
37© Copyright 2012 EMC Corporation. All rights reserved.
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',
}
38© Copyright 2012 EMC Corporation. All rights reserved.
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,
}
39© Copyright 2012 EMC Corporation. All rights reserved.
DEMOTIME!
40© Copyright 2012 EMC Corporation. All rights reserved.
On the agenda
VMworld 2013
– San Francisco
– AND
– Barcelona
PuppetConf maybe?
Meet me online?
41© Copyright 2012 EMC Corporation. All rights reserved.
42© Copyright 2012 EMC Corporation. All rights reserved.
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
vBrownbag 2013 June 4th - Puppet and Razor - Jonas Rosland

More Related Content

Viewers also liked

Clase inaugural
Clase inauguralClase inaugural
Clase inauguralmeidy14
 
Classroom rules
Classroom rulesClassroom rules
Classroom rulesEric Cruz
 
Radke garrett visual_resumestoryboard
Radke garrett visual_resumestoryboardRadke garrett visual_resumestoryboard
Radke garrett visual_resumestoryboardgradke5
 
Classroom rules
Classroom rulesClassroom rules
Classroom rulesEric Cruz
 
Malaysia kekal berdaulat rumusan p1
Malaysia kekal berdaulat rumusan p1Malaysia kekal berdaulat rumusan p1
Malaysia kekal berdaulat rumusan p1Adlin Salsain
 
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoaO novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoaMessias Batista
 
Using punctuation marks
Using punctuation marksUsing punctuation marks
Using punctuation marksEric Cruz
 
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
 
Transnational political identities
Transnational political identitiesTransnational political identities
Transnational political identitiesvgrinb
 
Padrões de Projeto: Adapter
Padrões de Projeto: AdapterPadrões de Projeto: Adapter
Padrões de Projeto: AdapterMessias Batista
 
Classroom rules
Classroom rulesClassroom rules
Classroom rulesEric Cruz
 

Viewers also liked (20)

All US Zip Codes
All US Zip CodesAll US Zip Codes
All US Zip Codes
 
Web Apps Weekend - Firefox Apps
Web Apps Weekend - Firefox AppsWeb Apps Weekend - Firefox Apps
Web Apps Weekend - Firefox Apps
 
Clase inaugural
Clase inauguralClase inaugural
Clase inaugural
 
Guardianships Guide
Guardianships GuideGuardianships Guide
Guardianships Guide
 
Trabajo
TrabajoTrabajo
Trabajo
 
Classroom rules
Classroom rulesClassroom rules
Classroom rules
 
Radke garrett visual_resumestoryboard
Radke garrett visual_resumestoryboardRadke garrett visual_resumestoryboard
Radke garrett visual_resumestoryboard
 
Classroom rules
Classroom rulesClassroom rules
Classroom rules
 
Malaysia kekal berdaulat rumusan p1
Malaysia kekal berdaulat rumusan p1Malaysia kekal berdaulat rumusan p1
Malaysia kekal berdaulat rumusan p1
 
บทที่ ๔ ใหม่
บทที่ ๔ ใหม่บทที่ ๔ ใหม่
บทที่ ๔ ใหม่
 
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoaO novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
 
06essay
06essay06essay
06essay
 
Using punctuation marks
Using punctuation marksUsing punctuation marks
Using punctuation marks
 
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
 
Transnational political identities
Transnational political identitiesTransnational political identities
Transnational political identities
 
บทที่ ๔ (จริง)
บทที่ ๔ (จริง)บทที่ ๔ (จริง)
บทที่ ๔ (จริง)
 
พระอภิธรรมปิฎก บทที่ ๑
พระอภิธรรมปิฎก บทที่ ๑พระอภิธรรมปิฎก บทที่ ๑
พระอภิธรรมปิฎก บทที่ ๑
 
Elizabeth paniccia
Elizabeth panicciaElizabeth paniccia
Elizabeth paniccia
 
Padrões de Projeto: Adapter
Padrões de Projeto: AdapterPadrões de Projeto: Adapter
Padrões de Projeto: Adapter
 
Classroom rules
Classroom rulesClassroom rules
Classroom rules
 

Similar to vBrownbag 2013 June 4th - Puppet and Razor - Jonas Rosland

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
 
Pivotal: Operationalizing 1000 Node Hadoop Cluster - Analytics Workbench
Pivotal: Operationalizing 1000 Node Hadoop Cluster - Analytics WorkbenchPivotal: Operationalizing 1000 Node Hadoop Cluster - Analytics Workbench
Pivotal: Operationalizing 1000 Node Hadoop Cluster - Analytics WorkbenchEMC
 
Pro sphere customer technical
Pro sphere customer technicalPro sphere customer technical
Pro sphere customer technicalsolarisyougood
 
the NML project
the NML projectthe NML project
the NML projectLei Yang
 
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
 
Prometheus Training
Prometheus TrainingPrometheus Training
Prometheus TrainingTim Tyler
 
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
 
Emc vspex customer_presentation_private_cloud_microsoft_smb
Emc vspex customer_presentation_private_cloud_microsoft_smbEmc vspex customer_presentation_private_cloud_microsoft_smb
Emc vspex customer_presentation_private_cloud_microsoft_smbxKinAnx
 
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
 
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
 
Securing Containers - Sathyajit Bhat - Adobe
Securing Containers - Sathyajit Bhat - AdobeSecuring Containers - Sathyajit Bhat - Adobe
Securing Containers - Sathyajit Bhat - AdobeCodeOps Technologies LLP
 
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}
 
REMOTE TRIGGERED SOFTWARE DEFINED RADIO
REMOTE TRIGGERED SOFTWARE DEFINED RADIOREMOTE TRIGGERED SOFTWARE DEFINED RADIO
REMOTE TRIGGERED SOFTWARE DEFINED RADIOKunal Bidkar
 
Basics of Embedded System
Basics of Embedded System Basics of Embedded System
Basics of Embedded System Rajesh Roshan
 
PeopleSoft Cloud Architecture - OpenWorld 2016
PeopleSoft Cloud Architecture - OpenWorld 2016PeopleSoft Cloud Architecture - OpenWorld 2016
PeopleSoft Cloud Architecture - OpenWorld 2016Graham Smith
 
Information Retrieval, Applied Statistics and Mathematics onBigData - German ...
Information Retrieval, Applied Statistics and Mathematics onBigData - German ...Information Retrieval, Applied Statistics and Mathematics onBigData - German ...
Information Retrieval, Applied Statistics and Mathematics onBigData - German ...Romeo Kienzler
 
Emc vspex customer_presentation_euc_citrix_xen_desktop5.6_2.0
Emc vspex customer_presentation_euc_citrix_xen_desktop5.6_2.0Emc vspex customer_presentation_euc_citrix_xen_desktop5.6_2.0
Emc vspex customer_presentation_euc_citrix_xen_desktop5.6_2.0xKinAnx
 
How to securely manage endpoints using SanerNow
How to securely manage endpoints using SanerNowHow to securely manage endpoints using SanerNow
How to securely manage endpoints using SanerNowSecPod
 

Similar to vBrownbag 2013 June 4th - Puppet and Razor - Jonas Rosland (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
 
Pivotal: Operationalizing 1000 Node Hadoop Cluster - Analytics Workbench
Pivotal: Operationalizing 1000 Node Hadoop Cluster - Analytics WorkbenchPivotal: Operationalizing 1000 Node Hadoop Cluster - Analytics Workbench
Pivotal: Operationalizing 1000 Node Hadoop Cluster - Analytics Workbench
 
Pro sphere customer technical
Pro sphere customer technicalPro sphere customer technical
Pro sphere customer technical
 
the NML project
the NML projectthe NML project
the NML project
 
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...
 
Prometheus Training
Prometheus TrainingPrometheus Training
Prometheus Training
 
Saas vs. private cloud
Saas vs. private cloudSaas vs. private cloud
Saas vs. private cloud
 
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?
 
Emc vspex customer_presentation_private_cloud_microsoft_smb
Emc vspex customer_presentation_private_cloud_microsoft_smbEmc vspex customer_presentation_private_cloud_microsoft_smb
Emc vspex customer_presentation_private_cloud_microsoft_smb
 
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
 
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
 
Securing Containers - Sathyajit Bhat - Adobe
Securing Containers - Sathyajit Bhat - AdobeSecuring Containers - Sathyajit Bhat - Adobe
Securing Containers - Sathyajit Bhat - Adobe
 
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...
 
Puppet for Junos
Puppet for JunosPuppet for Junos
Puppet for Junos
 
REMOTE TRIGGERED SOFTWARE DEFINED RADIO
REMOTE TRIGGERED SOFTWARE DEFINED RADIOREMOTE TRIGGERED SOFTWARE DEFINED RADIO
REMOTE TRIGGERED SOFTWARE DEFINED RADIO
 
Basics of Embedded System
Basics of Embedded System Basics of Embedded System
Basics of Embedded System
 
PeopleSoft Cloud Architecture - OpenWorld 2016
PeopleSoft Cloud Architecture - OpenWorld 2016PeopleSoft Cloud Architecture - OpenWorld 2016
PeopleSoft Cloud Architecture - OpenWorld 2016
 
Information Retrieval, Applied Statistics and Mathematics onBigData - German ...
Information Retrieval, Applied Statistics and Mathematics onBigData - German ...Information Retrieval, Applied Statistics and Mathematics onBigData - German ...
Information Retrieval, Applied Statistics and Mathematics onBigData - German ...
 
Emc vspex customer_presentation_euc_citrix_xen_desktop5.6_2.0
Emc vspex customer_presentation_euc_citrix_xen_desktop5.6_2.0Emc vspex customer_presentation_euc_citrix_xen_desktop5.6_2.0
Emc vspex customer_presentation_euc_citrix_xen_desktop5.6_2.0
 
How to securely manage endpoints using SanerNow
How to securely manage endpoints using SanerNowHow to securely manage endpoints using SanerNow
How to securely manage endpoints using SanerNow
 

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
 
DevOps at EMC NYC August 2015 - Modernize your apps to drive organizational e...
DevOps at EMC NYC August 2015 - Modernize your apps to drive organizational e...DevOps at EMC NYC August 2015 - Modernize your apps to drive organizational e...
DevOps at EMC NYC August 2015 - Modernize your apps to drive organizational e...Jonas Rosland
 
Scale out data persistence for all your stateful container needs - Docker Mee...
Scale out data persistence for all your stateful container needs - Docker Mee...Scale out data persistence for all your stateful container needs - Docker Mee...
Scale out data persistence for all your stateful container needs - Docker Mee...Jonas Rosland
 
CIO Connect 2015 - Modernize your applications to drive organizational effici...
CIO Connect 2015 - Modernize your applications to drive organizational effici...CIO Connect 2015 - Modernize your applications to drive organizational effici...
CIO Connect 2015 - Modernize your applications to drive organizational effici...Jonas Rosland
 
Docker Compose and Panamax - ContainerDays Boston - June 2015
Docker Compose and Panamax - ContainerDays Boston - June 2015Docker Compose and Panamax - ContainerDays Boston - June 2015
Docker Compose and Panamax - ContainerDays Boston - June 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 (15)

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

WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
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 organizationRadu Cotescu
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
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
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 

Recently uploaded (20)

WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
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
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
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...
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 

vBrownbag 2013 June 4th - Puppet and Razor - Jonas Rosland

  • 1. 1© Copyright 2012 EMC Corporation. All rights reserved. Automated OS & App Deployment Using Puppet and Razor Jonas Rosland Software-Defined Specialist @virtualswede
  • 2. 2© Copyright 2012 EMC Corporation. All rights reserved.
  • 3. 3© Copyright 2012 EMC Corporation. All rights reserved.
  • 4. Project Manager Is a person who thinks nine women can deliver a baby in one month
  • 5. 5© Copyright 2012 EMC Corporation. All rights reserved.
  • 6. 6© Copyright 2012 EMC Corporation. All rights reserved.
  • 7. 7© Copyright 2012 EMC Corporation. All rights reserved.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12. 12© Copyright 2012 EMC Corporation. All rights reserved. Puppetize everything!
  • 13. 13© Copyright 2012 EMC Corporation. All rights reserved. What is Puppet? IT automation software Helps system administrators manage infrastructure throughout its lifecycle Provisioning and configuration Patch management and compliance Highly scalable
  • 14. 14© Copyright 2012 EMC Corporation. All rights reserved. How scalable? Google manages more than 50000 systems Zynga scaled from 0 to 10000 servers in 2 months I am managing tens of machines!
  • 15. 15© Copyright 2012 EMC Corporation. All rights reserved. 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
  • 16. 16© Copyright 2012 EMC Corporation. All rights reserved. Where Puppet helps Bridge the gap between sysadmins and app/dev teams Using a common structure to create Dev, QA and Production environments Standardizing applications and their configurations Result: Consistent platforms throughout with minimal pain
  • 17. 17© Copyright 2012 EMC Corporation. All rights reserved. Puppet gives you Software-Defined Infrastructure
  • 18. 18© Copyright 2012 EMC Corporation. All rights reserved. Example of a Puppet manifest node /blogserver/ { include ntp include wordpress firewall { '100 allow http': proto => 'tcp', dport => '80', action => 'accept', } }
  • 19. 19© Copyright 2012 EMC Corporation. All rights reserved. Puppet Architecture
  • 20. 20© Copyright 2012 EMC Corporation. All rights reserved.
  • 21. 21© Copyright 2012 EMC Corporation. All rights reserved.
  • 22. 22© Copyright 2012 EMC Corporation. All rights reserved.
  • 23.
  • 24. 24© Copyright 2012 EMC Corporation. All rights reserved.
  • 25. 25© Copyright 2012 EMC Corporation. All rights reserved. So what’s Razor? Cloud provisioning tool Operating Systems AND Hypervisors Physical AND virtual Event-driven instead of user-driven
  • 26. 26© Copyright 2012 EMC Corporation. All rights reserved. Why not just use templates? They get old fast Pre-packages bits are harder to maintain No easy upgrade to next distro version
  • 27. 27© Copyright 2012 EMC Corporation. All rights reserved. So how does it work?
  • 28. 28© Copyright 2012 EMC Corporation. All rights reserved. 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
  • 29. 29© Copyright 2012 EMC Corporation. All rights reserved. Dynamic Image Selection Selects the correct operating system image Based on auto-discovered, real-time inventory data No manual intervention needed
  • 30. 30© Copyright 2012 EMC Corporation. All rights reserved. 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
  • 31. 31© Copyright 2012 EMC Corporation. All rights reserved. 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
  • 32. 32© Copyright 2012 EMC Corporation. All rights reserved. Metal-to-Cloud Application Lifecycle Management No need for siloed management tools!
  • 33. 33© Copyright 2012 EMC Corporation. All rights reserved. Puppet + Razor = Good!
  • 34. 34© Copyright 2012 EMC Corporation. All rights reserved. Razor installation using Puppet node razor { class { 'sudo': config_file_replace => false, } include razor }
  • 35. 35© Copyright 2012 EMC Corporation. All rights reserved. Add a broker rz_broker { 'puppet_broker': ensure => present, plugin => 'puppet', metadata => { broker_version => '2.7.18', server => 'puppet.purevirtual.lab', } }
  • 36. 36© Copyright 2012 EMC Corporation. All rights reserved. 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", }
  • 37. 37© Copyright 2012 EMC Corporation. All rights reserved. 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', }
  • 38. 38© Copyright 2012 EMC Corporation. All rights reserved. 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, }
  • 39. 39© Copyright 2012 EMC Corporation. All rights reserved. DEMOTIME!
  • 40. 40© Copyright 2012 EMC Corporation. All rights reserved. On the agenda VMworld 2013 – San Francisco – AND – Barcelona PuppetConf maybe? Meet me online?
  • 41. 41© Copyright 2012 EMC Corporation. All rights reserved.
  • 42. 42© Copyright 2012 EMC Corporation. All rights reserved. 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

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