SlideShare a Scribd company logo
1 of 16
Download to read offline
INtroduction to
                        DevOps
                            Being one with the flow




Wednesday, February 6, 13
Introduction
                                             G. Ryan Fawcett




           •       Trained Agile Scrum / Kanban Master from 2004 - Today

           •       20 years of System Engineering / System Administration experience

           •        Pervious engagements Kontera , Yahoo , Safeway and others big and small




Wednesday, February 6, 13
DevOps
                                              What does it mean to us




                    •       Infra-structure as code

                    •       Reproducible Environments ( Dev, QA, Production)

                    •       Kanban Change Management and Project Management

                    •       Meeting Business needs with Development Agile processes

                    •       Automated build environment

                    •       Continuous Integration / Deployment

                    •       Its all about FLOW




Wednesday, February 6, 13
What is Chef ?


                    •       Chef is a infrastructure configuration management platform to create
                            infrastructure as code

                    •       Configuration policy enforcement tool

                    •       Continuous integration tool




Wednesday, February 6, 13
Chef
                            Client Server Architecture




Wednesday, February 6, 13
Chef Structures

                •       Roles: is a grouping of cookbooks and recipes shared between a type of
                        node

                •       Node: is a machine that has roles and attributes assigned to it

                •       Cookbook: a collection of recipes

                •       Recipe: a collection of resources

                •       Resource: basic unit of work, package, service, template, file, exec, etc

                •       Attributes: node data such as IP address, Hostname, any value you set

                •       Data-bag: data store of globally available JSON data




Wednesday, February 6, 13
Recipe
                                                             Simple Example of a Recipe
      yum_package "autofs" do
       action :install
      end

      service "autofs" do
       supports :restart => true, :status => true, :reload => true
       action [:enable, :start]
      end

      template "/etc/auto.master" do
       source "auto.master.erb"
       owner "root"
       mode "0644"
       notifies :restart, resources(:service => "autofs" )
      end

      template "/etc/auto.home" do
        source "auto.home.erb"
        owner "root"
        mode "0644"
        variables({
      !       :fqdn => node[:fqdn],
      !       :autofs_server => node[:autofs_server],
      !       })
        notifies :restart, resources(:service => "autofs" )
      end



Wednesday, February 6, 13
ERB Templates
          <%=
          if node[:domain] == "dc1.company.org"
             node.set['autofs_server'] = '10.1.4.120'
          end

          if node[:domain] == "dc2.company.org"
             node.set['autofs_server'] = '10.100.0.11'
          end
          %>



          *  -fstype=nfs,rw,nosuid,nodev,intr,soft <%= node[:autofs_server] %>:/
          home_vol_01/&




Wednesday, February 6, 13
Live DEMO




Wednesday, February 6, 13
Kanban & Ops
                                                   What it accomplishes




                            •   Knowledge Share ( Stand up / Documentation )
                            •   Project Management ( Status of WIP for resource planning )
                            •   Change Management ( Dashboard for what is changing )
                            •   Operational Transparency ( Status of Projects / Deployments )
                            •   Business Performance Metrics ( Reporting tools to see how low it takes
                                to make changes and deploy code)




Wednesday, February 6, 13
Operations Kanban




Wednesday, February 6, 13
Jenkins and Branching


                  •         Automated Build process daily or hourly ?

                  •         Roll forward methodology a rollback is a push forward in version but
                            pervious production push.

                  •         Ability to build a release or tree in under 30 mins.




Wednesday, February 6, 13
Managed environments


                    •       Need for Environments to Sync up

                    •       That process of building is the same on QA, Staging, and Production
                            Machines

                    •       A centralized Chef source code repository shared company wide

                    •       Virtualization of QA and Staging Environments to imitate production

                    •       Automation / Configuration Meetings to discuss this with Dev,QA on
                            an ongoing basis.




Wednesday, February 6, 13
Continuous deployment
                          pipeline


                    •       QA Promotes the Build to Staging

                    •       Smoke and Load performance testing in a Staging Environment

                    •       Build is promoted to Production Ready

                    •       Chef server picks up the build and Places it in CCDeploy Repository

                    •       Chef-clients checks for updates and updates the deployed packages
                            on the servers

                    •       Chef continues to run and configures the application based on its
                            configuration files in the chef server.




Wednesday, February 6, 13
Continuous Deployment




Wednesday, February 6, 13
QUESTIONS ?    Contact Me @
                                      g.ryan.fawcett@commtouch.com
                                  LinkedIN www.linkedin.com/in/gryanfawcett/

                                           More on Chef
                      http://www.slideshare.net/gryanfawcett/cooking-5-star-
                                     infrastructure-with-chef




Wednesday, February 6, 13

More Related Content

What's hot

PuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & Hadoop
PuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & HadoopPuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & Hadoop
PuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & HadoopWalter Heck
 
Building Hadoop with Chef
Building Hadoop with ChefBuilding Hadoop with Chef
Building Hadoop with ChefJohn Martin
 
Infrastructure modeling with chef
Infrastructure modeling with chefInfrastructure modeling with chef
Infrastructure modeling with chefCharles Johnson
 
Deploying Hadoop-Based Bigdata Environments
Deploying Hadoop-Based Bigdata EnvironmentsDeploying Hadoop-Based Bigdata Environments
Deploying Hadoop-Based Bigdata EnvironmentsPuppet
 
Using SaltStack to DevOps the enterprise
Using SaltStack to DevOps the enterpriseUsing SaltStack to DevOps the enterprise
Using SaltStack to DevOps the enterpriseChristian McHugh
 
Chef Automate - Wellington DevOps August 2, 2017
Chef Automate - Wellington DevOps August 2, 2017Chef Automate - Wellington DevOps August 2, 2017
Chef Automate - Wellington DevOps August 2, 2017Matt Ray
 
Chef ignited a DevOps revolution – BK Box
Chef ignited a DevOps revolution – BK BoxChef ignited a DevOps revolution – BK Box
Chef ignited a DevOps revolution – BK BoxChef Software, Inc.
 
Kubernetes & CI/CD
Kubernetes & CI/CDKubernetes & CI/CD
Kubernetes & CI/CDScaleway
 
Cooking on Windows without the Windows Cookbook
Cooking on Windows without the Windows CookbookCooking on Windows without the Windows Cookbook
Cooking on Windows without the Windows CookbookChef Software, Inc.
 
Automation: PowerShell & DSC
Automation: PowerShell & DSCAutomation: PowerShell & DSC
Automation: PowerShell & DSCJosh Gillespie
 
Chef Automate - Azure Sydney User Group
Chef Automate - Azure Sydney User GroupChef Automate - Azure Sydney User Group
Chef Automate - Azure Sydney User GroupMatt Ray
 
An Introduction into Bosh | anynines
An Introduction into Bosh | anynines An Introduction into Bosh | anynines
An Introduction into Bosh | anynines anynines GmbH
 
Configuration manager presentation
Configuration manager presentationConfiguration manager presentation
Configuration manager presentationjeyg
 
Ops Works Presentation Desert Code Camp 2014
Ops Works Presentation Desert Code Camp 2014Ops Works Presentation Desert Code Camp 2014
Ops Works Presentation Desert Code Camp 2014Pankaj Gaddam
 
Armada - the way to ship microservices
Armada - the way to ship microservicesArmada - the way to ship microservices
Armada - the way to ship microservicesGameDesire Company
 
Emerging chef patterns and practices
Emerging chef patterns and practicesEmerging chef patterns and practices
Emerging chef patterns and practicesOwain Perry
 
Immutable infrastructure:觀念與實作 (建議)
Immutable infrastructure:觀念與實作 (建議)Immutable infrastructure:觀念與實作 (建議)
Immutable infrastructure:觀念與實作 (建議)William Yeh
 

What's hot (20)

PuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & Hadoop
PuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & HadoopPuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & Hadoop
PuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & Hadoop
 
Building Hadoop with Chef
Building Hadoop with ChefBuilding Hadoop with Chef
Building Hadoop with Chef
 
Infrastructure modeling with chef
Infrastructure modeling with chefInfrastructure modeling with chef
Infrastructure modeling with chef
 
Deploying Hadoop-Based Bigdata Environments
Deploying Hadoop-Based Bigdata EnvironmentsDeploying Hadoop-Based Bigdata Environments
Deploying Hadoop-Based Bigdata Environments
 
Using SaltStack to DevOps the enterprise
Using SaltStack to DevOps the enterpriseUsing SaltStack to DevOps the enterprise
Using SaltStack to DevOps the enterprise
 
Chef Automate - Wellington DevOps August 2, 2017
Chef Automate - Wellington DevOps August 2, 2017Chef Automate - Wellington DevOps August 2, 2017
Chef Automate - Wellington DevOps August 2, 2017
 
Chef ignited a DevOps revolution – BK Box
Chef ignited a DevOps revolution – BK BoxChef ignited a DevOps revolution – BK Box
Chef ignited a DevOps revolution – BK Box
 
Kubernetes & CI/CD
Kubernetes & CI/CDKubernetes & CI/CD
Kubernetes & CI/CD
 
Cooking on Windows without the Windows Cookbook
Cooking on Windows without the Windows CookbookCooking on Windows without the Windows Cookbook
Cooking on Windows without the Windows Cookbook
 
Automation: PowerShell & DSC
Automation: PowerShell & DSCAutomation: PowerShell & DSC
Automation: PowerShell & DSC
 
What's new in chef 12
What's new in chef 12 What's new in chef 12
What's new in chef 12
 
Chef Automate - Azure Sydney User Group
Chef Automate - Azure Sydney User GroupChef Automate - Azure Sydney User Group
Chef Automate - Azure Sydney User Group
 
CharlesDickens-Resume
CharlesDickens-ResumeCharlesDickens-Resume
CharlesDickens-Resume
 
An Introduction into Bosh | anynines
An Introduction into Bosh | anynines An Introduction into Bosh | anynines
An Introduction into Bosh | anynines
 
Configuration manager presentation
Configuration manager presentationConfiguration manager presentation
Configuration manager presentation
 
Ops Works Presentation Desert Code Camp 2014
Ops Works Presentation Desert Code Camp 2014Ops Works Presentation Desert Code Camp 2014
Ops Works Presentation Desert Code Camp 2014
 
Armada - the way to ship microservices
Armada - the way to ship microservicesArmada - the way to ship microservices
Armada - the way to ship microservices
 
Ravi_updated_resume
Ravi_updated_resumeRavi_updated_resume
Ravi_updated_resume
 
Emerging chef patterns and practices
Emerging chef patterns and practicesEmerging chef patterns and practices
Emerging chef patterns and practices
 
Immutable infrastructure:觀念與實作 (建議)
Immutable infrastructure:觀念與實作 (建議)Immutable infrastructure:觀念與實作 (建議)
Immutable infrastructure:觀念與實作 (建議)
 

Similar to Devops what it means to me

Continuous Load Testing with CloudTest and Jenkins
Continuous Load Testing with CloudTest and JenkinsContinuous Load Testing with CloudTest and Jenkins
Continuous Load Testing with CloudTest and JenkinsSOASTA
 
Continuous Load Testing with CloudTest and Jenkins
Continuous Load Testing with CloudTest and JenkinsContinuous Load Testing with CloudTest and Jenkins
Continuous Load Testing with CloudTest and JenkinsSOASTA
 
Infrastructure as Code
Infrastructure as CodeInfrastructure as Code
Infrastructure as CodeRobert Greiner
 
Getting to Walk with DevOps
Getting to Walk with DevOpsGetting to Walk with DevOps
Getting to Walk with DevOpsEklove Mohan
 
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source ToolsTYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source ToolsMichael Lihs
 
DCRUG: Achieving Development-Production Parity
DCRUG: Achieving Development-Production ParityDCRUG: Achieving Development-Production Parity
DCRUG: Achieving Development-Production ParityGeoff Harcourt
 
Standardizing and Managing Your Infrastructure - MOSC 2011
Standardizing and Managing Your Infrastructure - MOSC 2011Standardizing and Managing Your Infrastructure - MOSC 2011
Standardizing and Managing Your Infrastructure - MOSC 2011Brian Ritchie
 
Vagrant for Effective DevOps Culture
Vagrant for Effective DevOps CultureVagrant for Effective DevOps Culture
Vagrant for Effective DevOps CultureVaidik Kapoor
 
Unified Deployment: Including the Mainframe in Enterprise DevOps
Unified Deployment: Including the Mainframe in Enterprise DevOpsUnified Deployment: Including the Mainframe in Enterprise DevOps
Unified Deployment: Including the Mainframe in Enterprise DevOpsXebiaLabs
 
DevOps – Culture of continuous delivery & collaboration
DevOps – Culture of continuous delivery & collaborationDevOps – Culture of continuous delivery & collaboration
DevOps – Culture of continuous delivery & collaborationVinothini Raju
 
Building a PaaS using Chef
Building a PaaS using ChefBuilding a PaaS using Chef
Building a PaaS using ChefShaun Domingo
 
Maven: from Scratch to Production (.pdf)
Maven: from Scratch to Production (.pdf)Maven: from Scratch to Production (.pdf)
Maven: from Scratch to Production (.pdf)Johan Mynhardt
 
Chef for DevOps - an Introduction
Chef for DevOps - an IntroductionChef for DevOps - an Introduction
Chef for DevOps - an IntroductionSanjeev Sharma
 
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20Michael Lihs
 
Boris Devouge (Microsoft) - DevOps on Azure
Boris Devouge (Microsoft) - DevOps on AzureBoris Devouge (Microsoft) - DevOps on Azure
Boris Devouge (Microsoft) - DevOps on AzureOutlyer
 
Compliance Automation with InSpec
Compliance Automation with InSpecCompliance Automation with InSpec
Compliance Automation with InSpec Nathen Harvey
 
How To Plan A Successful Multi-Site Deployment In Mura CMS
How To Plan A Successful Multi-Site Deployment In Mura CMSHow To Plan A Successful Multi-Site Deployment In Mura CMS
How To Plan A Successful Multi-Site Deployment In Mura CMSMura CMS
 
Picnic Software - Developing a flexible and scalable application
Picnic Software - Developing a flexible and scalable applicationPicnic Software - Developing a flexible and scalable application
Picnic Software - Developing a flexible and scalable applicationNick Josevski
 

Similar to Devops what it means to me (20)

Continuous Load Testing with CloudTest and Jenkins
Continuous Load Testing with CloudTest and JenkinsContinuous Load Testing with CloudTest and Jenkins
Continuous Load Testing with CloudTest and Jenkins
 
Continuous Load Testing with CloudTest and Jenkins
Continuous Load Testing with CloudTest and JenkinsContinuous Load Testing with CloudTest and Jenkins
Continuous Load Testing with CloudTest and Jenkins
 
Infrastructure as Code
Infrastructure as CodeInfrastructure as Code
Infrastructure as Code
 
Getting to Walk with DevOps
Getting to Walk with DevOpsGetting to Walk with DevOps
Getting to Walk with DevOps
 
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source ToolsTYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
 
DCRUG: Achieving Development-Production Parity
DCRUG: Achieving Development-Production ParityDCRUG: Achieving Development-Production Parity
DCRUG: Achieving Development-Production Parity
 
Standardizing and Managing Your Infrastructure - MOSC 2011
Standardizing and Managing Your Infrastructure - MOSC 2011Standardizing and Managing Your Infrastructure - MOSC 2011
Standardizing and Managing Your Infrastructure - MOSC 2011
 
Vagrant for Effective DevOps Culture
Vagrant for Effective DevOps CultureVagrant for Effective DevOps Culture
Vagrant for Effective DevOps Culture
 
Unified Deployment: Including the Mainframe in Enterprise DevOps
Unified Deployment: Including the Mainframe in Enterprise DevOpsUnified Deployment: Including the Mainframe in Enterprise DevOps
Unified Deployment: Including the Mainframe in Enterprise DevOps
 
DevOps – Culture of continuous delivery & collaboration
DevOps – Culture of continuous delivery & collaborationDevOps – Culture of continuous delivery & collaboration
DevOps – Culture of continuous delivery & collaboration
 
Building a PaaS using Chef
Building a PaaS using ChefBuilding a PaaS using Chef
Building a PaaS using Chef
 
Maven: from Scratch to Production (.pdf)
Maven: from Scratch to Production (.pdf)Maven: from Scratch to Production (.pdf)
Maven: from Scratch to Production (.pdf)
 
Chef for DevOps - an Introduction
Chef for DevOps - an IntroductionChef for DevOps - an Introduction
Chef for DevOps - an Introduction
 
DevOps and Chef improve your life
DevOps and Chef improve your life DevOps and Chef improve your life
DevOps and Chef improve your life
 
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
 
Boris Devouge (Microsoft) - DevOps on Azure
Boris Devouge (Microsoft) - DevOps on AzureBoris Devouge (Microsoft) - DevOps on Azure
Boris Devouge (Microsoft) - DevOps on Azure
 
Compliance Automation with InSpec
Compliance Automation with InSpecCompliance Automation with InSpec
Compliance Automation with InSpec
 
How To Plan A Successful Multi-Site Deployment In Mura CMS
How To Plan A Successful Multi-Site Deployment In Mura CMSHow To Plan A Successful Multi-Site Deployment In Mura CMS
How To Plan A Successful Multi-Site Deployment In Mura CMS
 
Picnic Software - Developing a flexible and scalable application
Picnic Software - Developing a flexible and scalable applicationPicnic Software - Developing a flexible and scalable application
Picnic Software - Developing a flexible and scalable application
 
DevOps tools for winning agility
DevOps tools for winning agilityDevOps tools for winning agility
DevOps tools for winning agility
 

Devops what it means to me

  • 1. INtroduction to DevOps Being one with the flow Wednesday, February 6, 13
  • 2. Introduction G. Ryan Fawcett • Trained Agile Scrum / Kanban Master from 2004 - Today • 20 years of System Engineering / System Administration experience • Pervious engagements Kontera , Yahoo , Safeway and others big and small Wednesday, February 6, 13
  • 3. DevOps What does it mean to us • Infra-structure as code • Reproducible Environments ( Dev, QA, Production) • Kanban Change Management and Project Management • Meeting Business needs with Development Agile processes • Automated build environment • Continuous Integration / Deployment • Its all about FLOW Wednesday, February 6, 13
  • 4. What is Chef ? • Chef is a infrastructure configuration management platform to create infrastructure as code • Configuration policy enforcement tool • Continuous integration tool Wednesday, February 6, 13
  • 5. Chef Client Server Architecture Wednesday, February 6, 13
  • 6. Chef Structures • Roles: is a grouping of cookbooks and recipes shared between a type of node • Node: is a machine that has roles and attributes assigned to it • Cookbook: a collection of recipes • Recipe: a collection of resources • Resource: basic unit of work, package, service, template, file, exec, etc • Attributes: node data such as IP address, Hostname, any value you set • Data-bag: data store of globally available JSON data Wednesday, February 6, 13
  • 7. Recipe Simple Example of a Recipe yum_package "autofs" do action :install end service "autofs" do supports :restart => true, :status => true, :reload => true action [:enable, :start] end template "/etc/auto.master" do source "auto.master.erb" owner "root" mode "0644" notifies :restart, resources(:service => "autofs" ) end template "/etc/auto.home" do source "auto.home.erb" owner "root" mode "0644" variables({ ! :fqdn => node[:fqdn], ! :autofs_server => node[:autofs_server], ! }) notifies :restart, resources(:service => "autofs" ) end Wednesday, February 6, 13
  • 8. ERB Templates <%= if node[:domain] == "dc1.company.org" node.set['autofs_server'] = '10.1.4.120' end if node[:domain] == "dc2.company.org" node.set['autofs_server'] = '10.100.0.11' end %> * -fstype=nfs,rw,nosuid,nodev,intr,soft <%= node[:autofs_server] %>:/ home_vol_01/& Wednesday, February 6, 13
  • 10. Kanban & Ops What it accomplishes • Knowledge Share ( Stand up / Documentation ) • Project Management ( Status of WIP for resource planning ) • Change Management ( Dashboard for what is changing ) • Operational Transparency ( Status of Projects / Deployments ) • Business Performance Metrics ( Reporting tools to see how low it takes to make changes and deploy code) Wednesday, February 6, 13
  • 12. Jenkins and Branching • Automated Build process daily or hourly ? • Roll forward methodology a rollback is a push forward in version but pervious production push. • Ability to build a release or tree in under 30 mins. Wednesday, February 6, 13
  • 13. Managed environments • Need for Environments to Sync up • That process of building is the same on QA, Staging, and Production Machines • A centralized Chef source code repository shared company wide • Virtualization of QA and Staging Environments to imitate production • Automation / Configuration Meetings to discuss this with Dev,QA on an ongoing basis. Wednesday, February 6, 13
  • 14. Continuous deployment pipeline • QA Promotes the Build to Staging • Smoke and Load performance testing in a Staging Environment • Build is promoted to Production Ready • Chef server picks up the build and Places it in CCDeploy Repository • Chef-clients checks for updates and updates the deployed packages on the servers • Chef continues to run and configures the application based on its configuration files in the chef server. Wednesday, February 6, 13
  • 16. QUESTIONS ? Contact Me @ g.ryan.fawcett@commtouch.com LinkedIN www.linkedin.com/in/gryanfawcett/ More on Chef http://www.slideshare.net/gryanfawcett/cooking-5-star- infrastructure-with-chef Wednesday, February 6, 13