Learning Chef
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.
Introduction to Chef:
- About This Course
- Chef Head First! (Build And Deploy An MOTD Recipe)
- Introduction To DevOps
- What is Chef?
- Common Chef Terminology
- Chef Server
- Chef Workstation
- Chef Workstation – Looking At Security And Configs
- Chef-Repo
- Chef-Client
- Servers And Nodes
- Chef Configuration Concepts
Building the Web Server Cookbook:
- Getting Set Up
- Starting The Apache Recipe
- Adding Attributes, Recipe, And A Template
- Attribute Precedence
- Adding HTML Templates Dynamically With Chef
- Recipe Includes And Dependencies
- Copying Config Files To The Node
- Executing Linux Commands On The Node
- Adding Platform Support To The Cookbook
- Adding The Local Chef-Repo To Github
Building the Web Server Cookbook:
- Getting Set Up
- Starting The Apache Recipe
- Adding Attributes, Recipe, And A Template
- Attribute Precedence
- Adding HTML Templates Dynamically With Chef
- Recipe Includes And Dependencies
- Copying Config Files To The Node
- Executing Linux Commands On The Node
- Adding Platform Support To The Cookbook
- Adding The Local Chef-Repo To Github
Node Object and Search:
- What Is The Node Object?
- In this lesson we are going to learn about the node object.
- Search Concepts
- In this lesson we are going to learn a little about search and what search can do for us in our Chef environment.
- Searching Node Attributes Using Knife
Data-Bags:
- What Are Data Bags?
- In this lesson, we are going to learn about data bags and what they can be used for on the Chef server.
- Creating User And Sudo Group Data Bags
- In this lesson, we are going to create our user and our group data bags and upload them to the Chef server for usage.
- Building A Recipe To Deploy Local User Accounts From Data Bags
Chef Environments:
- What Are Environments And Why Do They Matter?
- Creating And Configuring Environments
- Creating A Second Version Of Our WebServer Cookbook
- Deploying To Different Environments
- Viewing And Deleting Environments With Knife
Roles:
- What Are Roles?
- Creating A Web Server Role
- Building A Simple MySQL Cookbook For A Role
- Creating A DB Server Role
- Creating A Base Role
Extending Chef:
- Knife Plugins
- In this lesson we are going to talk about a few of the Knife command line tool plugins available to us as DevOps administrators.
- Chef Supermarket And Chef-Client Cookbook
Deploying Nodes in Production:
- UnAttended Node Bootstrapping
- In this lesson we are going to talk about the production workflow as well as how to configure unattended bootstrapping. We use unattended bootstrapping for services such as AWS EC2 Auto Scaling.
- Chef-Client Cookbook (Security And Automated Runs)
Using OpenSource Chef Server:
- OpenSource Chef
- In this lesson, we are going to take a look at starting our LinuxAcademy OpenSource Chef server and configuring it to work. We will login for the first time and look around our Chef server.
- Configuring The Workstation And Bootstrapping A Node
- In this lesson, we are going to learn how to configure the certificate credentials that allows our workstation to communicate with the opensource chef server as well as bootstrap nodes. We are also going to configure knife manually as well as download the chef-repo from github.
- Closing: Bootstrapping Nodes And Deploying Cookbooks