• Online, Self-Paced
Course Description

How does expressing Infrastructure as Code with Chef accelerate building, deploying, and managing infrastructure? This course will focus on executing Chef code with the chef-client and introduces the DSL for writing recipes and cookbooks.

Learning Objectives

Introducing Config Management with Chef

  • start the course
  • describe how automation and version control contribute to DevOps
  • describe the Chef distribution model and the declarative syntax used in writing Chef recipes
  • install the Chef Development Kit (ChefDK)

Recipes and Ruby Basics

  • use the package and file resources inside of a Chef Recipe
  • describe Ruby basics such as variables, arrays, and objects

Cookbooks and the Chef-client

  • identify how recipes are packaged and distributed with cookbooks
  • identify best practices of using Git for version control
  • deploy a cookbook using the chef-client in local mode

Node Attributes and Templates

  • work with system profiling with Ohai and accessing node object attributes
  • use the cookbook_file, remote_file, and template Chef resources to manage files
  • manage dynamic file creation using the template resource
  • refactor recipes to use node attributes instead of hard-coded values

Practice: Working with a Simple Web Server

  • build a simple Apache cookbook that configures a "hello, world" page to serve on the localhost

Framework Connections

The materials within this course focus on the Knowledge Skills and Abilities (KSAs) identified within the Specialty Areas listed below. Click to view Specialty Area details within the interactive National Cybersecurity Workforce Framework.