Skip to content

Instantly share code, notes, and snippets.

@Rafe
Created July 10, 2013 02:48
Show Gist options
  • Save Rafe/a6ede1a34b9cd2b48917 to your computer and use it in GitHub Desktop.
Save Rafe/a6ede1a34b9cd2b48917 to your computer and use it in GitHub Desktop.
# Meet Chef
## Recap : Terminology
+ node
A host where the Chef client will run (db,web,worker)
+ chef client
The command line program of that configures servers
+ chef server
A database-backed web server that stores searchable information about your production servers.
+ chef solo
A standalone version of the chef client
+ recipe
A single ruby file that contains commands to run on a node
+ resource
A node's resources include files, directories, users and services (UNIX processes)
+ cookbook
A collection of Chef recipes (nginx cookbook include nginx, ssl and rewrite modules)
+ role
Reusable configuarion for multiple nodes (web role, database role)
+ run list
A list of roles and recipe to run on the node
+ attribute
Varibles that are passed through Chef and used in recipes and templates.
+ template
A file with placeholders for attributes. This will be use to create configuration files.
+ notification
When resource is changed, it can trigger an update in another resource
## Attributes
left attributes overwrite right
Node > Role > Environment > Cookbook
### Attribute kinds:
+ Automatic
V
+ override
V
+ normal/set
V
+ default
##Deploy Rails
+ Deploy a Rails application
+ Use the Capistrano deployment tool
+ Launch the Unicorn application server
##Attributes
+ understand attributes
### dsl
remote_directory : copy entire directory to node
cookbook_file : copy single file to node
- same thing but different names -
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment