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

Provisioning Vagrant with Chef


There are four different ways to use Chef to provision a Vagrant machine that Vagrant supports. This means that Chef has the most options in Vagrant when it comes to provisioning. The four options are as follows:

  • Chef Solo
  • Chef Zero
  • Chef Client
  • Chef Apply

In this chapter, we will be focusing on Chef Solo and Chef Client. This will give you a good mixture of provisioning on the host machine and the Vagrant machine.

Installing Chef on macOS

Before we can begin using Chef, we will first need to install it. We'll learn how to install Chef on the macOS operating system (the High Sierra 10.13 version).

We'll be installing the Chef DK (development kit), which includes all of the dependencies, utilities, and the main Chef software. The list of installed software includes the following:

  • Chef client
  • OpenSSL
  • Embedded Ruby
  • RubyGems
  • Command-line utilites
  • Key value stores
  • Parsers
  • Utilities
  • Libraries
  • Community tools such as Kitchen and ChefSpec

Note

Please Note: The Apple XCode software package...