Trainings
the best way to let the people know about
smart changes into the world of technology

Chef Fundamentals

The Chef Fundamentals training provides an in depth introduction into the Chef technology space and the conceptional ideas behind Configuration Management. The students will learn the Chef DSL (domain-specific language) and how to apply it to create fully automated server deployments. The course has several lab exercises which deepen the learned theory.

 

 

Agenda

 

 Day 1

 

Overview of Configuration Management Setup of a Chef Account & Knife Configuration

  • Local Chef-Client installation & configuration
  • Creation of a Chef project
  • Main Chef entities
    • Nodes
    • Clients
    • Users
    • Roles
    • Cookbooks
    • Recipes

 

Deploying the First Server

  • Knife cookbook commands
  • Upload cookbooks to the Chef server
  • Create a role
  • Knife provisioning and bootstrapping
  • Execute SSH commands with knife
  • Modify and upload cookbooks
  • Logging
  • Berkshelf

 

Just enough Ruby for Chef

 

 

 Day 2

Chef Resources

  • Resource Actions and Attributes
  • Conditional execution
  • Notifications
  • Cookbook files
  • Packages
  • Services
  • Execute
  • Scripts
  • Template
  • Ruby_block
  • Additional Resources:
    • Cron
    • Users and Groups
    • File/Directory/Link
    • Mount

 

Chef Integration via Search

  • Command-line search
  • Search in Chef recipes

 

Data-Bags

  • Create and manage data-bags
  • Create user accounts with data-bags
  • Data-driven cookbooks

 

Anatomy of a Chef Run

  • Phases: Compile vs. Run
  • Execution order
  • Notifications

 

Chef Attributes

  • Attribute definition syntax and types
  • Attribute precedence
  • Cookbook attributes
  • Using attributes in recipes
  • Attribute declaration in Chef Metadata
  • Ohai