Python and Terraform Infrastructure as code, standards and practices
Author:
Publisher: jideon francisco marques
Published: 2024-02-23
Total Pages: 448
ISBN-13:
DOWNLOAD EBOOKHow this book is organized: A roadmap I organized this book into three sections with 13 chapters. Part 1 introduces IaC and how you, as an individual, write it. • Chapter 1 defines IaC and its benefits and principles. The chapter explains that the book has examples in Python, run by HashiCorp Terraform, and deployed to Google Cloud Platform (GCP). I also discuss the tools and use cases you’ll encounter in your IaC journey. • Chapter 2 dives into the principle of immutability and how you can migrate existing infrastructure resources to IaC. It also covers the practices of writing clean IaC. • Chapter 3 offers a few patterns for dividing and grouping infrastructure resources into modules. Each pattern includes an example and a list of use cases. • Chapter 4 covers how to manage dependencies among infrastructure resources and modules and decouple them with dependency injection and some common patterns. Part 2 describes how to write and collaborate on IaC as a team. • Chapter 5 organizes the practices and considerations for expressing IaC in different repository structures and sharing it across your team. • Chapter 6 provides an infrastructure testing strategy. It describes each type of test and how to write them for IaC. • Chapter 7 applies continuous delivery to IaC. It covers a high-level view of branching models and how your team can use them to change infrastructure. • Chapter 8 provides techniques to build secure and compliant IaC, including testing and tagging. Part 3 covers how to manage IaC across your company. • Chapter 9 applies immutability to infrastructure changes, including an example for blue-green deployments. • Chapter 10 refactors a large body of IaC to improve its maintainability and mitigate the blast radius of failed changes to one codebase. • Chapter 11 describes reverting IaC and rolling forward changes to the system. • Chapter 12 addresses the use of IaC to manage cloud computing costs. It includes an example for cost estimation of IaC. • Chapter 13 completes the book with practices to manage and update IaC tools. You will find that many concepts build on each other throughout the book, and it may help to read the chapters in order if you have not previously practiced IaC. Otherwise, you can choose the sections that best apply to the challenges you face in your IaC practice.