• 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 NICE Framework Task, Knowledge, and Skill statements identified within the indicated NICE Framework component(s):

Specialty Areas

  • Systems Development