Slide 1

Slide 1 text

November 15, 2016 Modern Infrastructure Automa:on Nathen Harvey, VP Community Development, Chef | @nathenharvey

Slide 2

Slide 2 text

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]

Slide 3

Slide 3 text

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

Slide 4

Slide 4 text

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

Slide 5

Slide 5 text

November 15, 2016 Automation at Scale Dynamic Infrastructure

Slide 6

Slide 6 text

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

Slide 7

Slide 7 text

November 15, 2016 Dynamic Infrastructure Infrastructure as Code + Automation at Scale

Slide 8

Slide 8 text

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

Slide 9

Slide 9 text

November 15, 2016 Infrastructure as Code •  Programma:cally provision and configure components

Slide 10

Slide 10 text

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

Slide 11

Slide 11 text

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

Slide 12

Slide 12 text

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

Slide 13

Slide 13 text

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

Slide 14

Slide 14 text

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'

Slide 15

Slide 15 text

November 15, 2016 Infrastructure Code Source Code Repo Artifact Artifact Repo

Slide 16

Slide 16 text

November 15, 2016 Pipeline to Produc:on Test the code

Slide 17

Slide 17 text

November 15, 2016 Pipeline to Produc:on APPROVE Test the code Does this code change look good?

Slide 18

Slide 18 text

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

Slide 19

Slide 19 text

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

Slide 20

Slide 20 text

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?

Slide 21

Slide 21 text

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?

Slide 22

Slide 22 text

November 15, 2016 What’s Next?

Slide 23

Slide 23 text

November 15, 2016 Infrastructure Automation Infrastructure Automa:on is NOT Enough

Slide 24

Slide 24 text

November 15, 2016

Slide 25

Slide 25 text

November 15, 2016 Communications Problem

Slide 26

Slide 26 text

November 15, 2016 Mapping Compliance Document to InSpec control 'ssh-6.2.1' do title 'Set SSH Protocol to 2' end

Slide 27

Slide 27 text

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

Slide 28

Slide 28 text

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

Slide 29

Slide 29 text

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

Slide 30

Slide 30 text

November 15, 2016 Infrastructure Automation Compliance Automation

Slide 31

Slide 31 text

November 15, 2016

Slide 32

Slide 32 text

November 15, 2016 Applica:ons

Slide 33

Slide 33 text

November 15, 2016 Modern Applica:ons Source Code Repo Artifact Bare Metal Containers Cloud Instance VM Artifact Repo

Slide 34

Slide 34 text

November 15, 2016 Operable Applica:ons •  Isolated •  Immutable •  Configurable •  Common interface for monitoring health •  Rebuild from source •  Common packaging •  Run:me Independence

Slide 35

Slide 35 text

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

Slide 36

Slide 36 text

November 15, 2016 Infrastructure Automation Application Automation Compliance Automation

Slide 37

Slide 37 text

November 15, 2016 Infrastructure Automation Application Automation Compliance Automation

Slide 38

Slide 38 text

November 15, 2016

Slide 39

Slide 39 text

DEVOPS A cultural and professional movement, focused on how we build and operate high velocity organizations, born from the experiences of its practitioners.

Slide 40

Slide 40 text

People Products Companies

Slide 41

Slide 41 text

No content

Slide 42

Slide 42 text

Non-bullet slide Non-bullet slide subtitle Community Our Foundation

Slide 43

Slide 43 text

November 15, 2016

Slide 44

Slide 44 text

November 15, 2016

Slide 45

Slide 45 text

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]