Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Modern Infrastructure Automation

Nathen Harvey
November 15, 2016

Modern Infrastructure Automation

Automation at scale is the foundation of every successful high velocity organization. Automation requires dynamic infrastructure that is managed as code. Modern infrastructure code means bringing the lessons from software development to your infrastructure. Automation is managed in version control systems, tests drive code development, code moves through a continuous pipeline from the workstation to the production environment. What will this look like in five years? We will see a continued improvement in the way teams work together toward common goals, build more operable applications, and embrace complexity while improving ease-of-use.

This was presented during the All Day DevOps Conference - http://alldaydevops.com/

Nathen Harvey

November 15, 2016
Tweet

More Decks by Nathen Harvey

Other Decks in Technology

Transcript

  1. November 15, 2016 Nathen Harvey VP, Community Development at Chef

    Co-host of the Food Fight Show Podcast Occasional farmer – hNp://ei.chef.io Love eggs – hNp://eggs.chef.io #hugops – hNp://hugops.chef.io @nathenharvey [email protected]
  2. November 15, 2016 We’re no longer an airline. We’re a

    software company with wings. – Veresh Sita, CIO, Alaska Airlines Now every business is a software business
  3. November 15, 2016 No high velocity company has gotten there

    without automation at scale as a foundation Automation at scale is required for high velocity IT Continuous Improvement Citi relies on Chef as the automation platform used to help transform over 3,000 application teams. Chef is important enough to Citi that Citi became an investor in Chef. Chef is the platform for a continuous delivery pipeline empowering application teams to ship a thousand plus changes per day across “Carl Sagan size deployments.” GE touts Chef as the most rapidly adopted technology in the history of GE. idea ship
  4. November 15, 2016 Dynamic infrastructure Migrate applica:ons to the cloud

    and support hybrid and mul:-cloud environments. Automate the management of heterogeneous networks, including legacy systems. •  Provisioning and seUng up environments •  Dynamic scaling of compute resources •  Migra:ng legacy workloads to the cloud •  Mul: cloud and hybrid cloud deployment •  Support for heterogeneous environments
  5. November 15, 2016 Infrastructure as Code Turn infrastructure into code—infrastructure

    as code is versionable, testable and repeatable. Manual processes become a thing of the past. •  Automated, full-stack applica:on policies •  Package and service installa:on •  Versionable, testable, repeatable workflow •  Scalable applica:on policies •  Management of interdependencies across nodes
  6. November 15, 2016 Infrastructure as Code •  Programma:cally provision and

    configure components •  Treat like any other code base
  7. November 15, 2016 Infrastructure as Code •  Programma:cally provision and

    configure components •  Treat like any other code base •  Reconstruct business from code repository, data backup, and compute resources
  8. November 15, 2016 Infrastructure as code and delivery at scale

    •  Manages deployment and on-going automation •  Define reusable resources and infrastructure state as code •  Scale elegantly from one to tens of thousands of managed nodes across multiple complex environments
  9. November 15, 2016 Test the Code describe 'apache::default' do context

    'When all attributes are default, on an unspecified platform' do let(:chef_run) do runner = ChefSpec::ServerRunner.new(platform: 'ubuntu', version: '16.04') runner.converge(described_recipe) end it 'installs apache' do expect(chef_run).to install_package 'apache2' end end end
  10. November 15, 2016 Version the Code & the Ar:fact name

    'all_day_devops' maintainer 'Nathen Harvey' maintainer_email '[email protected]' license 'apache2' description 'Installs/Configures devops all day long' long_description 'Installs/Configures devops all day' version '0.1.0'
  11. November 15, 2016 Pipeline to Produc:on APPROVE Test the code

    Build an artifact Does this code change look good?
  12. November 15, 2016 Pipeline to Produc:on APPROVE Test the code

    Build an artifact Test the artifact Does this code change look good?
  13. November 15, 2016 Pipeline to Produc:on APPROVE DELIVER Test the

    code Build an artifact Test the artifact Does this code change look good? Do we want to ship this?
  14. November 15, 2016 Pipeline to Produc:on APPROVE DELIVER Test the

    code Build an artifact Test the artifact Ship to customers Does this code change look good? Do we want to ship this?
  15. November 15, 2016 Mapping Compliance Document to InSpec control 'ssh-6.2.1'

    do title 'Set SSH Protocol to 2' desc " SSH supports two different ... " end
  16. November 15, 2016 Mapping Compliance Document to InSpec control 'ssh-6.2.1'

    do title 'Set SSH Protocol to 2' desc " SSH supports two different ... " describe sshd_config do its('Protocol') { should cmp('2') } end end
  17. November 15, 2016 Mapping Compliance Document to InSpec control 'ssh-6.2.1'

    do impact 1.0 title 'Set SSH Protocol to 2' desc " SSH supports two different ... " describe sshd_config do its('Protocol') { should cmp('2') } end end
  18. November 15, 2016 Modern Applica:ons Source Code Repo Artifact Bare

    Metal Containers Cloud Instance VM Artifact Repo
  19. November 15, 2016 Operable Applica:ons •  Isolated •  Immutable • 

    Configurable •  Common interface for monitoring health •  Rebuild from source •  Common packaging •  Run:me Independence
  20. November 15, 2016 Freedom to Focus • Create features to drive

    the business and delight customers • Bare metal, virtualiza:on, cloud, PaaS? • Defer choices about infrastructure un:l late in the development lifecycle
  21. DEVOPS A cultural and professional movement, focused on how we

    build and operate high velocity organizations, born from the experiences of its practitioners.
  22. November 15, 2016 Nathen Harvey VP, Community Development at Chef

    Co-host of the Food Fight Show Podcast Occasional farmer – hNp://ei.chef.io Love eggs – hNp://eggs.chef.io #hugops – hNp://hugops.chef.io @nathenharvey [email protected]