Deploying a Chef Server

  • View
    1.423

  • Download
    2

  • Category

    Business

Preview:

DESCRIPTION

Walk through of deploying a Chef to Rackspace three ways: * Omnibus * Chef-solo * Rackspace Deployments

Citation preview

CLOUD SAVVY

BROWN BAG: Chef in

PRODUCTION

Hart Hoover @hhoover

CLOUD SAVVY !2

CLOUD SAVVY !3

ENTERPRISE

CLOUD SAVVY !4

CHEF SOLO

CLOUD SAVVY !5OPEN SOURCE CHEF

CLOUD SAVVY

TOOLS!

!6

• Git/GitHub • Berkshelf• Vagrant• Vagrant Plugins• Test Kitchen• Foodcritic

CLOUD SAVVY

CHEF SeRVER ANATOMY

CLOUD SAVVY !8

NGINX

ErchefWebUI Bookshelf

SOLR PostgreSQL Cookbooks

MQ

API

CLOUD SAVVY

YOUR OWN CHEF SERVER

!9

INSTALL THE PACKAGE

CLOUD SAVVY

YOUR OWN CHEF SERVER

!10

USE RACKSPACE DEPLOYMENTS

(HEAT/CHECKMATE)

CLOUD SAVVY

YOUR OWN CHEF SERVER

!11

USE CHEF-SOLO TO DEPLOY CHEF-SERVER

CLOUD SAVVY

PACKAGES

CLOUD SAVVY

REQUIREMENTS

!13

OPERATING SYSTEM: !

UBUNTU 12.04 OR

CENTOS 6.3

CLOUD SAVVY

REQUIREMENTS

!14

FQDN

CLOUD SAVVY

UBUNTU 12.04

!15

OMNIBUS

curl  -­‐L  https://www.opscode.com/chef/install.sh  |  sudo  bash

CLOUD SAVVY

UBUNTU 12.04

!16

IS THE CHEF SERVER RUNNING?

CLOUD SAVVY !17

CLOUD SAVVY

MANAGING SERVICES

!18

$ chef-server-ctl

CLOUD SAVVY

Chef-Server-CTL

!19

$ chef-server-ctl [OPTION]

reconfigurehelp

restart [service]start [service]stop [service]

status [service]tail [service]test --all

CLOUD SAVVY

Chef-Server-CTL

!20

$ chef-server-ctl [OPTION]

reconfigurehelp

restart [service]start [service]stop [service]

status [service]tail [service]test --all

CLOUD SAVVY

Chef-Server-CTL

!21

$ chef-server-ctl [OPTION]

reconfigurehelp

restart [service]start [service]stop [service]

status [service]tail [service]test --all

CLOUD SAVVY

Chef-Server-CTL

!22

$ chef-server-ctl [OPTION]

reconfigurehelp

restart [service]start [service]stop [service]

status [service]tail [service]test --all

CLOUD SAVVY

Chef-Server-CTL

!23

$ chef-server-ctl [OPTION]

reconfigurehelp

restart [service]start [service]stop [service]

status [service]tail [service]test --all

CLOUD SAVVY

Chef-Server-CTL

!24

$ chef-server-ctl [OPTION]

reconfigurehelp

restart [service]start [service]stop [service]

status [service]tail [service]test --all

CLOUD SAVVY

Chef-Server-CTL

!25

$ chef-server-ctl [OPTION]

reconfigurehelp

restart [service]start [service]stop [service]

status [service]tail [service]test --all

CLOUD SAVVY

Chef-Server-CTL

!26

$ chef-server-ctl [OPTION]

reconfigurehelp

restart [service]start [service]stop [service]

status [service]tail [service]test --all

CLOUD SAVVY

START ALL THE THINGS

!27

$ chef-server-ctl reconfigure

CLOUD SAVVY !28

CLOUD SAVVY

DEPLOYMENTS

CLOUD SAVVY !30

CLOUD SAVVY !31

CLOUD SAVVY !32

CLOUD SAVVY !33

CLOUD SAVVY

CHEF ON CHEF

CLOUD SAVVY

CHEF-SOLO METHOD

!35

https://github.com/opscode-cookbooks/chef-server

CLOUD SAVVY

ATTRIBUTES

!36

api_fqdn

CLOUD SAVVY

ATTRIBUTES

!37

version

CLOUD SAVVY

BOOTSTRAP YOUR SERVER

!38

INSTALL CHEF SOLO

curl  -­‐L  https://www.opscode.com/chef/install.sh  |  sudo  bash

(OMNIBUS… AGAIN)

CLOUD SAVVY

BOOTSTRAP YOUR SERVER

!39

CREATE DIRECTORIES

$ mkdir -p /var/chef/cache$ mkdir -p /var/chef/cookbooks/chef-server

CLOUD SAVVY

BOOTSTRAP YOUR SERVER

!40

GET THE COOKBOOK

$ wget -qO- https://github.com/opscode-cookbooks/chef-server/archive/master.tar.gz | tar xvzC /var/chef/cookbooks/chef-server --strip-components=1

CLOUD SAVVY

BOOTSTRAP YOUR SERVER

!41

RUN CHEF-SOLO

$ chef-solo -o 'recipe[chef-server::default]'

CLOUD SAVVY !42

CLOUD SAVVY !43

CLOUD SAVVY !44

https://github.com/opscode-cookbooks/chef-server

CLOUD SAVVY

Monitoring WITH

NEW RELIC

CLOUD SAVVY !46

INFRASTRUCTURE MONITORING

CLOUD SAVVY !47

APPLICATION MONITORING

CLOUD SAVVY !48

PERFORMANCE MONITORING

CLOUD SAVVY

USE BERKSHELF!

!49

site :opscode!

cookbook ‘newrelic’

CLOUD SAVVY

ATTRIBUTES

!50

attributes/default.rb

default['newrelic']['server_monitoring']['license']  =  "CHANGE_ME"  default['newrelic']['application_monitoring']['license']  =  "CHANGE_ME"

CLOUD SAVVY

YOUR MONITORING RUN LIST:

!51

recipe[newrelic]

SET YOUR ATTRIBUTES!

CLOUD SAVVY

THANK YOU!

Recommended