SlideShare a Scribd company logo
The Chef Prince of
Azure
HOW 10TH MAGNITUDE USED CHEF TO FLIP-TURN ZS
ASSOCIATES INTO MICROSOFT AZURE ROYALTY
John Smyth, Trevor Hess, Mahesh Velaga
INTRODUCTIONS
2
Mahesh Velaga,
ZS Associates
Trevor Hess
10th Magnitude
John Smyth
10th Magnitude
3
CONTACT US
John Smyth
Is too old for Twitter
Trevor Hess
@trevorghess
Mahesh Velaga
@mahesh_velaga
4
OVERVIEW
From Business as Usual to Infrastructure as Code
 Technical
 Cultural
 Business
5
ABOUT ZS ASSOCIATES
6
ZS is the world’s largest firm focused exclusively on
delivering impact through high-performance sales and
marketing solutions
SALES + MARKETING
SOFTWARE AS A SERVICE
Automate key business processes
3,200 PROFESSIONALS
21 OFFICES
WORLDWIDE
ZS is the world’s largest firm focused exclusively on delivering impact
through high-performance sales and marketing solutions
30
+ YEARS OF INDUSTRY
& DOMAIN EXPERTISE
Quota
Management
Compensation
Management & Reporting
MBO
Planning
Territory
Management
Activity &
Call Planning
ABOUT 10TH MAGNITUDE
7
Microsoft Azure
Migration
Web, Media and Mobile Application
Development
DevOps and Azure-
Enabled Automation
Managed Applications
and Infrastructure
10th Magnitude was born in the cloud, and offers corporate customers
multiple, interconnected paths to Azure success:
ONE CONFIG ERROR AND THE BOSS
GOT SCARED
The Problem
8
THE SERVER CONFIGURATION PROCESS
Lengthy
 Provision process time of 3 days
Manual
 Half a day of manual server provisioning and validation
Prone to Human Error
 Process involved different systems and people working
independently from one another
Lacked an Overall Framework
 Lacked consistency and organization and ability for version
control
9
PUT CHEF IN THERE!
The Journey to Infrastructure as Code
10
OUR APPROACH
11
Define the Pattern Teach the PatternUse the Pattern
Observe the
Pattern
OUR APPROACH
12
Define the Pattern Use the Pattern Teach the Pattern
Observe the
Pattern
• Define the appropriate toolset
• Define the development workflow
• Define the object structure
• Define the cookbook structure
OUR APPROACH
13
Define the Pattern Use the Pattern Teach the Pattern
Observe the
Pattern
• Set up Chef Server, source control,
base images, boxes, etc.
• Create CI Workflows
• Develop base cookbooks using the
development workflow and CI
process end-to-end
OUR APPROACH
14
Define the Pattern Use the Pattern Teach the Pattern
Observe the
Pattern
• Pair with customer resources on
cookbook creation
• Provide guidance on TDD
cookbook development,
Continuous Integration, etc.
• Lead code reviews
OUR APPROACH
15
Define the Pattern Use the Pattern Teach the Pattern
Observe the
Pattern
• Be available as SME to customer
• Observe and assist in creation of
tests, cookbooks, and
documentation upon request
• Participate in code reviews
METHODOLOGY
Test-Driven Development
 Red: Write failing test
 Green: Make the test pass
 Refactor: Optimize the code
Continuous Delivery
 Using Continuous Integration and tests to validate commits
and ensure stable product at all times
16
TOOLS
 Enterprise Chef 11
 Vagrant
 Git
 Berkshelf
 Minitest
 Foodcritic
 TeamCity
 PowerShell
 Editor of Choice
(choose vim)
 Chef-vault
 VirtualBox
17
WORKFLOW
1. Local Development with Vagrant
 Write tests (mini tests)
 Write Chef recipes
 Test locally with Vagrant
 Iterate
2. CI/CD on Code Check In
 Lint the code with Food Critic
 Converge and test Cookbook on Vsphere
 Converge and test Cookbook on Azure
 Upload to Chef server
18
19
Developer tests
with local suite
PushChange Start_here
Upon git check
in…
Bump version
number and
upload to git.
foodcritic lint
berks install—
get
dependencies
berks upload—
upload to chefci
Cookbook CI Pipeline
Azure Tests
Converge_node.rb:
• Reserve test VM by moving to Azure Chef
environment
• Converge with knife:
• Cookbook recipes
• Run minitest
• Remove the test VM from Chef and
destroy the VM
Converge_node.rb:
• “Reserve” test VM by moving Vsphere to
Chef Environment
• Converge with knife:
• Cookbook recipes
• Run minitest
• Remove the test VM from Chef and
destroy the VM
Vsphere Tests
Tag and Upload
Create a
tagged branch
in git for this
version
berks
upload—install
cookbook to
zssd Chef Org
zschefci Chef: zssd
Test nodes
only
Test
VM
Test
VM
Staging
QA
Dev
Productio
n
STEP ONE: CREATE THE VM WITH
POWERSHELL
Azure
 Create the Virtual Machine
 Create the cloud service, if
required
 Map appropriate endpoints
 Join the domain
 Bootstrap Chef and converge
 Install Chef Client
 Create the node and client
 Update chef vault for client key
 Set the runlist
 Force chef run(s)
VSphere
 Create the Virtual Machine
 Select the appropriate datastore
 Customize the (sysprepped) OS
 Set memory and CPU, depending
on VM type
 Set port group and adapter type
 Join the domain
 Move to appropriate OU
 Add drives, depending on VM type
 Setup WinRM
 Bootstrap Chef and converge
 Install Chef Client
 Create the node and client
 Update chef vault for the client key
 Set the runlist
 Force chef run(s)
20
STEP TWO: CONVERGE THE WEB
SERVER WITH CHEF
 Base OS Configuration
 Install and configure ZS standard third
party software (monitoring, antivirus,
etc)
 Install and configure IIS dependencies
 Install and configure IIS for ZS web
sites and services
21
 Enterprise Chef 11
 Windows Cookbook
 IIS Cookbook
 Webpi cookbook
 ms_dotnet4 cookbook
 Minitest-handler
cookbook
FLIP-TURNED UPSIDE DOWN
The Transformation
22
TECHNICAL
Fully automated server provisioning
 From days to less than an hour
 Consistent versioned deployment
 Consistent Azure and VSphere configuration
Infrastructure as Code
 Chef Framework
 Versioning
23
CULTURAL
 Infrastructure as Code (Don’t touch the servers)
 Evolving towards a blue-green deployment
model
24
BUSINESS
 Accelerated their Azure migration
 Frees up IT talent for other projects related to
business generation
 More reliable and dependable infrastructure
 More rapid deployment of resources
25
VIEW FROM THE THRONE
What we learned
26
CODE REVIEWS, ALL TOGETHER NOW!
 Establish standards
 Learning Experience
 Sharing Ideas
 Just do it!
27
BIG PICTURE
 Chef isn’t just something you buy, it’s
something you do
 Chef doesn’t transform your organization—
YOU do*
*with Chef
28
BIG PICTURE
 Not everything needs to be a revolution
 Evolve your infrastructure
29
GO FORTH AND GET WORK DONE!
30
CONTACT US
www.10thmangitude.com
www.zsassociates.com
John Smyth
jsmyth@10thmagnitude.com
Trevor Hess
thess@10thmagnitude.com
@trevorghess
Mahesh Velaga
mahesh.velaga@zsassociates.com
31

More Related Content

What's hot

Guide To Continuous Deployment Containerization With Docker Complete Deck
Guide To Continuous Deployment Containerization With Docker Complete DeckGuide To Continuous Deployment Containerization With Docker Complete Deck
Guide To Continuous Deployment Containerization With Docker Complete DeckSlideTeam
 
Deploying Cloud Native Red Team Infrastructure with Kubernetes, Istio and Envoy
Deploying Cloud Native Red Team Infrastructure with Kubernetes, Istio and Envoy Deploying Cloud Native Red Team Infrastructure with Kubernetes, Istio and Envoy
Deploying Cloud Native Red Team Infrastructure with Kubernetes, Istio and Envoy Jeffrey Holden
 
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)QAware GmbH
 
Running your Spring Apps in the Cloud Javaone 2014
Running your Spring Apps in the Cloud Javaone 2014Running your Spring Apps in the Cloud Javaone 2014
Running your Spring Apps in the Cloud Javaone 2014cornelia davis
 
GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...
GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...
GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...Oleg Shalygin
 
DCEU 18: Designing a Global Centralized Container Platform for a Multi-Cluste...
DCEU 18: Designing a Global Centralized Container Platform for a Multi-Cluste...DCEU 18: Designing a Global Centralized Container Platform for a Multi-Cluste...
DCEU 18: Designing a Global Centralized Container Platform for a Multi-Cluste...Docker, Inc.
 
Transforming Application Delivery with PaaS and Linux Containers
Transforming Application Delivery with PaaS and Linux ContainersTransforming Application Delivery with PaaS and Linux Containers
Transforming Application Delivery with PaaS and Linux ContainersGiovanni Galloro
 
Kubernetes day 2 Operations
Kubernetes day 2 OperationsKubernetes day 2 Operations
Kubernetes day 2 OperationsPaul Czarkowski
 
Demystify LDAP and OIDC Providing Security to Your App on Kubernetes
Demystify LDAP and OIDC Providing Security to Your App on KubernetesDemystify LDAP and OIDC Providing Security to Your App on Kubernetes
Demystify LDAP and OIDC Providing Security to Your App on KubernetesVMware Tanzu
 
Next Generation Scheduling for YARN and K8s: For Hybrid Cloud/On-prem Environ...
Next Generation Scheduling for YARN and K8s: For Hybrid Cloud/On-prem Environ...Next Generation Scheduling for YARN and K8s: For Hybrid Cloud/On-prem Environ...
Next Generation Scheduling for YARN and K8s: For Hybrid Cloud/On-prem Environ...DataWorks Summit
 
Introduction to KubeDirector - SF Kubernetes Meetup
Introduction to KubeDirector - SF Kubernetes MeetupIntroduction to KubeDirector - SF Kubernetes Meetup
Introduction to KubeDirector - SF Kubernetes MeetupBlueData, Inc.
 
GitOps & the deployment branching models - DevOps D-day Marseille 2021
GitOps & the deployment branching models - DevOps D-day Marseille 2021GitOps & the deployment branching models - DevOps D-day Marseille 2021
GitOps & the deployment branching models - DevOps D-day Marseille 2021SoKube
 
Red Hat OpenShift Container Platform Overview
Red Hat OpenShift Container Platform OverviewRed Hat OpenShift Container Platform Overview
Red Hat OpenShift Container Platform OverviewJames Falkner
 
Fully Orchestrating Applications, Microservices and Enterprise Services with ...
Fully Orchestrating Applications, Microservices and Enterprise Services with ...Fully Orchestrating Applications, Microservices and Enterprise Services with ...
Fully Orchestrating Applications, Microservices and Enterprise Services with ...Docker, Inc.
 
Container Native Development Tools - Talk by Mickey Boxell
Container Native Development Tools - Talk by Mickey BoxellContainer Native Development Tools - Talk by Mickey Boxell
Container Native Development Tools - Talk by Mickey BoxellOracle Developers
 
Pivotal Cloud Foundry 2.5: A First Look
Pivotal Cloud Foundry 2.5: A First LookPivotal Cloud Foundry 2.5: A First Look
Pivotal Cloud Foundry 2.5: A First LookVMware Tanzu
 
Accelerate Digital Transformation with Pivotal Cloud Foundry on Azure
Accelerate Digital Transformation with Pivotal Cloud Foundry on AzureAccelerate Digital Transformation with Pivotal Cloud Foundry on Azure
Accelerate Digital Transformation with Pivotal Cloud Foundry on AzureVMware Tanzu
 
DevOps for Big Data - Data 360 2014 Conference
DevOps for Big Data - Data 360 2014 ConferenceDevOps for Big Data - Data 360 2014 Conference
DevOps for Big Data - Data 360 2014 ConferenceGrid Dynamics
 
DevOps Spain 2019. David Cañadillas -Cloudbees
DevOps Spain 2019. David Cañadillas -CloudbeesDevOps Spain 2019. David Cañadillas -Cloudbees
DevOps Spain 2019. David Cañadillas -CloudbeesatSistemas
 

What's hot (20)

Guide To Continuous Deployment Containerization With Docker Complete Deck
Guide To Continuous Deployment Containerization With Docker Complete DeckGuide To Continuous Deployment Containerization With Docker Complete Deck
Guide To Continuous Deployment Containerization With Docker Complete Deck
 
Deploying Cloud Native Red Team Infrastructure with Kubernetes, Istio and Envoy
Deploying Cloud Native Red Team Infrastructure with Kubernetes, Istio and Envoy Deploying Cloud Native Red Team Infrastructure with Kubernetes, Istio and Envoy
Deploying Cloud Native Red Team Infrastructure with Kubernetes, Istio and Envoy
 
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
 
Running your Spring Apps in the Cloud Javaone 2014
Running your Spring Apps in the Cloud Javaone 2014Running your Spring Apps in the Cloud Javaone 2014
Running your Spring Apps in the Cloud Javaone 2014
 
GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...
GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...
GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...
 
DCEU 18: Designing a Global Centralized Container Platform for a Multi-Cluste...
DCEU 18: Designing a Global Centralized Container Platform for a Multi-Cluste...DCEU 18: Designing a Global Centralized Container Platform for a Multi-Cluste...
DCEU 18: Designing a Global Centralized Container Platform for a Multi-Cluste...
 
Transforming Application Delivery with PaaS and Linux Containers
Transforming Application Delivery with PaaS and Linux ContainersTransforming Application Delivery with PaaS and Linux Containers
Transforming Application Delivery with PaaS and Linux Containers
 
Kubernetes day 2 Operations
Kubernetes day 2 OperationsKubernetes day 2 Operations
Kubernetes day 2 Operations
 
Demystify LDAP and OIDC Providing Security to Your App on Kubernetes
Demystify LDAP and OIDC Providing Security to Your App on KubernetesDemystify LDAP and OIDC Providing Security to Your App on Kubernetes
Demystify LDAP and OIDC Providing Security to Your App on Kubernetes
 
Next Generation Scheduling for YARN and K8s: For Hybrid Cloud/On-prem Environ...
Next Generation Scheduling for YARN and K8s: For Hybrid Cloud/On-prem Environ...Next Generation Scheduling for YARN and K8s: For Hybrid Cloud/On-prem Environ...
Next Generation Scheduling for YARN and K8s: For Hybrid Cloud/On-prem Environ...
 
Introduction to KubeDirector - SF Kubernetes Meetup
Introduction to KubeDirector - SF Kubernetes MeetupIntroduction to KubeDirector - SF Kubernetes Meetup
Introduction to KubeDirector - SF Kubernetes Meetup
 
GitOps & the deployment branching models - DevOps D-day Marseille 2021
GitOps & the deployment branching models - DevOps D-day Marseille 2021GitOps & the deployment branching models - DevOps D-day Marseille 2021
GitOps & the deployment branching models - DevOps D-day Marseille 2021
 
Big data and Kubernetes
Big data and KubernetesBig data and Kubernetes
Big data and Kubernetes
 
Red Hat OpenShift Container Platform Overview
Red Hat OpenShift Container Platform OverviewRed Hat OpenShift Container Platform Overview
Red Hat OpenShift Container Platform Overview
 
Fully Orchestrating Applications, Microservices and Enterprise Services with ...
Fully Orchestrating Applications, Microservices and Enterprise Services with ...Fully Orchestrating Applications, Microservices and Enterprise Services with ...
Fully Orchestrating Applications, Microservices and Enterprise Services with ...
 
Container Native Development Tools - Talk by Mickey Boxell
Container Native Development Tools - Talk by Mickey BoxellContainer Native Development Tools - Talk by Mickey Boxell
Container Native Development Tools - Talk by Mickey Boxell
 
Pivotal Cloud Foundry 2.5: A First Look
Pivotal Cloud Foundry 2.5: A First LookPivotal Cloud Foundry 2.5: A First Look
Pivotal Cloud Foundry 2.5: A First Look
 
Accelerate Digital Transformation with Pivotal Cloud Foundry on Azure
Accelerate Digital Transformation with Pivotal Cloud Foundry on AzureAccelerate Digital Transformation with Pivotal Cloud Foundry on Azure
Accelerate Digital Transformation with Pivotal Cloud Foundry on Azure
 
DevOps for Big Data - Data 360 2014 Conference
DevOps for Big Data - Data 360 2014 ConferenceDevOps for Big Data - Data 360 2014 Conference
DevOps for Big Data - Data 360 2014 Conference
 
DevOps Spain 2019. David Cañadillas -Cloudbees
DevOps Spain 2019. David Cañadillas -CloudbeesDevOps Spain 2019. David Cañadillas -Cloudbees
DevOps Spain 2019. David Cañadillas -Cloudbees
 

Similar to The Chef Prince of Azure - ChefConf 2015

Cooking Up Windows with Chef Automate
Cooking Up Windows with Chef AutomateCooking Up Windows with Chef Automate
Cooking Up Windows with Chef AutomateMatt Ray
 
Transform Digital Business with DevOps
Transform Digital Business with DevOpsTransform Digital Business with DevOps
Transform Digital Business with DevOpsDaniel Oh
 
Chef Automate - Azure Sydney User Group
Chef Automate - Azure Sydney User GroupChef Automate - Azure Sydney User Group
Chef Automate - Azure Sydney User GroupMatt Ray
 
Paa s concepts_mod_march11
Paa s concepts_mod_march11Paa s concepts_mod_march11
Paa s concepts_mod_march11Amir Zipory
 
Capture the Cloud with Azure
Capture the Cloud with AzureCapture the Cloud with Azure
Capture the Cloud with AzureShahed Chowdhuri
 
Global Azure 2024 - On-Premises to Azure Cloud: .NET Web App Journey
Global Azure 2024 - On-Premises to Azure Cloud: .NET Web App JourneyGlobal Azure 2024 - On-Premises to Azure Cloud: .NET Web App Journey
Global Azure 2024 - On-Premises to Azure Cloud: .NET Web App JourneyCallon Campbell
 
Microsoft Azure DevOps
Microsoft Azure DevOpsMicrosoft Azure DevOps
Microsoft Azure DevOpstdc-globalcode
 
WebFest 2011 Hosting Applications CR by David Tang
WebFest 2011 Hosting Applications CR by David TangWebFest 2011 Hosting Applications CR by David Tang
WebFest 2011 Hosting Applications CR by David TangSpiffy
 
Microsoft Next 2014 - Cloud platform session 4 - Transform the datacenter v. ...
Microsoft Next 2014 - Cloud platform session 4 - Transform the datacenter v. ...Microsoft Next 2014 - Cloud platform session 4 - Transform the datacenter v. ...
Microsoft Next 2014 - Cloud platform session 4 - Transform the datacenter v. ...Microsoft
 
Delivering Applications Continuously to Cloud
Delivering Applications Continuously to CloudDelivering Applications Continuously to Cloud
Delivering Applications Continuously to CloudIBM UrbanCode Products
 
AWS OpsWorks for Chef Automate
AWS OpsWorks for Chef AutomateAWS OpsWorks for Chef Automate
AWS OpsWorks for Chef AutomatePolarSeven Pty Ltd
 
WSO2Con US 2013 - Re-design Enterprise IT with WSO2 App Factory and WSO2 Cloud
WSO2Con US 2013 - Re-design Enterprise IT with WSO2 App Factory and WSO2 Cloud WSO2Con US 2013 - Re-design Enterprise IT with WSO2 App Factory and WSO2 Cloud
WSO2Con US 2013 - Re-design Enterprise IT with WSO2 App Factory and WSO2 Cloud WSO2
 
Enterprise Cloud with IBM & Chef (ChefConf 2013)
Enterprise Cloud with IBM & Chef (ChefConf 2013)Enterprise Cloud with IBM & Chef (ChefConf 2013)
Enterprise Cloud with IBM & Chef (ChefConf 2013)Michael Elder
 
Contino Webinar - Migrating your Trading Workloads to the Cloud
Contino Webinar -  Migrating your Trading Workloads to the CloudContino Webinar -  Migrating your Trading Workloads to the Cloud
Contino Webinar - Migrating your Trading Workloads to the CloudBen Saunders
 
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...Amazon Web Services
 
Achieve Scale & Velocity with AWS OpsWorks for Chef Automate
Achieve Scale & Velocity with AWS OpsWorks for Chef AutomateAchieve Scale & Velocity with AWS OpsWorks for Chef Automate
Achieve Scale & Velocity with AWS OpsWorks for Chef AutomateAmazon Web Services
 
.NET Cloud-Native Bootcamp
.NET Cloud-Native Bootcamp.NET Cloud-Native Bootcamp
.NET Cloud-Native BootcampVMware Tanzu
 

Similar to The Chef Prince of Azure - ChefConf 2015 (20)

Cooking Up Windows with Chef Automate
Cooking Up Windows with Chef AutomateCooking Up Windows with Chef Automate
Cooking Up Windows with Chef Automate
 
Transform Digital Business with DevOps
Transform Digital Business with DevOpsTransform Digital Business with DevOps
Transform Digital Business with DevOps
 
Chef Automate - Azure Sydney User Group
Chef Automate - Azure Sydney User GroupChef Automate - Azure Sydney User Group
Chef Automate - Azure Sydney User Group
 
DevOps Offerings at WhiteHedge
DevOps Offerings at WhiteHedgeDevOps Offerings at WhiteHedge
DevOps Offerings at WhiteHedge
 
Paa s concepts_mod_march11
Paa s concepts_mod_march11Paa s concepts_mod_march11
Paa s concepts_mod_march11
 
Capture the Cloud with Azure
Capture the Cloud with AzureCapture the Cloud with Azure
Capture the Cloud with Azure
 
Opscode tech festa july 2013
Opscode tech festa   july 2013Opscode tech festa   july 2013
Opscode tech festa july 2013
 
Azure: PaaS or IaaS
Azure: PaaS or IaaSAzure: PaaS or IaaS
Azure: PaaS or IaaS
 
Global Azure 2024 - On-Premises to Azure Cloud: .NET Web App Journey
Global Azure 2024 - On-Premises to Azure Cloud: .NET Web App JourneyGlobal Azure 2024 - On-Premises to Azure Cloud: .NET Web App Journey
Global Azure 2024 - On-Premises to Azure Cloud: .NET Web App Journey
 
Microsoft Azure DevOps
Microsoft Azure DevOpsMicrosoft Azure DevOps
Microsoft Azure DevOps
 
WebFest 2011 Hosting Applications CR by David Tang
WebFest 2011 Hosting Applications CR by David TangWebFest 2011 Hosting Applications CR by David Tang
WebFest 2011 Hosting Applications CR by David Tang
 
Microsoft Next 2014 - Cloud platform session 4 - Transform the datacenter v. ...
Microsoft Next 2014 - Cloud platform session 4 - Transform the datacenter v. ...Microsoft Next 2014 - Cloud platform session 4 - Transform the datacenter v. ...
Microsoft Next 2014 - Cloud platform session 4 - Transform the datacenter v. ...
 
Delivering Applications Continuously to Cloud
Delivering Applications Continuously to CloudDelivering Applications Continuously to Cloud
Delivering Applications Continuously to Cloud
 
AWS OpsWorks for Chef Automate
AWS OpsWorks for Chef AutomateAWS OpsWorks for Chef Automate
AWS OpsWorks for Chef Automate
 
WSO2Con US 2013 - Re-design Enterprise IT with WSO2 App Factory and WSO2 Cloud
WSO2Con US 2013 - Re-design Enterprise IT with WSO2 App Factory and WSO2 Cloud WSO2Con US 2013 - Re-design Enterprise IT with WSO2 App Factory and WSO2 Cloud
WSO2Con US 2013 - Re-design Enterprise IT with WSO2 App Factory and WSO2 Cloud
 
Enterprise Cloud with IBM & Chef (ChefConf 2013)
Enterprise Cloud with IBM & Chef (ChefConf 2013)Enterprise Cloud with IBM & Chef (ChefConf 2013)
Enterprise Cloud with IBM & Chef (ChefConf 2013)
 
Contino Webinar - Migrating your Trading Workloads to the Cloud
Contino Webinar -  Migrating your Trading Workloads to the CloudContino Webinar -  Migrating your Trading Workloads to the Cloud
Contino Webinar - Migrating your Trading Workloads to the Cloud
 
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
 
Achieve Scale & Velocity with AWS OpsWorks for Chef Automate
Achieve Scale & Velocity with AWS OpsWorks for Chef AutomateAchieve Scale & Velocity with AWS OpsWorks for Chef Automate
Achieve Scale & Velocity with AWS OpsWorks for Chef Automate
 
.NET Cloud-Native Bootcamp
.NET Cloud-Native Bootcamp.NET Cloud-Native Bootcamp
.NET Cloud-Native Bootcamp
 

More from Chef

Habitat Managed Chef
Habitat Managed ChefHabitat Managed Chef
Habitat Managed ChefChef
 
Automation, Audits, and Apps Tour
Automation, Audits, and Apps TourAutomation, Audits, and Apps Tour
Automation, Audits, and Apps TourChef
 
Automation, Audits, and Apps Tour
Automation, Audits, and Apps TourAutomation, Audits, and Apps Tour
Automation, Audits, and Apps TourChef
 
Compliance Automation Workshop
Compliance Automation WorkshopCompliance Automation Workshop
Compliance Automation WorkshopChef
 
London Community Summit 2016 - Adopting Chef Compliance
London Community Summit 2016 - Adopting Chef ComplianceLondon Community Summit 2016 - Adopting Chef Compliance
London Community Summit 2016 - Adopting Chef ComplianceChef
 
Learning from Configuration Management
Learning from Configuration Management Learning from Configuration Management
Learning from Configuration Management Chef
 
London Community Summit 2016 - Fresh New Chef Stuff
London Community Summit 2016 - Fresh New Chef StuffLondon Community Summit 2016 - Fresh New Chef Stuff
London Community Summit 2016 - Fresh New Chef StuffChef
 
London Community Summit - Chef at SkyBet
London Community Summit - Chef at SkyBetLondon Community Summit - Chef at SkyBet
London Community Summit - Chef at SkyBetChef
 
London Community Summit - From Contribution to Authorship
London Community Summit - From Contribution to AuthorshipLondon Community Summit - From Contribution to Authorship
London Community Summit - From Contribution to AuthorshipChef
 
London Community Summit 2016 - Chef Automate
London Community Summit 2016 - Chef AutomateLondon Community Summit 2016 - Chef Automate
London Community Summit 2016 - Chef AutomateChef
 
London Community Summit 2016 - Community Update
London Community Summit 2016 - Community UpdateLondon Community Summit 2016 - Community Update
London Community Summit 2016 - Community UpdateChef
 
London Community Summit 2016 - Habitat
London Community Summit 2016 -  HabitatLondon Community Summit 2016 -  Habitat
London Community Summit 2016 - HabitatChef
 
Compliance Automation with Inspec Part 4
Compliance Automation with Inspec Part 4Compliance Automation with Inspec Part 4
Compliance Automation with Inspec Part 4Chef
 
Compliance Automation with Inspec Part 3
Compliance Automation with Inspec Part 3Compliance Automation with Inspec Part 3
Compliance Automation with Inspec Part 3Chef
 
Compliance Automation with Inspec Part 2
Compliance Automation with Inspec Part 2Compliance Automation with Inspec Part 2
Compliance Automation with Inspec Part 2Chef
 
Compliance Automation with Inspec Part 1
Compliance Automation with Inspec Part 1Compliance Automation with Inspec Part 1
Compliance Automation with Inspec Part 1Chef
 
Application Automation with Habitat
Application Automation with HabitatApplication Automation with Habitat
Application Automation with HabitatChef
 
Achieving DevOps Success with Chef Automate
Achieving DevOps Success with Chef AutomateAchieving DevOps Success with Chef Automate
Achieving DevOps Success with Chef AutomateChef
 
Nike pop up habitat
Nike pop up   habitatNike pop up   habitat
Nike pop up habitatChef
 
Nike popup compliance workshop
Nike popup compliance workshopNike popup compliance workshop
Nike popup compliance workshopChef
 

More from Chef (20)

Habitat Managed Chef
Habitat Managed ChefHabitat Managed Chef
Habitat Managed Chef
 
Automation, Audits, and Apps Tour
Automation, Audits, and Apps TourAutomation, Audits, and Apps Tour
Automation, Audits, and Apps Tour
 
Automation, Audits, and Apps Tour
Automation, Audits, and Apps TourAutomation, Audits, and Apps Tour
Automation, Audits, and Apps Tour
 
Compliance Automation Workshop
Compliance Automation WorkshopCompliance Automation Workshop
Compliance Automation Workshop
 
London Community Summit 2016 - Adopting Chef Compliance
London Community Summit 2016 - Adopting Chef ComplianceLondon Community Summit 2016 - Adopting Chef Compliance
London Community Summit 2016 - Adopting Chef Compliance
 
Learning from Configuration Management
Learning from Configuration Management Learning from Configuration Management
Learning from Configuration Management
 
London Community Summit 2016 - Fresh New Chef Stuff
London Community Summit 2016 - Fresh New Chef StuffLondon Community Summit 2016 - Fresh New Chef Stuff
London Community Summit 2016 - Fresh New Chef Stuff
 
London Community Summit - Chef at SkyBet
London Community Summit - Chef at SkyBetLondon Community Summit - Chef at SkyBet
London Community Summit - Chef at SkyBet
 
London Community Summit - From Contribution to Authorship
London Community Summit - From Contribution to AuthorshipLondon Community Summit - From Contribution to Authorship
London Community Summit - From Contribution to Authorship
 
London Community Summit 2016 - Chef Automate
London Community Summit 2016 - Chef AutomateLondon Community Summit 2016 - Chef Automate
London Community Summit 2016 - Chef Automate
 
London Community Summit 2016 - Community Update
London Community Summit 2016 - Community UpdateLondon Community Summit 2016 - Community Update
London Community Summit 2016 - Community Update
 
London Community Summit 2016 - Habitat
London Community Summit 2016 -  HabitatLondon Community Summit 2016 -  Habitat
London Community Summit 2016 - Habitat
 
Compliance Automation with Inspec Part 4
Compliance Automation with Inspec Part 4Compliance Automation with Inspec Part 4
Compliance Automation with Inspec Part 4
 
Compliance Automation with Inspec Part 3
Compliance Automation with Inspec Part 3Compliance Automation with Inspec Part 3
Compliance Automation with Inspec Part 3
 
Compliance Automation with Inspec Part 2
Compliance Automation with Inspec Part 2Compliance Automation with Inspec Part 2
Compliance Automation with Inspec Part 2
 
Compliance Automation with Inspec Part 1
Compliance Automation with Inspec Part 1Compliance Automation with Inspec Part 1
Compliance Automation with Inspec Part 1
 
Application Automation with Habitat
Application Automation with HabitatApplication Automation with Habitat
Application Automation with Habitat
 
Achieving DevOps Success with Chef Automate
Achieving DevOps Success with Chef AutomateAchieving DevOps Success with Chef Automate
Achieving DevOps Success with Chef Automate
 
Nike pop up habitat
Nike pop up   habitatNike pop up   habitat
Nike pop up habitat
 
Nike popup compliance workshop
Nike popup compliance workshopNike popup compliance workshop
Nike popup compliance workshop
 

Recently uploaded

FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsPaul Groth
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Product School
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Product School
 
In-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsIn-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsExpeed Software
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsVlad Stirbu
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...Product School
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor TurskyiFwdays
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesBhaskar Mitra
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Alison B. Lowndes
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupCatarinaPereira64715
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...Product School
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...Product School
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaRTTS
 

Recently uploaded (20)

FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
In-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsIn-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT Professionals
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 

The Chef Prince of Azure - ChefConf 2015

  • 1. The Chef Prince of Azure HOW 10TH MAGNITUDE USED CHEF TO FLIP-TURN ZS ASSOCIATES INTO MICROSOFT AZURE ROYALTY John Smyth, Trevor Hess, Mahesh Velaga
  • 2. INTRODUCTIONS 2 Mahesh Velaga, ZS Associates Trevor Hess 10th Magnitude John Smyth 10th Magnitude
  • 3. 3
  • 4. CONTACT US John Smyth Is too old for Twitter Trevor Hess @trevorghess Mahesh Velaga @mahesh_velaga 4
  • 5. OVERVIEW From Business as Usual to Infrastructure as Code  Technical  Cultural  Business 5
  • 6. ABOUT ZS ASSOCIATES 6 ZS is the world’s largest firm focused exclusively on delivering impact through high-performance sales and marketing solutions SALES + MARKETING SOFTWARE AS A SERVICE Automate key business processes 3,200 PROFESSIONALS 21 OFFICES WORLDWIDE ZS is the world’s largest firm focused exclusively on delivering impact through high-performance sales and marketing solutions 30 + YEARS OF INDUSTRY & DOMAIN EXPERTISE Quota Management Compensation Management & Reporting MBO Planning Territory Management Activity & Call Planning
  • 7. ABOUT 10TH MAGNITUDE 7 Microsoft Azure Migration Web, Media and Mobile Application Development DevOps and Azure- Enabled Automation Managed Applications and Infrastructure 10th Magnitude was born in the cloud, and offers corporate customers multiple, interconnected paths to Azure success:
  • 8. ONE CONFIG ERROR AND THE BOSS GOT SCARED The Problem 8
  • 9. THE SERVER CONFIGURATION PROCESS Lengthy  Provision process time of 3 days Manual  Half a day of manual server provisioning and validation Prone to Human Error  Process involved different systems and people working independently from one another Lacked an Overall Framework  Lacked consistency and organization and ability for version control 9
  • 10. PUT CHEF IN THERE! The Journey to Infrastructure as Code 10
  • 11. OUR APPROACH 11 Define the Pattern Teach the PatternUse the Pattern Observe the Pattern
  • 12. OUR APPROACH 12 Define the Pattern Use the Pattern Teach the Pattern Observe the Pattern • Define the appropriate toolset • Define the development workflow • Define the object structure • Define the cookbook structure
  • 13. OUR APPROACH 13 Define the Pattern Use the Pattern Teach the Pattern Observe the Pattern • Set up Chef Server, source control, base images, boxes, etc. • Create CI Workflows • Develop base cookbooks using the development workflow and CI process end-to-end
  • 14. OUR APPROACH 14 Define the Pattern Use the Pattern Teach the Pattern Observe the Pattern • Pair with customer resources on cookbook creation • Provide guidance on TDD cookbook development, Continuous Integration, etc. • Lead code reviews
  • 15. OUR APPROACH 15 Define the Pattern Use the Pattern Teach the Pattern Observe the Pattern • Be available as SME to customer • Observe and assist in creation of tests, cookbooks, and documentation upon request • Participate in code reviews
  • 16. METHODOLOGY Test-Driven Development  Red: Write failing test  Green: Make the test pass  Refactor: Optimize the code Continuous Delivery  Using Continuous Integration and tests to validate commits and ensure stable product at all times 16
  • 17. TOOLS  Enterprise Chef 11  Vagrant  Git  Berkshelf  Minitest  Foodcritic  TeamCity  PowerShell  Editor of Choice (choose vim)  Chef-vault  VirtualBox 17
  • 18. WORKFLOW 1. Local Development with Vagrant  Write tests (mini tests)  Write Chef recipes  Test locally with Vagrant  Iterate 2. CI/CD on Code Check In  Lint the code with Food Critic  Converge and test Cookbook on Vsphere  Converge and test Cookbook on Azure  Upload to Chef server 18
  • 19. 19 Developer tests with local suite PushChange Start_here Upon git check in… Bump version number and upload to git. foodcritic lint berks install— get dependencies berks upload— upload to chefci Cookbook CI Pipeline Azure Tests Converge_node.rb: • Reserve test VM by moving to Azure Chef environment • Converge with knife: • Cookbook recipes • Run minitest • Remove the test VM from Chef and destroy the VM Converge_node.rb: • “Reserve” test VM by moving Vsphere to Chef Environment • Converge with knife: • Cookbook recipes • Run minitest • Remove the test VM from Chef and destroy the VM Vsphere Tests Tag and Upload Create a tagged branch in git for this version berks upload—install cookbook to zssd Chef Org zschefci Chef: zssd Test nodes only Test VM Test VM Staging QA Dev Productio n
  • 20. STEP ONE: CREATE THE VM WITH POWERSHELL Azure  Create the Virtual Machine  Create the cloud service, if required  Map appropriate endpoints  Join the domain  Bootstrap Chef and converge  Install Chef Client  Create the node and client  Update chef vault for client key  Set the runlist  Force chef run(s) VSphere  Create the Virtual Machine  Select the appropriate datastore  Customize the (sysprepped) OS  Set memory and CPU, depending on VM type  Set port group and adapter type  Join the domain  Move to appropriate OU  Add drives, depending on VM type  Setup WinRM  Bootstrap Chef and converge  Install Chef Client  Create the node and client  Update chef vault for the client key  Set the runlist  Force chef run(s) 20
  • 21. STEP TWO: CONVERGE THE WEB SERVER WITH CHEF  Base OS Configuration  Install and configure ZS standard third party software (monitoring, antivirus, etc)  Install and configure IIS dependencies  Install and configure IIS for ZS web sites and services 21  Enterprise Chef 11  Windows Cookbook  IIS Cookbook  Webpi cookbook  ms_dotnet4 cookbook  Minitest-handler cookbook
  • 22. FLIP-TURNED UPSIDE DOWN The Transformation 22
  • 23. TECHNICAL Fully automated server provisioning  From days to less than an hour  Consistent versioned deployment  Consistent Azure and VSphere configuration Infrastructure as Code  Chef Framework  Versioning 23
  • 24. CULTURAL  Infrastructure as Code (Don’t touch the servers)  Evolving towards a blue-green deployment model 24
  • 25. BUSINESS  Accelerated their Azure migration  Frees up IT talent for other projects related to business generation  More reliable and dependable infrastructure  More rapid deployment of resources 25
  • 26. VIEW FROM THE THRONE What we learned 26
  • 27. CODE REVIEWS, ALL TOGETHER NOW!  Establish standards  Learning Experience  Sharing Ideas  Just do it! 27
  • 28. BIG PICTURE  Chef isn’t just something you buy, it’s something you do  Chef doesn’t transform your organization— YOU do* *with Chef 28
  • 29. BIG PICTURE  Not everything needs to be a revolution  Evolve your infrastructure 29
  • 30. GO FORTH AND GET WORK DONE! 30
  • 31. CONTACT US www.10thmangitude.com www.zsassociates.com John Smyth jsmyth@10thmagnitude.com Trevor Hess thess@10thmagnitude.com @trevorghess Mahesh Velaga mahesh.velaga@zsassociates.com 31

Editor's Notes

  1. Each person introduces himself
  2. Need Mahesh’s
  3. JOHN Transformation story-just like Will Smith transformed him from a shitty rapper to a shitty actor only this one has a happy ending From business as usual to IaC
  4. MAHESH ZS is the world’s largest firm focused exclusively on delivering impact through high-performance sales and marketing solutions Stress importance of software Microsoft shop
  5. TREVOR Azure Experts John makes a joke about his marketing dept.
  6. Trevor reads this slide and prompts MAHESH Trevor-It’s a Rube Goldberg
  7. JOHN
  8. JOHN Trevor explains continuous delivery
  9. JOHN
  10. MAHESH Test Driven Development CI tests against VSphere and Azure Same image/VM deployment for CI and production -- Task is assigned in JIRA Developer creates a feature branch and tests on local Vagrant instance Failing test is implemented Feature is implemented to make test pass Developer pushes branch and assigns a reviewer in JIRA Assigned developer reviews code against standards and merges to master Check into master  Initiates CI process -- Possible question for Mahesh: IN WF in Jira are they tasks under a single issue or individual issues? (reports) IF we need time can talk about the separate tasks for tests and code, etc. Is it a gated check-in process?
  11. JOHN
  12. JOHN
  13. MAHESH -- Set the time zone Install Bginfo Set up Internet Explorer Settings: Show hidden files Don’t hide file extensions Turn off sharing wizard Disable print spool warnings Set the page file location and size Install debug diagnostics Install network monitor and required netmon parsers Install VNC Enable RDP Configure the firewall Install Windbg Add scheduled tasks for WSUS Install splunk forwarder Install SQL IO Set the temp dir Install anti-virus software Disable IPv6 Set the power profile Add static routes Install IIS required modules Install IIS rewrite Install dynatrace Set timeouts Configure .NET security Make various web.config changes for 32 and 64 bit .NET, multiple framework versions Set the dynamic port range Set IIS log and temp folders Enable configure and IIS shared config Disable Netdma Set TCP time wait delay FCN registry setting Create scheduled tasks, IIS log rotation, app pool status
  14. MAHESH Used Powershell to spin up VMs in Azure and Vshere Reused those for rolling out real virtual machines Same set of powershell scripts and recipes IaC > Pieces were automated but you’d have to manually tie all the separate scripts together You can see exactly what ran, what version, etc.
  15. MAHESH Understood concept of IaC from App Dev, but needed a framework and ability to apply it to infrastructure
  16. MAHESH Accelerated their Azure migration because it made the organization more technically agile. John makes comment > technical agility facilitates business agility
  17. JOHN Started out not doing them but it was so new to everyone that ppl didn’t know what to look for. (Weekly month and half) When you’re reviewing against standards, you need to have standards Weekly code reviews helped to build those standards Teach different Chef best practices (Powershell as an example) Become familiar with the resources John learned things! He’s the supposed expert but things came up that were interesting Establish practices/learn things!
  18. JOHN Actively involved Chef
  19. JOHN It’s not all or none, you make incremental changes Revolutions are bloody, Evolutions can be much more effective. You just don’t go from zero to Etsy
  20. TREVOR [What he thinks is most important] MAHESH [What he thinks is most important] JOHN Bottom line: accomplishing real work. “I didn’t really want to do this talk because I thought it wasn’t a big deal. But looking back it is a big deal. We just did one thing at a time and eventually we were at a different place then when we started.”