Skip to content

Chef

Chef is a configuration management tool built around Ruby-based DSLs, cookbooks, and recipes.

Why It Exists

  • It keeps infrastructure configuration versioned and reproducible.
  • It models configuration as reusable code rather than manual steps.
  • It works well when you need structured, repeatable server setup.

Core Pages

Main Terms

  • Cookbook: a package of configuration logic.
  • Recipe: the actual configuration logic inside a cookbook.
  • Resource: a managed system object such as a package, file, or service.
  • Node: the machine being configured.

Practical Notes

  • Keep recipes small and focused.
  • Put common defaults into attributes or shared cookbooks.
  • Use Chef when you want a strong configuration-management model rather than a simple task runner.