Slide 1

Slide 1 text

Current Status: Chef Joshua Timberman Technical Program Manager [email protected]

Slide 2

Slide 2 text

Chef 0.10.10 Faster release cycle, coming soon: Chef 0.10.12!

Slide 3

Slide 3 text

Chef 0.10.0 • Environments • Encrypted Data Bags • Knife Plugins • Windows Support

Slide 4

Slide 4 text

Full Stack Installers

Slide 5

Slide 5 text

Clients • /opt/chef • Ruby 1.9 • Includes the most common knife plugins • Native packaging formats • A single command to install

Slide 6

Slide 6 text

curl -L http://opscode.com/chef/install.sh | sudo bash

Slide 7

Slide 7 text

Chef Clients • Ubuntu 10.04, 11.04, 11.10, 12.04 • Red Hat Enterprise Linux 5, 6 (plus derivatives) • Debian Stable • Windows 2003R2, 2008 • Solaris 9+ (on x86 and SPARC) • You can help us add more!

Slide 8

Slide 8 text

Open Source Chef Server • Single package • /opt/chef-server • Single configuration file • chef-server-ctl • Service management • Single-configuration file

Slide 9

Slide 9 text

Private Chef • Single package • /opt/opscode • Single configuration file for the entire infrastructure • private-chef-ctl • Service control • Built-in testing • High Availability

Slide 10

Slide 10 text

Full Stack Installers • omnibus-ruby • omnibus-software • omnibus-chef • omnibus-your-project?

Slide 11

Slide 11 text

Providers and Resources • Providers are state machines that move Resources from "current" to "desired" states by taking a default or user-selected action. • "Why-run" and Reporting both benefit from knowing and comparing these states.

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

What you get... • Serial and complete analysis of prerequisites defined in recipes • best effort in state differences • clear indications of what actions would be taken and why at a useful level of abstraction

Slide 14

Slide 14 text

What you don't get... • Cannot ensure complete safety in "why-run" or during a real run • Cannot meet "hidden" expectations • Environment at time of "why-run" may differ greatly from actual run time • No "free" implementation in user- written providers

Slide 15

Slide 15 text

No content

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

Output Formatters

Slide 18

Slide 18 text

No content

Slide 19

Slide 19 text

Exception!

Slide 20

Slide 20 text

No content

Slide 21

Slide 21 text

Primitives for Reporting • Report/exception handlers • Output formatters • "Why-run"* • APIs and services

Slide 22

Slide 22 text

Opscode Private Chef

Slide 23

Slide 23 text

Private Chef • Supported, behind your firewall Chef Server. • HA capable. • Simple installation. • Enterprise class.

Slide 24

Slide 24 text

Community

Slide 25

Slide 25 text

May 16-18 http://youtube.com/user/opscode

Slide 26

Slide 26 text

Community Events • Workshops, Training • Hack days • User groups • Conferences • ChefConf

Slide 27

Slide 27 text

Chef is Open Source • Apache v2 Software License • Over 720 individuals, 130 companies • Chef, Ohai, Cookbooks, and dozens of software projects (plugins, mixlibs and more)

Slide 28

Slide 28 text

community.opscode.com

Slide 29

Slide 29 text

Cookbooks

Slide 30

Slide 30 text

Development Release

Slide 31

Slide 31 text

Cookbooks • Support • Testing (minitest, rspec, cucumber) • Linting (foodcritic) • LWRPs and Libaries

Slide 32

Slide 32 text

Application Deployment... application "myapp" do path "/opt/myapp" repository "git://github.com/myapp/myapp.git" revision "2.0-stable" packages ["build-essential", "git"] rails do gems ["bundler","passenger"] database do database "myapp" username "myapp" password "awesome_password" end database_master_role "myapp_database_master" end passenger_apache2 do server_aliases ["myapp", "myapp.#{node['domain']}"] end end

Slide 33

Slide 33 text

Application deployment • Ruby • Python • Php • Java

Slide 34

Slide 34 text

Heartbeat Configuration... heartbeat "heartbeat" do auto_failback true autojoin "other" search node['heartbeat']['config']['search'] authkeys "your favorite authkey" interface "eth0" resources "192.168.17.100" end

Slide 35

Slide 35 text

Staying updated • http://opscode.com/blog • http://lists.opscode.com • http://twitter.com/opscode

Slide 36

Slide 36 text

Questions? We're hiring! opscode.com/careers Joshua Timberman @jtimberman [email protected] #opschef