3rd Edition. — O’Reilly Media, 2023. — 92 p. — (Early Release).
The past decade has seen cloud and infrastructure as code move out of shadow IT and startups and into the mainstream. Many organizations rushed to adopt new technologies as part of their transformation into digital businesses, creating a sprawl of unmaintainable infrastructure codebases. Now, there is a need to consolidate cloud-based systems into mature foundations for sustainable growth.
In this book, Kief Morris describes patterns and practices for building and evolving infrastructure as code. The third edition provides a broader context for infrastructure, explaining how to design and implement infrastructure to better support the strategic goals and challenges of an organization, such as supporting growth while better-managing costs.
A literal definition of Infrastructure as Code is the practice of provisioning and managing infrastructure using code, as opposed to doing it interactively, or with non-code automation tools. By “interactively”, I mean using a command-line tool or GUI interface to carry out tasks. The alternative is writing code that can then be distributed and applied by automated systems. Interactive infrastructure management doesn’t help in doing things consistently or repeatably, since you decide how to implement each change as you work.
This book covers:Foundational concepts, including an exploration of declarative and procedural infrastructure languages, where infrastructure code fits into a comprehensive platform strategy and enterprise architecture, and how to test and deliver infrastructure code.
Infrastructure architecture, drawing on lessons learned from software design and engineering to build infrastructure codebases that can be evolved and scaled to enable growth and adapt to changing needs.
Patterns for building infrastructure to support platform services across the complicated, varied landscapes of real-world IT systems, from physical hardware to virtual servers to cloud-native clusters and serverless workloads.
Workflows and operating models that combine automation and cloud with forward-thinking approaches like Agile and DevOps for rigorous governance of compliance, cost, security, and operational quality.