Chef Fundamentals
Chef is a configuration management tool that defines infrastructure as Ruby-based code called recipes and cookbooks. It converges systems toward a declared desired state, ensuring consistent configuration across servers whether they number ten or ten thousand.
itInfrastructure and operations | OpenSkills.info
Course pathWalk it in order
Look it upDip in anytime
Go furtherLeaves this page
Don't Panic
Don't Panic - Chef Fundamentals
Chef Fundamentals centers on Chef. Chef Infra manages system configuration as code. You describe the state a node should have, and Chef Infra Client moves that node toward the described state.
Operate from the project's own resources and APIs. Learn how desired state becomes running state, which status conditions matter, and which dependencies (network, storage, identity, certificates) the control plane assumes.
Upgrades, backups, and credential rotation are part of the product, not optional aftercare. Version skew between clients and servers creates failures that look like application bugs. Pin versions and rehearse rollback.
Convenience features reduce boilerplate and widen blast radius. Enable them when you can observe and reverse the expanded surface. Defaults from quickstarts are starting points, not production policy.
Name owners for upgrades, credentials, and disaster recovery before traffic arrives. Unowned control-plane state becomes an outage with no clear pager. Prefer explicit version pins and tested rollback over floating tags that quietly change behavior between deploys.
Name owners for upgrades, credentials, and disaster recovery before traffic arrives. Unowned control-plane state becomes an outage with no clear pager. Prefer explicit version pins and tested rollback over floating tags that quietly change behavior between deploys.
Name owners for upgrades, credentials, and disaster recovery before traffic arrives. Unowned control-plane state becomes an outage with no clear pager. Prefer explicit version pins and tested rollback over floating tags that quietly change behavior between deploys.
Read the Intro for the mental model. Use the Cheatsheet when you need the resource map. Updates and Upstream track the Chef release line that changes these APIs.
Where this skill leads
Relevant careers
See how this topic contributes to broader role-level skill maps.
Sources
- https://docs.chef.io/client/18/overview/chef_overview/
Supports
- Chef Infra purpose and desired-state model
- Workstation, Server, Client, node, cookbook, recipe, run-list, and Ohai relationships
- Scheduled client execution and local configuration on managed nodes
- Ruby as the cookbook authoring language
- Repeated recipes reaching the same system state when inputs and state are unchanged
- https://docs.chef.io/client/19/
Supports
- Chef Infra Client as the node-local agent
- Pull-based operation
- Client-run stages from configuration and authentication through compilation, convergence, handlers, and reporting
- Node, cookbooks, recipes, run-list, and Ohai definitions
- Agentless execution over secure shell
- Configuration management, deployment, compliance, drift prevention, and environment-management uses
- https://docs.chef.io/client/19/infra_language/
Supports
- Chef Infra Language as a Ruby-based systems configuration language
- Resources as desired-state declarations
- Built-in resources and helpers for operating-system configuration
- https://docs.chef.io/client/18/resources/
Supports
- Resource type, name, properties, and action model
- Resources grouped into recipes
- Guards and notifications as common resource features
- Idempotent resource behavior
- https://docs.chef.io/client/19/resources/bundled/
Supports
- Current bundled resource catalog
- Guard execution behavior
- Notification timers before, delayed, and immediate
- Difference between notifies and subscribes when a referenced resource is absent
- https://docs.chef.io/policyfile/
Supports
- Policyfile contents and purpose
- Immutable collections of cookbooks, dependencies, and attributes
- Policyfile lock content and workstation-side dependency resolution
- Policy names, policy groups, upload, and promotion
- Mutability limits of traditional role and environment workflows
- https://docs.chef.io/workstation/25/
Supports
- Workstation tool set
- chef, knife, Test Kitchen, Chef InSpec, and Cookstyle purposes
- Recommended cookbook development, testing, acceptance, and deployment flow
- https://docs.chef.io/workstation/kitchen/
Supports
- Test Kitchen as an isolated cookbook test harness
- Instance creation, convergence, verification, and destruction lifecycle
- https://docs.chef.io/workstation/cookstyle/
Supports
- Cookstyle checks for style, syntax, and logic issues in Chef Infra cookbooks
- https://docs.chef.io/platforms/
Supports
- Commercial, community, derived, and unsupported platform distinctions
- Need to confirm supported operating systems and architectures
- https://docs.chef.io/versions/
Supports
- Chef Infra Client 19 as the current long-term-support release at verification time
- Product lifecycle and supported-version checks
- https://docs.chef.io/licensing/
Supports
- Distribution and runtime-workflow licensing requirements
- End User License Agreement acceptance requirements
- Apache License coverage for identified open-source project source code
