Using Chef Solo on Linux for AWS

Lab Steps

Logging in to the Amazon Web Services Console
Connecting to the Virtual Machine using SSH
Setting Up Chef Solo on Linux
Running Your First Recipes with Chef Solo
Staying Organized with Cookbook Files
Notifying Chef Resources of Changes
Using Attributes and Templates in Your Cookbooks
Defining Chef Node Functions with Roles
Validate AWS Lab

Ready for the real environment experience?

DifficultyBeginner
Max Duration1h 30m
Students118

Description

Lab Overview

The popular configuration management tool Chef is typically used in a client-server architecture where clients check a centralized server for configuration updates. Chef Solo brings most of the benefits of Chef to a single server. All of the concepts of Chef apply to Chef Solo: cookbooks, recipes, attributes, templates, roles, etc. In this Lab, you will gain experience with each of those concepts as you configure a Linux virtual machine in AWS using Chef Solo.

Lab Objectives

Upon completion of this lab you will be able to:

  • Configure a Chef node in AWS using Chef Solo
  • Write Chef cookbooks and recipes
  • Use Chef attributes and templates to generalize your cookbooks
  • Create Chef roles to define Chef node functions 

Lab Prerequisites

You should be familiar with the following:

  • Chef concepts
  • Working on the command line in Linux
  • Ruby programming basics are beneficial, but not required

Lab Environment

Before completing the lab instructions the environment will look as follows:

After completing the lab instructions the environment should look similar to:

 

Updates

January 10th, 2019 - Added a validation Lab Step to check the work you perform in the Lab

About the Author

Students36610
Labs97
Courses11
Learning paths7

Logan has been involved in software development and research since 2007 and has been in the cloud since 2012. He is an AWS Certified DevOps Engineer - Professional, AWS Certified Solutions Architect - Professional, Microsoft Certified Azure Solutions Architect Expert, MCSE: Cloud Platform and Infrastructure, Google Cloud Certified Associate Cloud Engineer, Certified Kubernetes Administrator (CKA), Certified Kubernetes Application Developer (CKAD), Linux Foundation Certified System Administrator (LFCS), and Certified OpenStack Administrator (COA). He earned his Ph.D. studying design automation and enjoys all things tech.