Preferred method of contact:

Chef Essentials Workshop

COURSE TYPE

Intermediate

Course Number

3637

Duration

2 Days

PDF Add to WishList

Get started with Chef by taking Chef Essentials. It’s a two-day instructor-led course that covers all the basics. You’ll learn what it means to turn infrastructure into code so that you can automate the configuration, deployment and management of your servers. You’ll also learn about Chef architecture and the set of tools included in the Chef Development Kit (ChefDK). Finally, we’ll show you how to test your infrastructure code so that you can deploy with confidence. Each of the core units includes hands-on exercises that will give you confidence in your new skills. At the end of the course, you’ll come away with a repo and the skills to start automating your own infrastructure.

Important Course Information

Recommended Experience:

Some familiarity with the following:

  • Writing code (of just about any flavor) in a text editor
  • Working on the command line

Basic system administration – installing packages, configuring those packages, starting service

Course Preparation:

Computer Labs Needed/Technical Specs:

Workstation Requirements:

Attendees should bring a wifi-enabled laptop to the workshop. The following operating systems have been tested as workstation systems with the hands on exercises:

  • Ubuntu 10.04, 12.04
  • Mac OS X 10.7.3+

Windows 7

Other platforms and platform versions may work without modification. Due to time constraints we will not be able to troubleshoot issues with unlisted platforms. Attendees should install non-Chef required software before the workshop starts.

  • SSH/SCP (OpenSSH, puTTY/WinSCP or equivalent)
  • Programer's text editor (Vi/Vim, Emacs, Sublime Text 2 or equivalent)
  • Additionally, all attendees should install ChefDK.

Course Outline

  • Chef Introduction
  • Overview and expectations for the class
  • The Chef Lab System Architecture
    • Group Lab: Pre-built workstation
  • Using Chef Resources
  • Using Chef to install packages on your virtual workstation
  • Using the chef-client command
  • Creating a basic Chef recipe file
  • Defining Chef Resources
  • Test and repair
    • Lab: The 'file' resource
  • Building Cookbooks
  • Modify a recipe
  • Collaboration and version control
  • Generating a Chef cookbook
  • Defining a Chef recipe that sets up a web server
    • Group Exercise: Version Control
    • Lab: Set up Git
    • Lab: Setting up web servers
  • Chef client
  • Locally applying multiple cookbooks' recipes with chef-client
  • Applying a run list
  • Including a recipe from within another recipe
    • Lab: Update the apache Cookbook
  • Testing Cookbooks
  • Using Test Kitchen to verify your recipes converge on a virtual instance
  • Reading the ServerSpec documentation
  • Writing and execute tests
  • Where do tests live?
    • Group Exercise: Test configuration
    • Lab: Converge the kitchen
    • Lab: Commit your work
    • Lab: Testing Apache
  • Details About a System
  • Managing large numbers of servers
  • Capturing details about a system
  • Using the node object within a recipe
  • Using Ruby's string interpolation
  • Updating the version of a cookbook
    • Lab: Update the Cookbook version
    • Lab: Node Details in the Webserver
    • Lab: Commit your work
  • Desired State and Data
  • Cleaner recipes
  • When to use a template resource
  • Creating a template file
  • Using ERB tags to display node data in a template
  • Defining a template resource
  • Using kitchen test on the "apache" cookbook
  • Using chef-clientto apply the "apache" cookbook's "default" recipe
  • Updating the "apache" cookbook's version for this patch=
  • Committing the changes
    • Lab: Update the version
  • Local Workstation Installation
  • Installing ChefDK on your laptop
  • Executing commands to ensure everything is installed
  • Installing a local editor like Atom
    • Lab: You will run the following commands and report their versions: $chef, $chef-client, $knife, $ohai, $berks, $kitchen, $foodcritic, $rubocop
  • The Chef Server
  • Connecting to a Chef Server
  • Managing Additional systems
  • Managing User traffic
  • Uploading cookbooks to a Chef Server
  • Bootstrapping a node
  • Managing a node via a Chef Server
  • Hosted Chef
    • Lab: Uploading cookbooks and managing cookbook dependencies
  • Community Cookbooks
  • Find cookbooks on the Chef supermarket
  • Create a wrapper cookbook
  • Example: load balancer
  • Amazon EC2 instances
  • Replace the existing default values
  • Upload a cookbook to Chef Server
  • Bootstrap a new node that runs the cookbook
    • Discussion: Can your teams benefit from the supermarket?
  • Managing Multiple Nodes
  • Managing user traffic
  • Bootstrapping and updating the run_list
  • Running chef-client on a node
  • Appending values to an attribute within a recipe
  • Versioning cookbooks and uploading to Chef Server
    • Lab: Another new node
    • Lab: Test and update the load balancer
    • Lab: Run $berks install
    • Lab: Converging the cookbook
  • Roles
  • Assigning, defining, and configuring
  • The 'knife' role
  • Verifying roles
  • Roles for everyone
    • Lab: Define a web role
  • Search
  • Update a Cookbook to Dynamically Use Nodes with the Web Role
  • Describe the query syntax used in search
  • Build a search into your recipe code
  • Create a Ruby Array and Ruby Hash
  • Update the myhaproxy wrapper cookbook
    • Lab: Updating, load balancing, uploading and running the new search-capable cookbook
  • Environments
  • Keeping your infrastructure current
  • Creating a production environment
  • Creating an acceptance environment
  • Deploying a node to an environment
  • Updating a search query to be more exact
    • Lab: Set new nodes to production
    • Lab: Acceptance environment
    • Lab: Create a new environment file
  • Course wrap and further resources
  • Beyond essentials
  • Valuable reading
  • Events and online resources
  • Customizing Chef
Show complete outline
Show Less

Convenient Ways to Attend This Instructor-Led Course

Hassle-Free Enrolment: No advance payment required to reserve your seat.
Tuition due 30 days after you attend your course.

Live, Online

Private Team Training

Live, Online

Tuition — Standard: $2425  

Nov 16 - 17 (2 Days)
9:00 AM - 4:30 PM EST
Live Online Live Online Reserve Your Seat

How would you like to attend?

Live, Online

Dec 14 - 15 (2 Days)
9:00 AM - 4:30 PM EST
Live Online Live Online Reserve Your Seat

How would you like to attend?

Live, Online

Jan 22 - 23 (2 Days)
9:00 AM - 4:30 PM EST
Live Online Live Online Reserve Your Seat

How would you like to attend?

Live, Online

Feb 21 - 22 (2 Days)
9:00 AM - 4:30 PM EST
Live Online Live Online Reserve Your Seat

How would you like to attend?

Live, Online

Mar 19 - 20 (2 Days)
11:30 AM - 4:30 PM EST
Live Online Live Online Reserve Your Seat

How would you like to attend?

Live, Online

Apr 16 - 17 (2 Days)
9:00 AM - 4:30 PM EST
Live Online Live Online Reserve Your Seat

How would you like to attend?

Live, Online

May 21 - 22 (2 Days)
11:30 AM - 4:30 PM EST
Live Online Live Online Reserve Your Seat

How would you like to attend?

Live, Online

Jun 18 - 19 (2 Days)
9:00 AM - 4:30 PM EST
Live Online Live Online Reserve Your Seat

How would you like to attend?

Live, Online

Jul 23 - 24 (2 Days)
9:00 AM - 4:30 PM EST
Live Online Live Online Reserve Your Seat

How would you like to attend?

Live, Online

Aug 20 - 21 (2 Days)
9:00 AM - 4:30 PM EST
Live Online Live Online Reserve Your Seat

How would you like to attend?

Live, Online

Sep 17 - 18 (2 Days)
10:30 AM - 4:30 PM EST
Live Online Live Online Reserve Your Seat

How would you like to attend?

Live, Online

Oct 15 - 16 (2 Days)
9:00 AM - 4:30 PM EST
Live Online Live Online Reserve Your Seat

How would you like to attend?

Live, Online

Guaranteed to Run

Show all dates
Show fewer dates

Private Team Training

Enroling at least 3 people in this course? Consider bringing this (or any course that can be custom designed) to your preferred location as a private team training.

For details, call 1-888-843-8733 or Click here »

Tuition

Standard

In Classroom or
Online

Standard

$2425

Private Team Training

Contact Us »

Training Hours

Training hours vary depending on the time zone in which your course is scheduled.

- ,

Prev
Next
Chat Now

Please Choose a Language

Canada - English

Canada - Français