<p>Discover the methodologies and best practices for getting started with HashiCorp tools, including Terraform, Vault, and Packer. The book begins with an introduction to the infrastructure-as-code concept while establishing the need for automation and management technologies. Youβll go over hands-o
Infrastructure-as-Code Automation Using Terraform, Packer, Vault, Nomad and Consul: Hands-on Deployment, Configuration, and Best Practices
β Scribed by Navin Sabharwal, Sarvesh Pandey, Piyush Pandey
- Publisher
- Apress
- Year
- 2021
- Tongue
- English
- Leaves
- 257
- Edition
- 1
- Category
- Library
No coin nor oath required. For personal study only.
β¦ Synopsis
Discover the methodologies and best practices for getting started with HashiCorp tools, including Terraform, Vault, and Packer. The book begins with an introduction to the infrastructure-as-code concept while establishing the need for automation and management technologies. Youβll go over hands-on deployment, configuration, and best practices for Terraform, Packer, Vault, Nomad, and Consul. Youβll then delve deeper into developing automation code using Terraform for automating AWS/Azure/GCP public cloud tasks; advanced topics include leveraging Vault for secrets management and Packer for image management.
Along the way you will also look at Nomad and Consul for managing application orchestration along with network interconnectivity. In each chapter you will cover automated infrastructure and application deployment on the VM/container base ecosystem. The book provides sample code and best-practice guidance for developers and architects to look at infrastructure-as-code adoption from a holistic viewpoint.Β Β Β Β Β Β Β Β Β Β Β
All the code presented in the book is available in the form of scripts, which allow you to try out the examples and extend them in interesting ways.Β
What You Will Learn
- Get an overview of the architecture of Terraform, Vault, Packer, Nomad, and Consul
- Follow hands-on steps for enabling Terraform, Vault, Packer, Nomad, and Consul
- Automate various services on the public cloud, including AWS, Azure, and GCPΒ
Who This Book Is ForΒ
Developers, architects, and administrators who want to learn about infrastructure-as-code automation.
β¦ Table of Contents
Table of Contents
About the Authors
About the Technical Reviewer
Acknowledgments
Chapter 1: Getting Started with HashiCorp Automation Solutions
Introduction to Infrastructure as Code
Introduction to HashiCorp Automation
Packer
Terraform
Vault
Nomad
Consul
Vagrant
Boundary
Waypoint
Summary
Chapter 2: Getting Started with HashiCorp Terraform
Introduction to HashiCorp Terraform
Terraform CLI (Open Source)
Terraform Cloud
Terraform Enterprise
Comparing the Options
Setting up an AWS Account
Getting Started with Terraform Cloud
Terraform Workflow
Getting Started with Terraform CLI
Whatβs New in Terraform 0.14
Terraform 0.14 vs. Terraform 0.13
Summary
Chapter 3: Understanding Terraform Programming Constructs
Configuration Language
Arguments, Blocks, and Expressions
Code Organization
Configuration Ordering
Resources
Provider
Input Variables
Environment Variables
Output Values
Local Values
Modules
Creating a Custom Module
Version
count and for_each
depends_on Module
Providers
Provider Version Constraints in Modules
Automatic Installation of Third-Party Providers
Provider Plug-ins in a Local Filesystem
Data Sources
Backend Configuration
Backend Types
Backend Initialization
Provisioners
Creation-Time Provisioners
Destroy-Time Provisioners
Multiple Provisioners
Types of Provisioners
Generic Provisioners
File Provisioners
Local-Exec Provisioners
Remote-Exec Provisioners
Vendor Provisioners
Chef Provisioners
Summary
Chapter 4: Automating Public Cloud Services Using Terraform
Automating the GCP Public Cloud Using Terraform
Creating a VPC and Subnet with Terraform
Creating a Virtual Machine with Terraform
Creating a GCS Bucket with Terraform
Automating the Azure Public Cloud Using Terraform
Summary
Chapter 5: Getting Started with Vault
Introduction to HashiCorp Vault
Understanding Vaultβs Logical Architecture
Understanding Vaultβs Security Model
Installing Vault CLI and Integration with AWS
Summary
Chapter 6: Getting Started with HashiCorp Packer
Introduction to HashiCorp Packer
Builders
Communicators
Provisioners
Post-Processors
Variables
Using Declared Variables in Templates
Using Environment Variables in Templates
Installing Packer
Hands-on Exercise to Automate AWS AMI
Summary
Chapter 7: Getting Started with HashiCorp Consul
Introduction to HashiCorp Consul
Service Discovery
Configuration Management
Service Mesh and Network Segmentation
Architecture
Agent
Catalog
Anti-Entropy
Consensus Protocol
Gossip Protocol
LAN Gossip Pool
WAN Gossip Pool
Installing Consul
Service Discovery Using Consul
Intention Deletion
Service Registration
DNS and Health Checks Using Consul
Summary
Chapter 8: Getting Started with Nomad
Container Orchestration
Introduction to Nomad
Nomad Architecture
Autoscaling Overview
Dynamic Application Sizing
Horizontal Cluster Autoscaling
Horizontal Application Autoscaling
Installing Nomad
Policy-Driven Governance in Nomad
Namespaces
Resource Quotas
Sentinel Policies
Nomad ACLs
Tokens
Policies
Rules
Capabilities
Container Application Deployment Using Nomad
Summary
Index
β¦ Subjects
automation, infrastructure-as-code, HashiCorp, Terraform, Vault, Packer, cloud, AWS, Azure, GCP
π SIMILAR VOLUMES
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 β’ Miti
<span>Use Infrastructure as Code (IaC) to automate, test, and streamline infrastructure for business-critical systems.</span><span><br><br>In </span><span>Infrastructure as Code, Patterns and Practices</span><span> you will learn how to:<br> <br>Β Β Β Optimize infrastructure for modularity and isolate
<span>Use Infrastructure as Code (IaC) to automate, test, and streamline infrastructure for business-critical systems.</span><span><br><br>In </span><span>Infrastructure as Code, Patterns and Practices</span><span> you will learn how to:<br> <br>Β Β Β Optimize infrastructure for modularity and isolate
<span>Use Infrastructure as Code (IaC) to automate, test, and streamline infrastructure for business-critical systems.</span><span><br><br>In </span><span>Infrastructure as Code, Patterns and Practices</span><span> you will learn how to:<br> <br>Β Β Β Optimize infrastructure for modularity and isolate
<p><span>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 third edition, expanded and thoroughly updated for ver