Chef

Chef is an infrastructure automation framework centered on “infrastructure as code” using cookbooks and recipes.

Core model

  • Uses a Ruby-based DSL for resources and convergence logic.
  • Commonly runs with a server-workstation-node architecture.
  • Converges nodes to desired state by executing recipes.

Strengths

  • Highly expressive and programmable for complex workflows.
  • Strong ecosystem and enterprise operations capabilities.
  • Good fit for teams already comfortable with software engineering patterns.

Trade-offs

  • Ruby DSL can be a barrier for teams preferring declarative YAML.
  • Operational overhead can be significant in smaller setups.