Terraform: Up & Running. Writing Infrastructure as Code. 2nd Edition - Helion
ISBN: 9781492046851
stron: 368, Format: ebook
Data wydania: 2019-09-06
Księgarnia: Helion
Cena książki: 229,00 zł
Terraform has become a key player in the DevOps world for defining, launching, and managing infrastructure as code (IaC) across a variety of cloud and virtualization platforms, including AWS, Google Cloud, Azure, and more. This hands-on second edition, expanded and thoroughly updated for Terraform version 0.12 and beyond, shows you the fastest way to get up and running.
Gruntwork cofounder Yevgeniy (Jim) Brikman walks you through code examples that demonstrate Terraform’s simple, declarative programming language for deploying and managing infrastructure with a few commands. Veteran sysadmins, DevOps engineers, and novice developers will quickly go from Terraform basics to running a full stack that can support a massive amount of traffic and a large team of developers.
- Explore changes from Terraform 0.9 through 0.12, including backends, workspaces, and first-class expressions
- Learn how to write production-grade Terraform modules
- Dive into manual and automated testing for Terraform code
- Compare Terraform to Chef, Puppet, Ansible, CloudFormation, and Salt Stack
- Deploy server clusters, load balancers, and databases
- Use Terraform to manage the state of your infrastructure
- Create reusable infrastructure with Terraform modules
- Use advanced Terraform syntax to achieve zero-downtime deployment
Osoby które kupowały "Terraform: Up & Running. Writing Infrastructure as Code. 2nd Edition", wybierały także:
- Microsoft Azure. Kurs video. Zostań administratorem systemów IT 169,00 zł, (76,05 zł -55%)
- Amazon Web Services (AWS). Kurs video. Zostań administratorem systemów IT 199,00 zł, (89,55 zł -55%)
- Flutter i Dart. Receptury. Tworzenie chmurowych aplikacji full stack 69,00 zł, (34,50 zł -50%)
- AWS dla architekt 139,00 zł, (69,50 zł -50%)
- Terraform w praktyce. Kurs video. Architektura serverless i us 169,00 zł, (84,50 zł -50%)
Spis treści
Terraform: Up & Running. Writing Infrastructure as Code. 2nd Edition eBook -- spis treści
- Preface
- Who Should Read This Book
- Why I Wrote This Book
- What You Will Find in This Book
- Whats New in the Second Edition
- What You Wont Find in This Book
- Open Source Code Examples
- Using the Code Examples
- Conventions Used in This Book
- OReilly Online Learning
- How to Contact OReilly Media
- Acknowledgments
- 1. Why Terraform
- The Rise of DevOps
- What Is Infrastructure as Code?
- Ad Hoc Scripts
- Configuration Management Tools
- Server Templating Tools
- Orchestration Tools
- Provisioning Tools
- The Benefits of Infrastructure as Code
- How Terraform Works
- How Terraform Compares to Other IaC Tools
- Configuration Management Versus Provisioning
- Mutable Infrastructure Versus Immutable Infrastructure
- Procedural Language Versus Declarative Language
- Master Versus Masterless
- Agent Versus Agentless
- Large Community Versus Small Community
- Mature Versus Cutting Edge
- Using Multiple Tools Together
- Provisioning plus configuration management
- Provisioning plus server templating
- Provisioning plus server templating plus orchestration
- Conclusion
- 2. Getting Started with Terraform
- Setting Up Your AWS Account
- Install Terraform
- Deploy a Single Server
- Deploy a Single Web Server
- Deploy a Configurable Web Server
- Deploying a Cluster of Web Servers
- Deploying a Load Balancer
- Cleanup
- Conclusion
- 3. How to Manage Terraform State
- What Is Terraform State?
- Shared Storage for State Files
- Limitations with Terraforms Backends
- Isolating State Files
- Isolation via Workspaces
- Isolation via File Layout
- The terraform_remote_state Data Source
- Conclusion
- 4. How to Create Reusable Infrastructure with Terraform Modules
- Module Basics
- Module Inputs
- Module Locals
- Module Outputs
- Module Gotchas
- File Paths
- Inline Blocks
- Module Versioning
- Conclusion
- 5. Terraform Tips and Tricks: Loops, If-Statements, Deployment, and Gotchas
- Loops
- Loops with the count Parameter
- Loops with for_each Expressions
- Loops with for Expressions
- Loops with the for String Directive
- Conditionals
- Conditionals with the count Parameter
- If-statements with the count parameter
- If-else-statements with the count parameter
- Conditionals with for_each and for Expressions
- Conditionals with the if String Directive
- Conditionals with the count Parameter
- Zero-Downtime Deployment
- Terraform Gotchas
- count and for_each Have Limitations
- You cannot reference any resource outputs in count or for_each
- You cannot use count or for_each within a module configuration
- Zero-Downtime Deployment Has Limitations
- Valid Plans Can Fail
- Refactoring Can Be Tricky
- Eventual Consistency Is ConsistentEventually
- count and for_each Have Limitations
- Conclusion
- Loops
- 6. Production-Grade Terraform Code
- Why It Takes So Long to Build Production-Grade Infrastructure
- The Production-Grade Infrastructure Checklist
- Production-Grade Infrastructure Modules
- Small Modules
- Composable Modules
- Testable Modules
- Releasable modules
- Beyond Terraform Modules
- Provisioners
- Provisioners with null_resource
- External data source
- Conclusion
- 7. How to Test Terraform Code
- Manual Tests
- Manual Testing Basics
- Cleaning Up After Tests
- Automated Tests
- Unit Tests
- Unit testing basics
- Dependency injection
- Running tests in parallel
- Integration Tests
- Test stages
- Retries
- End-to-End Tests
- Other Testing Approaches
- Static analysis
- Property testing
- Unit Tests
- Conclusion
- Manual Tests
- 8. How to Use Terraform as a Team
- Adopting IaC in Your Team
- Convince Your Boss
- Work Incrementally
- Give Your Team the Time to Learn
- A Workflow for Deploying Application Code
- Use Version Control
- Run the Code Locally
- Make Code Changes
- Submit Changes for Review
- Run Automated Tests
- Merge and Release
- Deploy
- Deployment tooling
- Deployment strategies
- Deployment server
- Promote artifacts across environments
- A Workflow for Deploying Infrastructure Code
- Use Version Control
- Live repo and modules repo
- The Golden Rule of Terraform
- The trouble with branches
- Run the Code Locally
- Make Code Changes
- Submit Changes for Review
- Documentation
- Automated tests
- File layout
- Style guide
- Run Automated Tests
- Merge and Release
- Deploy
- Deployment tooling
- Deployment strategies
- Deployment server
- Promote artifacts across environments
- Use Version Control
- Putting It All Together
- Conclusion
- Adopting IaC in Your Team
- A. Recommended Reading
- Books
- Blogs
- Talks
- Newsletters
- Online Forums
- Index