Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Mastering Terraform

You're reading from   Mastering Terraform A practical guide to building and deploying infrastructure on AWS, Azure, and GCP

Arrow left icon
Product type Paperback
Published in Jul 2024
Publisher Packt
ISBN-13 9781835086018
Length 494 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
Mark Tinderholt Mark Tinderholt
Author Profile Icon Mark Tinderholt
Mark Tinderholt
Arrow right icon
View More author details
Toc

Table of Contents (27) Chapters Close

Preface 1. Part 1: Foundations of Terraform
2. Chapter 1: Understanding Terraform Architecture FREE CHAPTER 3. Chapter 2: Using HashiCorp Configuration Language 4. Chapter 3: Harnessing HashiCorp Utility Providers 5. Part 2: Concepts of Cloud Architecture and Automation
6. Chapter 4: Foundations of Cloud Architecture – Virtual Machines and Infrastructure-as-a-Services 7. Chapter 5: Beyond VMs – Core Concepts of Containers and Kubernetes 8. Chapter 6: Connecting It All Together – GitFlow, GitOps, and CI/CD 9. Part 3: Building Solutions on AWS
10. Chapter 7: Getting Started on AWS – Building Solutions with AWS EC2 11. Chapter 8: Containerize with AWS – Building Solutions with AWS EKS 12. Chapter 9: Go Serverless with AWS – Building Solutions with AWS Lambda 13. Part 4: Building Solutions on Azure
14. Chapter 10: Getting Started on Azure – Building Solutions with Azure Virtual Machines 15. Chapter 11: Containerize on Azure – Building Solutions with Azure Kubernetes Service 16. Chapter 12: Go Serverless on Azure – Building Solutions with Azure Functions 17. Part 5: Building Solutions on Google Cloud
18. Chapter 13: Getting Started on Google Cloud – Building Solutions with GCE 19. Chapter 14: Containerize on Google Cloud – Building Solutions with GKE 20. Chapter 15: Go Serverless on Google Cloud – Building Solutions with Google Cloud Functions 21. Part 6: Day 2 Operations and Beyond
22. Chapter 16: Already Provisioned? Strategies for Importing Existing Environments 23. Chapter 17: Managing Production Environments with Terraform 24. Chapter 18: Looking Ahead – Certification, Emerging Trends, and Next Steps 25. Index 26. Other Books You May Enjoy

What this book covers

Chapter 1, Understanding Terraform Architecture, provides an in-depth look at the core tenants of Terraform’s architecture, focusing on Terraform state, modularity, the command-line tool, and the configuration language that make up what we know as Terraform.

Chapter 2, Using HashiCorp Configuration Language, provides an in-depth look at the critical language structures used by Terraform’s functional language, HashiCorp Configuration Language (HCL). It shares best practices and real-world use cases for common scenarios.

Chapter 3, Harnessing HashiCorp Utility Providers, provides an in-depth look at the utility providers that extend Terraform core and your cloud provider of choice. It shares the best practices and common use cases to help you streamline common cloud-agnostic operations no matter what cloud platform you’re using.

Chapter 4, Foundations of Cloud Architecture – Virtual Machines and Infrastructure-as-a-Service, provides an overview of core concepts needed to start designing and building Infrastructure as Code solutions using Terraform. These critical concepts transcend cloud platforms, which will help prepare you to automate this category of solution no matter what your cloud of choice.

Chapter 5, Beyond VMs – Core Concepts of Containers and Kubernetes, provides an overview of core concepts needed to start designing and building Infrastructure as Code solutions that integrate with Docker and Kubernetes—a scenario that is becoming more and more popular these days. The chapter explores Docker and Kubernetes integration strategies using both native client tools and relevant Terraform providers for Kubernetes and Helm.

Chapter 6, Connecting It All Together – GitFlow, GitOps, and CI/CD, provides an overview of software development processes using GitFlow and the impact of this approach on Infrastructure as Code operations. Finally, we explore using GitHub Actions to implement CI/CD pipelines for virtual machines, Kubernetes, and serverless workloads.

Chapter 7, Getting Started on AWS – Building Solutions with AWS EC2, provides an end-to-end solution developed for AWS using virtual machines powered by EC2. The chapter explores the usage of Packer to automate OS-level configuration, Terraform to provision the infrastructure and deploy the workload, and finally, GitHub Actions to automate the entire process.

Chapter 8, Containerize with AWS – Building Solutions with AWS EKS, provides an end-to-end solution developed for AWS using Kubernetes powered by EKS. The chapter explores the usage of Docker to automate OS-level configuration, Terraform to provision the infrastructure and deploy the workload, and finally, GitHub Actions to automate the entire process.

Chapter 9, Go Serverless with AWS – Building Solutions with AWS Lambda, provides an end-to-end serverless solution developed for AWS Lambda. The chapter explores the necessary application code changes to conform to AWS Lambda’s framework, Terraform to provision the infrastructure and deploy the workload, and finally, GitHub Actions to automate the entire process.

Chapter 10, Getting Started on Azure – Building Solutions with Azure Virtual Machines, provides an end-to-end solution developed using Azure Virtual Machines. The chapter explores the usage of Packer to automate OS-level configuration, Terraform to provision the infrastructure and deploy the workload, and finally, GitHub Actions to automate the entire process.

Chapter 11, Containerize on Azure – Building Solutions with Azure Kubernetes Service, provides an end-to-end solution developed for Azure using Kubernetes powered by AKS. The chapter explores the usage of Docker to automate OS-level configuration, Terraform to provision the infrastructure and deploy the workload, and finally, GitHub Actions to automate the entire process.

Chapter 12, Go Serverless on Azure – Building Solutions with Azure Functions, provides an end-to-end serverless solution developed for Azure Functions. The chapter explores the necessary application code changes to conform to the Azure Functions framework, Terraform to provision the infrastructure and deploy the workload, and finally, GitHub Actions to automate the entire process.

Chapter 13, Getting Started on Google Cloud – Building Solutions with GCE, provides an end-to-end solution developed for GCP using virtual machines powered by GCE. The chapter explores the usage of Packer to automate OS-level configuration, Terraform to provision the infrastructure and deploy the workload, and finally, GitHub Actions to automate the entire process.

Chapter 14, Containerize on Google Cloud – Building Solutions with GKE, provides an end-to-end solution developed for GCP using Kubernetes powered by GKE. The chapter explores the usage of Docker to automate OS-level configuration, Terraform to provision the infrastructure and deploy the workload, and finally, GitHub Actions to automate the entire process.

Chapter 15, Go Serverless on Google Cloud – Building Solutions with Google Cloud Functions, provides an end-to-end serverless solution developed for Google Cloud Functions. The chapter explores the necessary application code changes to conform to the Google Cloud Functions framework, Terraform to provision the infrastructure and deploy the workload, and finally, GitHub Actions to automate the entire process.

Chapter 16, Already Provisioned? Strategies for Importing Existing Environments, provides an in-depth look at different approaches for bringing existing resources and environments under Terraform management. The chapter explores the usage of built-in import capabilities as well as strategies using third-party tools and provides real-world recommendations for when and how to use them and what the trade-offs are to employing these techniques.

Chapter 17, Managing Production Environments with Terraform, provides in-depth guidance for how to manage long-lived environments using Infrastructure as Code with Terraform. The chapter explores different real-world operating models that help organizations better coordinate Infrastructure as Code at scale. Then, it delves into Day 2 operations with best practices for managing change and break-fixing when things go awry.

Chapter 18, Looking Ahead – Certification, Emerging Trends, and Next Steps, provides a practical guide to preparing for and sitting for a Terraform Certification exam. The chapter also explores emerging trends and potential next steps for those of you who want to take your mastery of Terraform to the next level.

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image