Terraform: More Infrastructure, More Orchestration

I write this while looking out over Treasure Island and the beautiful San Francisco Bay that surrounds it. Off in the distance, a veritable armada of ships hauls millions of containers under the Bay Bridge, into and out of the Port of Oakland.

It is not lost on me that I’m watching the physical manifestation of the classes I’ve been going to for the past couple of days: the literal orchestration of containers and pods.

Somewhere in this picture, you know there’s a Docker. (Photo courtesy of the author.)

Yesterday’s class was Kubernetes. Today, I attended a half-day class on Terraform taught by Christopher DeMarco. The course was really good, and although it presumed a level of knowledge of Terraform beyond what I have, I was able to keep up just fine, thanks to Chris’ excellent content delivery.

Terraform is a Hashicorp product written for the purpose of making infrastructure code. “Infrastructure as Code” has been a thing for a while, but Hashicorp has been dedicated to improving people’s ability to create infrastructure from whole cloth.

Christopher’s class went in depth, covering a lot of the potential for a tool like this. He gave really great examples of how and what he’s done with the tool, and it was great to see what an actual implementation looks like. I have a lot of work to do to catch up, but going to this course really helped put it in perspective and made it feel like an actual, reachable state.

I think the best part of this tool is that it’s largely provider-agnostic. Rather than strictly tying itself to AWS, or Docker, or VMware, it actually has dozens of providers with resources you can manage. Even though Christopher didn’t go into this specifically, while I was sitting in class, I was able to tie Terraform into Digital Ocean and have it spin up resources for me and configure a web server, all completely automated. It gives me the same feeling of glee I got as a kid when I put together a trainset and ran it around the tracks.

I already have some tangible implementations for Terraform that I’m going to be working toward, and I wouldn’t be in that state if it weren’t for coming to this class. I’m glad I decided to attend “Deployment and Orchestration with Terraform,” and I’m happy I got to share it with you.

If you want to get started with Terraform, check out the Getting Started Guide today. It’s easy, and a lot of fun. If you don’t want to have it talk to a Docker instance, so you can just use a regular Linux machine!

Check it out now, and drop me a line to let me know what you think!