Book Image

Hands-On DevOps with Vagrant

By : Alex Braunton
Book Image

Hands-On DevOps with Vagrant

By: Alex Braunton

Overview of this book

Hands-On DevOps with Vagrant teaches you how to use Vagrant as a powerful DevOps tool and gives an overview of how it fits into the DevOps landscape. You will learn how to install VirtualBox and Vagrant in Windows, macOS, and Linux. You will then move on to understanding Vagrant commands, discovering its boxes and Vagrant Cloud. After getting to grips with the basics, the next set of chapters helps you to understand how to configure Vagrant, along with networking. You will explore multimachine, followed by studying how to create multiple environments and the communication between them. In addition to this, you will cover concepts such as Vagrant plugins and file syncing. The last set of chapters provides insights into provisioning shell scripts, also guiding you in how to use Vagrant with configuration management tools such as Chef, Ansible, Docker, Puppet, and Salt. By the end of this book, you will have grasped Vagrant’s features and how to use them for your benefit with the help of tips and tricks.
Table of Contents (21 chapters)
Title Page
Dedication
Packt Upsell
Contributors
Preface
Index

Chef Cookbook


Chef uses Cookbooks as a key element in its processes and they are used to describe the desired state of your node/server. 

A Chef Cookbook is an important part of configuring machines when using Chef. It describes the desired state of the machine. This is similar to using Playbooks in Ansible. The Chef Cookbook contains five key elements, which all have their own part to play:

  • Recipes
  • Templates
  • Attribute values
  • Extensions
  • File distributors

These elements are often pieces of metadata that work together to create an overview of the machine. Let's dive deeper into these five elements to learn more about them.

Note

When speaking about a node, we are referring to a machine – whether physical or virtual. The node could be a computer, server, network device, or another machine.

Recipes

A recipe is a key part of the Cookbook. It's used to detail what exactly should happen with a node. It's similar to a Vagrantfile when setting the state for a Vagrant virtual machine. 

The recipe is written in...