Terraform Workshop

Provision Your Way to Victory!

Experience the power of infrastructure-as-code through Terraform. Apply an idempotent workflow to manage massive amounts of resources across multiple clouds with ease.

By providing a common language and a declarative, idempotent interface to provisioning resources in the cloud, Terraform has transformed operations. It enables infrastructure-as-code and allows operations teams to manage massive, complicated sets of resources across AWS, GCP, and more. It's no exaggeration to say that adopting Terraform can make a team many times more efficient while reducing expensive infrastructure mistakes.

"AWESOME! THANK YOU!"

Previous Graduate

However, adopting Terraform also requires that a team learn new concepts and workflows. And Terraform doesn't enforce any best practices, which instead have to be learned through hard-earned mistakes.

Our Terraform workshop will prepare your team with the base knowledge they need to leverage the tool effectively. We'll also explore the different Terraform deployment patterns, helping your team find the path that's right for them.

Outline

Basic Configuration

  • Verify Terraform installation
  • Generate your first Terraform Configuration
  • Use the Terraform CLI to Get Help
  • Apply and Update your Configuration

Outputs

  • Create output variables in your configuration file
  • Use the output command to find specific variables

Console

  • Use terraform console to query specific instance information.

Auto-Formatting

  • Auto-formatting configuration files to match the HCL specification.
  • Plugins exist for most major editors.

Variables

  • Create variables in a configuration block
  • Interpolate those variables
  • Create a terraform.tfvars file

Configuration Syntax

  • Terraform supports HCL (HashiCorp Configuration Language)
  • HCL is specifically targeted towards DevOps tools, servers, etc.

Modules

  • Refactor your existing code into a local module
  • Explore the Pubic Module Registry and install a module
  • Refresh and rerun your Terraform configuration

Provisioners

  • Create a connection block using your keypair module outputs.
  • Create a provisioner block to remotely download code to your instance.
  • Apply your configuration and watch for the remote connection.

Graph

  • Generate a graph against your current Terraform configuration

Meta Arguments

  • Change the number of AWS instances with count
  • Modify the rest of the configuration to support multiple instances
  • Add variable interpolation to the Name tag to count the new instance

State

  • Understand how state is managed
  • Understand where state can be stored

Data Sources

  • Add an aws_ami data source
  • Make aws_instance.web use the AMI returned by the data source

Destroy

  • Destroy your infrastructure

Providers

  • Understand the role of providers.
  • Use multiple providers in concert.

Reading Local State

  • Create a Terraform configuration that defines an output
  • Read an output value from that project's state

Template Files

  • Create a Terraform configuration that contains a template to be rendered
  • Use templatefile function to render variables into the template
  • Create S3 bucket and attach the policy

The 411

This workshop is delivered over three days. Each day is scheduled from 12pm to 5pm ET (9am to 2pm PT) with an hour break in the middle — 12 hours in total. We try to reserve an hour at the end of each session for open Q&A. Attendance for this course is limited to up to 28 students.

Instructors

Sean Kane
SuperOrbital Engineer
Flipping bits on the internet since 1992.

Rob Salmond
Engineer & Lead Trainer
Serving an extended sentence in the YAML mines. Claims innocence.

Intended Audience

This course covers the core Terraform concepts. We recommend this course for your operations teams.

To get the most out of this subject, students should come prepared with an understanding of rudimentary Bash scripting, and the basics of cloud provisioning and Amazon Web Services.

This is just one of the many great courses in our cloud-native curriculum!

Reach out to schedule the best workshop your team's ever attended.

The SuperOrbital Difference

We're experts with a reputation for delivering great work. Here’s how we're different:

Intensely Hands-On

More Walkin', Less Talkin'.

Our students spend more than 50% of their time in hands-on labs. We don’t believe in static, podium-based training with some boring instructor talking at you.

Instead, we immerse you in an active learning environment where you can internalize the lessons through collaboration and hands-on labs. This is the path to knowledge that sticks, and a foundation for true expertise.

Collaborative & Fun

This ain't no webinar.

People learn best when they're engaged and having fun. We strongly encourage interruptions, stupid questions, and side-quests.

This is also why we cap off each day with an open Q&A session. This is where we really get to dig into each team's unique challenges, often through live-coding sessions.

Thorough

No stone unturned.

Our content goes deep, giving you a foundational understanding of how things work under the hood. We tease apart every topic, breaking it down into it's atomic parts. Then we rearrange them into an order our students can easily digest and remember.

Unbiased

No Vendor Pitches.

We believe in cloud native solutions, but we aren't beholden to any vendor. Every situation is unique, and every tool has flaws. We help you understand how the technologies work together to solve your problems. We guide you away from the tools that are hype, and toward those that have proven their worth.

Battle Hardened

We bring real experience.

We don't just teach: we do. We've wrestled with Kubernetes, Terraform, Istio, Docker and all of the others in real production situations. We've used them in anger. We know where the tools fall down and what the documentation hides.

Remote first

We're passionately remote-first, and our training shows it.

The days of hours wasted commuting to work are coming to an end, and good riddance. SuperOrbital has always been a passionately remote-first company, and we bring that to our training. Why travel out of town to sit in a hot, crowded, uncomfortable room for days at a time? Our workshops are taken from the comfort of your own home, and at a schedule that encourages deep learning.

Need more convincing? Let's talk!

How it works

Engaging with us to provide a workshop for your team is easy. Reach out to get started.

Chat

We'll schedule a time to meet, discuss your needs, your team's experience level, and how we can help.

Deliver

Each workshop day consists of four hours of lecture, labs, and open Q&A. This helps keep the training active and inspiring, and gives plenty of time for the knowledge to gel.

Follow Up

We follow up afterward to ensure the workshop exceeded your expectations, and to help with whatever new hurdles your team may be facing.

Schedule the best training your team will ever attend, today!