View all workshops

Infrastructure for Developers using Terraform

Trainer(s): Kevin Berendsen, duration: 1 days (1x 8 hours)

Introduction
Developers are writing application code on a daily basis and are good at doing it. In DevOps environments or when moving to a DevOps environment, infrastructure will be part of the team’s responsibilities but can become often neglected and manually managed using a CLI or web interface. Why wouldn’t developers simply write code to provision their infrastructure as they’d write code for their applications? This training will cover Terraform, an Infrastructure-as-Code (IaC) tool that will help with structuring and managing your infrastructure via code and essentially make it more fun for developers to do.

Detailed description
We will start with introducing the concepts of Infrastructure-as-Code (IaC) and Terraform. Which is followed by knowing when to apply Terraform. It’s important to know that Terraform will likely be a good fit in your tech stack but that may not always be the case. With a few simple questions you can ask any team if Terraform is the right tool for the job. In the training it will be the right tool for the job and continue with setting up the AWS provider which will be the cloud provider for our use-cases. Soon after we’ll setup a few simple, but realistic, resources in our Terraform code and let Terraform provision those resources for us on AWS. Not every project is a Greenfield project and will have already provisioned resources so we’re going to import these resources into Terraform and let Terraform continue to manage them. Once we finished setting up our simple Terraform project, we’re going to migrate the resources to modules which allow us to create similar application setups more easily but will force us to face the harsh environment that Terraform can become when you’re not setting it up with proper project structure. Security plays a major role in Terraform. Terraform projects may contain sensitive information that you may not want to leak, although this may sound scary, Terraform can become secure very easily without much effort. Up until this point you’ll know how to provision resources via Terraform but you don’t want to use the CLI from local machine all the time. We will discuss on how to automate the Terraform executions in any CI/CD tool on how to tailor your project setup to your specific needs.

Target audience
Developers and DevOps Engineers who want to improve their infrastructure provisioning skills

Learning goals

  • Basic concepts of Terraform like Providers, Resources, Data objects and Modules
  • Knowing when to incorporate Terraform in your tech stack
  • Understanding the Terraform CLI commands and knowing how to use them
  • Knowing how to secure a Terraform project
  • Knowing how to automate Terraform executions in a CI/CD tool
  • More advanced topics like migrating and importing Terraform resources

Skills acquired in this training

  • Terraform CLI commands and when to use them
  • Setting up a Terraform project and installing required Providers
  • Provisioning an application and database on AWS
  • Securing a Terraform project to prevent leaking of sensitive information
  • Importing existing resources into a Terraform project
  • Migrating Terraform resources to Modules
  • Injecting and storing sensitive values into a Terraform project

Training outline

Terraform Essentials (Morning):

  • Introduction Terraform and basic concepts
  • Installing Terraform and setting up an empty Terraform project
  • Configuring AWS as provider in the Terraform project
  • Defining resources to provision

Terraform Foundation (Afternoon):

  • Security and securing the Terraform project
  • Importing an existing resource in the Terraform project
  • Migrating resources to Modules
  • Automating Terraform executions in a CI/CD tool

Provided training material
Slides used during the training and a Terraform cheatsheet

About the trainer
Kevin is a Software Engineer with a great interest in infrastructure and how to manage them for large-scale applications. He has introduced, implemented and managed Terraform project at companies serving millions of users each day. Some of which already had their infrastructure resources provisioned manually but are continued to be managed by Terraform.

Practical details

Standard pricing for this training: EUR 695,- ex VAT per attendee.
Please contact us for pricing for tailored content and for in house group trainings.

Trainings can be given in one of our offices (Utrecht, Amsterdam, Rotterdam, Arnhem, Munich, Dusseldorf, Vienna, Zurich), on site at a client location, or (in some cases) remote. Training content can be tailored to meet your specific requirements.

Want to enroll or have a question? Contact us via mail at info@openvalue.training, give us a call at +31-85-0606886 or use the form below.