Book description
Build, Manage and Improve your infrastructure effortlessly.
About This Book
An up-to-date and comprehensive resource on Terraform that lets you quickly and efficiently launch your infrastructure
Learn how to implement your infrastructure as code and make secure, effective changes to your infrastructure
Learn to build multi-cloud fault-tolerant systems and simplify the management and orchestration of even the largest scale and most complex cloud infrastructures
Who This Book Is For
This book is for developers and operators who already have some exposure to working with infrastructure but want to improve their workflow and introduce infrastructure as a code practice. Knowledge of essential Amazon Web Services components (EC2, VPC, IAM) would help contextualize the examples provided. Basic understanding of Jenkins and Shell scripts will be helpful for the chapters on the production usage of Terraform.
What You Will Learn
Understand what Infrastructure as Code (IaC) means and why it matters
Install, configure, and deploy Terraform
Take full control of your infrastructure in the form of code
Manage complete infrastructure, starting with a single server and scaling beyond any limits
Discover a great set of production-ready practices to manage infrastructure
Set up CI/CD pipelines to test and deliver Terraform stacks
Construct templates to simplify more complex provisioning tasks
In Detail
Terraform is a tool used to efficiently build, configure, and improve the production infrastructure. It can manage the existing infrastructure as well as create custom in-house solutions.
This book shows you when and how to implement infrastructure as a code practices with Terraform. It covers everything necessary to set up the complete management of infrastructure with Terraform, starting with the basics of using providers and resources. It is a comprehensive guide that begins with very small infrastructure templates and takes you all the way to managing complex systems, all using concrete examples that evolve over the course of the book. The book ends with the complete workflow of managing a production infrastructure as code—this is achieved with the help of version control and continuous integration. The readers will also learn how to combine multiple providers in a single template and manage different code bases with many complex modules. It focuses on how to set up continuous integration for the infrastructure code.
The readers will be able to use Terraform to build, change, and combine infrastructure safely and efficiently.
Style and approach
This book will help and guide you to implement Terraform in your infrastructure. The readers will start by working on very small infrastructure templates and then slowly move on to manage complex systems, all by using concrete examples that will evolve during the course of the book.
Table of contents
- Preface
-
Infrastructure Automation
- What is Infrastructure as Code and why is it needed?
- Declarative versus procedural tools for Infrastructure as Code
- Infrastructure as Code in the Cloud
- Requirements for infrastructure provisioner
- Which tools exist for infrastructure provisioning?
- A short overview of Terraform
- Journey ahead and how to read this book
- Summary
- Deploying First Server
-
Resource Dependencies and Modules
- Creating an AWS Virtual Private Cloud
- Understanding dependency graph
- Playing with Terraform graphs
- Controlling dependencies with depends_on and ignore_changes
- Making sense of our template
- Removing duplication with modules
- Configuring modules
- Retrieving module data with outputs
- Using root module outputs
- Summary
- Storing and Supplying Configuration
- Connecting with Other Tools
- Scaling and Updating Infrastructure
-
Collaborative Infrastructure
- Version control with Git 101
- Moving templates to Git
- Protecting secrets in a Git repository
- Storing state files remotely
- Connecting remote states together
- Storing modules remotely
- Locking state files with Terragrunt
- Moving infrastructure updates to the CI pipeline
- Integration testing of Terraform modules
- Summary
-
Future of Terraform
- Infrastructure as code and Terraform replacements
- Learning AWS and compiling Terraform
- Learning Consul
- Provisioning and configuration management
- Immutable infrastructure
- Collaboration and CI/CD
- The many tools around Terraform
- The rapid development of Terraform
- Closing thoughts on the future of Terraform
- Summary
Product information
- Title: Getting Started with Terraform - Second Edition
- Author(s):
- Release date: July 2017
- Publisher(s): Packt Publishing
- ISBN: 9781788623537
You might also like
book
Terraform: Up and Running
Terraform has emerged as a key player in the DevOps world for defining, launching, and managing …
video
Terraform in Action video edition
An outstanding source of knowledge for Terraform enthusiasts of all levels. Anton Babenko, Betajob Use Terraform …
book
Terraform Cookbook
Cloud services and SaaS software permeate every company's IT landscape, requiring a shift from manually provisioned …
book
Terraform Cookbook
Discover how to manage and scale your infrastructure using Infrastructure as Code (IaC) with Terraform Key …