Transcript

CHEFA Meme filled Overview

WHAT IS CHEF?

IT’S NOT HIM!It’s A Configuration

Management Framework

WHAT’S A CONFIGURATION MANAGEMENT FRAMEWORK?

• Software that allows us to write code that:

• describes our infrastructure

• automates how applications are configured, deployed and managed

WHAT’S AN INFRASTRUCTURE?everything that supports the flow and processing of

information

WHAT ARE THE COMPONENTS?Nodes, Code and Data

THE NODEusually just a server

has attributesand a run list

OHAI ATTRIBUTES!

ATTRIBUTESDefined via code, overridable

RUN LIST!

All of the configuration necessary to put a node in the desired state.

• “Install Java”

• “Configure the web server”

• “Configure the database”

• “Configure the firewall”

THE CODEWritten in recipes which are

collected in cookbooks

DOMAIN SPECIFIC LANGUAGE

• A programing language dedicated to a particular aspect of a system

• Ruby syntax

• “Resources” provided to manage common things

EXTENSIBLEwe can write our own

resources and extend the DSL

IDEMPOTENT

operations that can be applied multiple times without changing the result beyond the initial application

THE DATAdata bags

DATA BAGSsearchable, JSON format, encryption

WHAT ARE SOME BENEFITS OF CHEF?

• Same code used to configure all environments

• Infrastructure is version controlled like your apps

• Infrastructure code is testable

REUSABLE CODE

WHAT HAVE WE DONE SO FAR?

• Repository to store our built artifacts and 3rd party dependencies

• Automate the backup of our databases

• Automate the service wrapper that all of our apps use

• More in progress

top related