MyCertStack logoMyCertStack

    HashiCorp - Terraform Associate Study Guide

    1: Infrastructure as Code (IaC) with Terraform

    This chapter introduces Infrastructure as Code as a practice, the patterns that make it materially different from manual provisioning, and the way HashiCorp Terraform implements those patterns across cloud, on-premises, and SaaS platforms. It defines the vocabulary and mental model every later chapter assumes: declarative configuration, the provider plugin surface, state, and the write/plan/apply loop that gives Terraform its provider-agnostic shape.

    Learning Objectives

    By the end of this chapter, you will be able to:

    • Define Infrastructure as Code, distinguish it from manual provisioning and configuration management, and identify the declarative-versus-imperative line on which Terraform sits
    • Describe the advantages of IaC patterns including version control, reproducibility, change visibility, drift detection, blast-radius control, and self-service collaboration
    • Explain how Terraform's plugin-based provider model and single core workflow let one set of HCL configurations target multi-cloud, hybrid-cloud, and service-agnostic infrastructure with the same init, plan, and apply cycle

    Executive Summary

    • Infrastructure as Code captures the desired state of infrastructure in version-controlled, declarative source files; tools then reconcile real systems to match that desired state
    • The pattern produces gains on five axes: speed, repeatability, auditability, recoverability, and collaboration; the same five axes are the language the exam uses to test "advantages"
    • Terraform implements IaC through a provider-plugin architecture: one CLI, one configuration language (HCL), one workflow, but more than a thousand providers that translate generic resource declarations into provider-specific API calls
    • That plugin model is what makes Terraform service-agnostic: cloud providers, on-premises hypervisors, SaaS platforms, DNS, monitoring, identity, and source-control systems are all configured with the same resource and data blocks against different providers

    Assumptions

    • The reader is familiar with general IT vocabulary (virtual machine, network, IAM role, database) and has used at least one cloud console interactively
    • "Terraform" in this chapter means open-source CLI Terraform unless explicitly qualified as HCP Terraform; HCP Terraform is the renamed hosted product that this course covers later
    • All command examples assume Terraform 1.12 from the official binary release
    • "Provider" in this chapter always means a Terraform provider plugin, never a cloud vendor in the marketing sense

    Sections in this chapter

    1. Free
    2. Free with account
    3. Free with account
    4. Free with account