HashiCorp Terraform 101

The bundled package of Infrastructure as Code experience.

About

🚨 Send this PDF to your boss! (click) 🚨


Deeply-technical training that is focused on understanding HashiCorp Terraform - a solution for managing infrastructures in Infrastructure as Code methodology. We guide the participants from the very basics, starting from an overview of Terraform key concepts, elements and features, through advanced usage and real-life examples, to extending Terraform by writing own providers and plugins. We also go through crucial infrastructure as code concepts such as declarative/imperative approach, version control and workflows.

The training is delivered based on the latest Terraform minor release which is 0.13.

Read More
Icon
Pre-sale ends (UTC)
-
-
days
-
-
hour
-
-
min
-
-
sec
Icon
1050$ 499$ +VAT
Icon
30 day money back guarantee
Icon
Start at January 18, 2021

Pre-sale

  • Icon

    Additional 2 live webinars with trainers

  • Icon

    The cheapest price ever for this training

  • Icon

    Impact on the last two modules

  • Icon

    Dedicated Slack-channel in Slack workspace with direct access to trainers

Benefits

  • Icon

    No previous AWS experience needed

  • Icon

    No previous Golang experience needed

  • Icon

    Course Certificate

  • Icon

    Dedicated Slack workspace

Type of training

Deeply-technical training
Hours of technical materials
Bundled years of experience
Step-by-step course

01

Who should attend

DBAs, Network Engineers
DevOps, DevSecOps
Site Reliability Eningeers
Security Engineers, Pentests, Auditors

02

Required knowledge

Familiarity with Linux operating systems
Understanding of TCP/IP networking
Understanding of algorithms structures
Basics of any programming language

03

Agenda

  • Icon
    I. High-level overview
    • Introduction to Terraform.
    • Terraform's approach for delivering Infrastructure as Code.
    • Differences between declarative and imperative approach.
    • Introduction to HCL. The differences between HCL and HCL2.
  • Icon
    II. Versus
    • The differences between Terraform and its competitors such as Pulumi, AWS Cloud Development Kit and CloudFormation.
    • The comparison between Terraform and other Infrastructure as Code tools such as Ansible, SaltStack or Chef.
    • Use-case scenarios for Terraform, Ansible, SaltStack and Chef.
  • Icon
    III. Fundamentals I
    • Terraform installation. Workstation configuration. Managing Terraform versions remotely and locally.
    • Overview of key Terraform data-structures. Getting started with provider, resource, data resource, variables and outputs.
  • Icon
    III. Fundamentals II
    • Execution backends. What is a local and remote backend? What is a remote operation?
    • Terraform state description. Analysis of tfstate file. What is a state locking? Listing resources, importing existing resources, moving resources inside the state, removing resources from the state, tainting resources.
    • Dependency handling within Terraform. How dependencies are built? How to force dependency between the resources?
  • Icon
    IV. Fundamentals III
    • Using provisioners for managing a complete lifecycle of the infrastructure.
    • What is a Terraform workspace? When you should use a workspace?
    • Working with Terraform workspaces: creating a workspace, switching context. How does the Terraform state look like with workspaces?
  • Icon
    V. Code organization
    • Managing Terraform code with version control systems.
    • Ways of Terraform code organization.
    • The comparison between UI/VCS, API and CLI driven runs.
    • Managing multiple environments within version control systems.
    • Avoiding Spaghetti-code with large infrastructures.
  • Icon
    VI. RBAC
    • Role-based access in Terraform. Ways of controlling access to Terraform operations.
    • Local applies versus pipeline driven applies.
    • Cloud provider credentials handling for Terraform execution.
  • Icon
    VII. Secrets management
    • Storing sensitive data in Terraform.
    • Managing secrets and secret information in Terraform.
    • Working with sensitive outputs. How to mark the output as sensitive and what it means in reality.
    • How resources and metadata are helpful to manage secrets securely
  • Icon
    VIII. Modules
    • The description and use-cases for Terraform modules.
    • When you should create a module? What are the possible use cases for a module?
    • How to use modules effectively?
    • Module versioning and version pinning.
    • What is a Terraform Registry?
  • Icon
    IX. Terraform with hybrid-solutions
    • How to use Terraform for multi-cloud deployments?
    • How to use multiple providers efficiently?
    • How to use multiple providers within a module?
  • Icon
    X. Testing
    • Importance of testing.
    • What are the ways to create unit-tests for Terraform?
    • Working with terratest - creating a unit test, running test suite, generating reports.
    • Testing compliance in Terraform.
    • What is HashiCorp Sentinel? How does HashiCorp Sentinel compare to open source projects such as terraform-compliance?
    • Working with terraform-compliance - creating a compliance policy, validating your code against policies.
    • Recommended linters and how to use them.
  • Icon
    XI. Workflow
    • Improving change management process and transparency of the infrastructure with Terraform.
    • Efficient and fast single codebase collaboration. How to collaborate on a single codebase efficiently?
    • Risk assessment and approval process.
  • Icon
    XII. Best-practices
    • Naming resources and data resources properly.
    • Variables validation.
    • Performing a resource deep inspection and finding out errors before applying the code.
    • Modules separation Race conditions and dependency hell avoidance.
  • Icon
    XIII. Extension I
    • Structure of Terraform provider boilerplate
    • How to develop your own Terraform provider?
  • Icon
    XIV. Extension II
    • Useful helpers within Terraform provider SDK.
    • How to use your own Terraform Provider in your project?
  • Icon
    XV. Premium I - Subscribers
    • Module with the most important content from subscribers.
  • Icon
    XVI. Premium II - Pre-sale
    • Module with the most important content from pre-sale customers.
  • Icon
    XVI. Premium III - Pre-sale
    • Module with the second most important content from pre-sale customers.

A sample set of laboratories

  • Analyze the code statically and achieve compliance
  • Write your own Terraform provider
  • Provisioning the multi-cloud infrastructure using modules
  • Reading and analyzing the Terraform state
  • Importing existing resources into Terraform
  • Testing disaster recovery procedures with Terraform
  • Showing an acyclic graph of resources
  • A hybrid-cloud deployment
Read More

Content

Expertise

We deliver high-quality trusted knowledge gained by field experience, we have spent years on building systems with infrastructure as code approach, solved a lot of problems and pitfalls we want you to avoid while building and designing your infrastructure and system. This is way more than just one another online-course with tutorial on technology.

Trainers

  • Wrote thousands lines of Terraform, Ansible and Salt code. Has been working as a consultant for a variety of customers from each industry market. Built hundreds of Kubernetes, Docker and Cloud-based infrastructures, and a set of information security platforms based on Zeek, Bro, Suricata, Elasticsearch.

    Kamil Zabielski
    Chief Executive Officer
  • Wrote thousands^2 lines of Terraform, Ansible and SaltStack code. Has been working as Consultant and Architect for a variety of industries. Built hundreds of on-premise and cloud-based infrastructures. Real technology freak and leader that takes responsibility for the work and deliverables.

    Kamil Szczygieł
    Chief Technology Officer

Questions

Read More

Do not miss the opportunity!

Take a seat in this virtual class-room.

GDPR