Infrastructure Automation with Terraform: Automate and Orchestrate your Infrastructure with Terraform Across AWS and Microsoft Azure
- Length: 468 pages
- Edition: 1
- Language: English
- Publisher: BPB Publications
- Publication Date: 2022-05-11
- ISBN-10: 935551090X
- ISBN-13: 9789355510907
- Sales Rank: #266317 (See Top 100 Books)
Use Terraform and Jenkins to implement Infrastructure as Code and Pipeline as Code across multi-cloud environments
Key Features
- Step-by-step guidelines for managing infrastructure across multiple cloud platforms.
- Expert-led coverage on managing Pipeline as Code using Jenkins.
- Includes images demonstrating how to manage AWS and Azure resources using Terraform Modules.
Description
This book explains how to quickly learn and utilize Terraform to incorporate Infrastructure as Code into a continuous integration and continuous delivery pipeline. The book gives you the step-by-step instructions with screenshots and diagrams to make the learning more accessible and fun.
This book discusses the necessity of Infrastructure as a Code (IaC) and the many tools available for implementing IaC. You will gain the knowledge of resource creation, IAM roles, EC2 instances, elastic load balancers, and building terraform scripts, among other learnings. Next, you will explore projects and use-cases for implementing DevOps concepts like Continuous Integration, Infrastructure as Code, and Continuous Delivery. Finally, you learn about the Terraform Modules and how to establish networks and Kubernetes clusters on various cloud providers. Installing and configuring Jenkins and SonarQube in Cloud Environments will also be discussed.
As a result of reading this book, you will be able to apply Infrastructure as Code and Pipeline as Code principles to major cloud providers such as AWS and Azure.
What you will learn
- Create, manage, and maintain AWS and Microsoft Azure infrastructure.
- Using Packer, create AMIs and EC2 instances.
- Utilize Terraform Modules to create VPC and Kubernetes clusters.
- Put the Pipeline and Infrastructure as Code principles into practice.
- Utilize Jenkins to automate the application lifecycle management process.
Who this book is for
This book will primarily help DevOps, Cloud Operations, Agile teams, Cloud Native Developers, and Networking Professionals. Being familiar with the fundamentals of Cloud Computing and DevOps will be beneficial.
Cover Page Title Page Copyright Page Dedication Page About the Authors About the Reviewers Acknowledgements Preface Errata Table of Contents 1. Setting Up Terraform Structure Objectives Installing and configuring Terraform on Windows using Chocolatey Installing and configuring Terraform on Mac Installing and configuring Terraform on Ubuntu/Debian Installing and configuring Terraform on CentOS/RHEL/Amazon Linux Terraform in Docker Creating an AWS Account Installing and Configuring AWS CLI Creating a Microsoft Azure Account Installing and configuring Azure CLI Terraform IAC Development and IDE Atom Visual Studio Code Conclusion Points to remember Multiple choice questions Answers Questions 2. Terraform Basics and Configuration Structure Objectives Terraform workflow Terraform language Terraform registry Terraform provider Declaring provider in Terraform code Configuring the provider Dependency lock file Terraform resources Declaring resource Terraform variables Reason for using Terraform variables Introducing Input Variable Declaring Input Variable Input variable arguments Default Type Description Validation Sensitive Assigning values to Terraform input variables Command-line option –var Variable definitions (.tfvars) files As environment variables In a Terraform Cloud workspace Accessing input variables Terraform local values Declaring a local value Accessing a local value Terraform functions Terraform resource graph Terraform graph nodes Terraform graph building Traverse the graph Terraform output Exporting Terraform output in JSON Terraform states - Desired and current states Current state and desired state Current state Desired state Benefits of using state files Remote storage for Terraform state Configuring Amazon S3 as remote store Configuring DynamoDB with Amazon S3 for locking Terraform states Terraform expressions Provisioning multiple resources Count Count.index For_each Referring to each object in the for_each block Debugging the Terraform execution Conclusion 3. Terraform Provisioners Structure Objectives Using provisioners in Terraform Implementing local-exec provisioners Implementing remote-exec provisioners Creation-time and destroy-time provisioners Conclusion Points to remember Multiple choice questions Answers Questions 4. Automating Infrastructure Deployments in the AWS Using Terraform Structure Objectives Creating Jenkins instance using Terraform Variables in Terraform files Configuring AWS credentials in Terraform files Creating VPC in AWS Creating a Security Group in AWS Creating a Packer AMI for Jenkins Creating an EC2 instance using the latest Packer AMI Userdata in AWS Identity and Access Management Auto scaling and load balancing Implementing S3 buckets and bucket policies Conclusion Points to remember Multiple choice questions Answers Questions 5. Automating Infrastructure Deployments in Azure Using Terraform Structure Objectives Using Terraform in Azure Cloud Shell Creating resource group in Azure Configuring Terraform provider for Azure cloud Authenticating to Azure Configuring Terraform state management Creating a virtual network in Azure Creating network security groups in Azure Creating a virtual machine in Azure Creating a virtual machine instance with Packer AMI Configuring Azure Machine scale set Creating and deploying an App Service for Java web application Managing Application Insights for Java web application Creating a database for Java web application Creating App Service Creating Application Gateway for Java web application Creating Traffic Manager for multi-location web app Deploying a Java web application in App Services Managing Azure Spring Cloud Deploying Spring Boot Application to Azure Spring Cloud Conclusion Questions 6. Terraform Modules Structure Objectives Creating and distributing custom modules Managing production-like infrastructure using Terraform Creating Amazon VPC using Terraform modules Creating EKS cluster using Terraform modules Creating Azure network using Terraform modules Creating AKS cluster using Terraform modules Conclusion Points to remember Multiple choice questions Answers Questions 7. Terraform Cloud Structure Objectives Introduction to Terraform Cloud Creating an account in Terraform Cloud Setting up Terraform Cloud organization Workspace in Terraform Cloud Creating a workspace in Terraform Cloud Executing Terraform configuration in Terraform Cloud (Runs) Creating Terraform configuration in VC Repository Configuring Auto Apply Starting Runs in Terraform Cloud Access Management in Terraform Cloud Users User settings Sessions Organizations Password Two-factor authentication Tokens Teams Organizations Permissions Organization level Workspace level Conclusion Points to remember Key terms Multiple choice questions Answers Questions 8. Terraform and Jenkins Integration Structure Objective Deploying Jenkins Automation Server Jenkins Pipeline – Best Practices Installing SonarQube on Amazon EKS Terraform in Jenkins Declarative Pipeline Adopting Infrastructure as Code (IaC) Culture in an Organization Conclusion Points to remember Multiple choice questions Answers Questions 9. End-to-End Application Management Using Terraform Structure Objective Implementing Sample Project with IaC using Terraform in Cloud Conclusion Points to remember Multiple choice questions Answers Questions Index
Donate to keep this site alive
1. Disable the AdBlock plugin. Otherwise, you may not get any links.
2. Solve the CAPTCHA.
3. Click download link.
4. Lead to download server to download.