Use Infrastructure as Code (IaC) to automate, test, and streamline infrastructure for business-critical systems. In Infrastructure as Code, Patterns and Practices you will learn how to: Optimize infrastructure for modularity and isolate dependencies Test infrastructure configuration Mitigate, troubleshoot, and isolate failed infrastructure changes Collaborate across teams on infrastructure development Update infrastructure with minimal downtime using blue-green deployments Scale infrastructure systems supporting multiple business units Use patterns for provisioning tools, configuration management, and image building Deliver secure infrastructure configuration to production Infrastructure as Code, Patterns and Practices teaches you to automate infrastructure by applying changes in a codified manner. You’ll learn how to create, test, and deploy infrastructure components in a way that’s easy to scale and share across an entire organization. The book is full of flexible automation techniques that work whether you’re managing your personal projects or making live network changes across a large enterprise. A system administrator or infrastructure engineer will learn essential software development practices for managing IaC, while developers will benefit from in-depth coverage of assembling infrastructure as part of DevOps culture. While the patterns and techniques are tool agnostic, you’ll appreciate the easy-to-follow examples in Python and Terraform. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the technology Infrastructure as Code is a set of practices and processes for provisioning and maintaining infrastructure using scripts, configuration, or programming languages. With IaC in place, it’s easy to test components, implement features, and scale with minimal downtime. Best of all, since IaC follows good development practices, you can make system-wide changes with just a few code commits! About the book Infrastructure as Code, Patterns and Practices teaches flexible techniques for building resilient, scalable infrastructure, including structuring and sharing modules, migrating legacy systems, and more. Learn to build networks, load balancers, and firewalls using Python and Terraform, and confidently update infrastructure while your software is running. You’ll appreciate the expert advice on team collaboration strategies to avoid instability, improve security, and manage costs. What's inside Optimize infrastructure for modularity and isolate dependencies Mitigate, troubleshoot, and isolate failed infrastructure changes Update infrastructure with minimal downtime using blue-green deployments Use patterns for provisioning tools, configuration management, and image building About the reader For infrastructure or software engineers familiar with Python, provisioning tools, and public cloud providers. About the author Rosemary Wang is an educator, contributor, writer, and speaker. She has worked on many infrastructure as code projects, and open source tools such as Terraform, Vault, and Kubernetes. Table of Contents PART 1 FIRST STEPS 1 Introducing infrastructure as code 2 Writing infrastructure as code 3 Patterns for infrastructure modules 4 Patterns for infrastructure dependencies PART 2 SCALING WITH YOUR TEAM 5 Structuring and sharing modules 6 Testing 7 Continuous delivery and branching models 8 Security and compliance PART 3 MANAGING PRODUCTION COMPLEXITY 9 Making changes 10 Refactoring 11 Fixing failures 12 Cost of cloud computing 13 Managing tools