Infrastructure Automation with Terraform
eBook - ePub

Infrastructure Automation with Terraform

Automate and Orchestrate your Infrastructure with Terraform Across AWS and Microsoft Azure

Ankita Patil

Condividi libro
  1. English
  2. ePUB (disponibile sull'app)
  3. Disponibile su iOS e Android
eBook - ePub

Infrastructure Automation with Terraform

Automate and Orchestrate your Infrastructure with Terraform Across AWS and Microsoft Azure

Ankita Patil

Dettagli del libro
Anteprima del libro
Indice dei contenuti
Citazioni

Informazioni sul libro

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.

Table of Contents
1. Setting up Terraform
2. Terraform Basics and Configuration
3. Terraform Provisioners
4. Automating Infrastructure Deployments in the AWS Using Terraform
5. Automating Infrastructure Deployments in Azure Using Terraform
6. Terraform Modules
7. Terraform Cloud
8. Terraform and Jenkins Integration
9. End-to-End Application Management using Terraform

Domande frequenti

Come faccio ad annullare l'abbonamento?
È semplicissimo: basta accedere alla sezione Account nelle Impostazioni e cliccare su "Annulla abbonamento". Dopo la cancellazione, l'abbonamento rimarrà attivo per il periodo rimanente già pagato. Per maggiori informazioni, clicca qui
È possibile scaricare libri? Se sì, come?
Al momento è possibile scaricare tramite l'app tutti i nostri libri ePub mobile-friendly. Anche la maggior parte dei nostri PDF è scaricabile e stiamo lavorando per rendere disponibile quanto prima il download di tutti gli altri file. Per maggiori informazioni, clicca qui
Che differenza c'è tra i piani?
Entrambi i piani ti danno accesso illimitato alla libreria e a tutte le funzionalità di Perlego. Le uniche differenze sono il prezzo e il periodo di abbonamento: con il piano annuale risparmierai circa il 30% rispetto a 12 rate con quello mensile.
Cos'è Perlego?
Perlego è un servizio di abbonamento a testi accademici, che ti permette di accedere a un'intera libreria online a un prezzo inferiore rispetto a quello che pagheresti per acquistare un singolo libro al mese. Con oltre 1 milione di testi suddivisi in più di 1.000 categorie, troverai sicuramente ciò che fa per te! Per maggiori informazioni, clicca qui.
Perlego supporta la sintesi vocale?
Cerca l'icona Sintesi vocale nel prossimo libro che leggerai per verificare se è possibile riprodurre l'audio. Questo strumento permette di leggere il testo a voce alta, evidenziandolo man mano che la lettura procede. Puoi aumentare o diminuire la velocità della sintesi vocale, oppure sospendere la riproduzione. Per maggiori informazioni, clicca qui.
Infrastructure Automation with Terraform è disponibile online in formato PDF/ePub?
Sì, puoi accedere a Infrastructure Automation with Terraform di Ankita Patil in formato PDF e/o ePub, così come ad altri libri molto apprezzati nelle sezioni relative a Computer Science e Cloud Computing. Scopri oltre 1 milione di libri disponibili nel nostro catalogo.

Informazioni

Anno
2022
ISBN
9789355510907

CHAPTER 1

Setting Up Terraform

"Believe in yourself! Have faith in your abilities! Without humble but reasonable confidence in your powers, you cannot be successful or happy."
—Norman Vincent Peale
Application delivery and the activities involved in it have changed a lot after cloud computing and DevOps practices gained the attention of different organizations. Everything as code is a new norm where your automation or CI/CD pipeline is also part of version control - pipeline as code. High availability, disaster recovery, and business continuity have become crucial considering the competitive market. Terraform helps us write and execute code to define, deploy, update, and destroy your infrastructure in different cloud environments; hence, we don’t need to learn cloud specific tools. Terraform is an open-source Infrastructure as Code tool that codifies cloud APIs into declarative configuration files to make managing different environments easier.
In this chapter, we will install and configure Terraform in different operating systems as well as in Docker container. We will use Docker Desktop to create a container that has Terraform installed on it. We will also understand the details for AWS and Azure accounts and Command line (CLIs). It will help us in the upcoming chapters when using Terraform to create infrastructure in AWS and Microsoft Azure cloud environment.

Structure

We will discuss the following topics in this chapter:
  • Installing and configuring Terraform on Windows using Chocolatey
  • Installing and configuring Terraform on Mac
  • Installing and configuring Terraform on Ubuntu
  • Installing and configuring Terraform on CentOS
  • Terraform IAC Development and IDE
  • Creating Microsoft Azure Account
  • Installing and Configuring Azure CLI
  • Creating AWS Account
  • Installing and Configuring AWS CLI

Objectives

After studying this unit, you should be able to install and configure Terraform in different operating systems or different types of platform, such as Docker container. You should also be able to understand how to create AWS and Azure accounts and installing CLIs.

Installing and configuring Terraform on Windows using Chocolatey

Terraform open-source project and Terraform plugins are written in GO programming language. We can use Terraform to create infrastructure resources across different cloud service providers such as Amazon Web Services (AWS) and Azure as well as other cloud deployment models and virtualization platforms. In this book, we are going to use AWS and Microsoft Azure. We will install and configure Terraform, AWS CLI, Azure CLI, and editors. This environment creation will help us write Terraform files to create resources in different cloud platforms.
Chocolatey is a small piece of wonder for all those who hate struggling with the installation of different packages on Windows. It helps make installation easier and can be done from your command-line. Its features include management of dependencies and version control, and it offers ease of use for handling different packages on Windows. Chocolatey is an open-source package management tool, but it has a commercial edition. Chocolatey is in a similar pool of yum, apt, and Homebrew. In simple words, Chocolatey is a Windows Package Manager that makes your life easy with simplicity, efficiency, power, and flexibility.
Note: Terraform doesn’t require GO as a pre-requisite for installation or any GO programming skills.
Here are the pre-requisites to install Chocolatey:
  • Windows 7+ / Windows Server 2003+
  • PowerShell v2+ (the lowest version is v3 for install from this website due to TLS 1.2 requirement)
  • .NET Framework 4+ (the installation will attempt to install .NET 4.0 if you do not have it) (the lowest version is 4.5 for install from this website due to TLS 1.2 requirement)
Let’s try to install Chocolatey using the following commands:
We will install it with PowerShell:
  1. With PowerShell, execute the "Get-ExecutionPolicy" command first. Here’s the explanation of the output of the execution of this command:
    • If output is restricted, run Set-ExecutionPolicy AllSigned Or Set-ExecutionPolicy Bypass -Scope Process
      If output is AllSigned, then go to Step 2.
      Visit https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_execution_policies?view=powershell-7.1 for more details on execution policies.
  2. Execute the following command to install Chocolatey. Visit the official website for more details on Chocolatey installation.
    Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString(‘https://chocolatey.org/install.ps1’))
  3. Type choco or choco -?. You are ready to install packages using Chocolatey. Chocolatey is installed in following screenshot:
    Figure 1.1: Install Chocolaty on Windows using PowerShell
  4. Verify environment variables after installing Chocolatey as per the following screenshot. Visit https://chocolatey.org/install for advanced installation of Chocolatey.
    Figure 1.2: Environment vari...

Indice dei contenuti