Configuring Bare Metal Vultr Servers With Cloud-init

Introduction

Oftentimes there will be cases where you will want to automate the provisioning and configuration of your Vultr cloud infrastructure. There are a plethora of tools out there, however, cloud-init is an industry-standard that is used to initialize and configure VM instances with user-data.

What Is Terraform?

Terraform is an Infrastructure-as-code tool that allows users to build, change, and version your infrastructure safely and efficiently. It uses a high-level syntax to declaratively provision and manages infrastructure, allowing the ability to break down the configuration into smaller chunks for better organization, re-use, and maintainability. Information on installing and running Terraform can be found here. By passing the user_data parameter into a Terraform.yaml file, you can use automation to configure your Vultr instance at boot time. More on that below.