Terraform on Azure with IaC DevOps SRE RealWorld 25 Demos

Load Balancer, Application Gateway, Traffic Manager, VM, VMSS, Azure DevOps, MySQL Server, DNS Zones, IaC, NAT Gateway
Terraform on Azure with IaC DevOps SRE RealWorld 25 Demos
File Size :
20.24 GB
Total length :
30h 30m

Category

Instructor

Kalyan Reddy Daida | DevOps & SRE Architect on AWS, Azure & Google Cloud Platforms

Language

Last update

5/2023

Ratings

4.7/5

Terraform on Azure with IaC DevOps SRE RealWorld 25 Demos

What you’ll learn

You will learn to master Terraform in a Real-world perspective with 25 demo’s on Azure Cloud with 20+ Azure Services and 30+ Terraform Concepts
You will build Azure Virtual Network 4-Tier design with Subnets and Network Security Groups
You will build infrastructure incrementally on Azure Cloud from simple VM to complex designs like load balancing across regions using Azure Traffic Manager with
You will build Standard Load Balancer External and Internal with Inbound NAT Rules using Terraform
You will learn and build Virtual Machine Scale Sets Manual and Autoscaling Profile concepts like default, recurrence and Fixed Time profiles with Terraform
You will build Azure Public and Private DNS Zones using Terraform
You will implement IaC DevOps usecase using Azure DevOps Build and Release Pipleines for your Terraform Configurations
You will build Azure Application Gateway usecases like Context Path Routing, Mutlsite Hosting, SSL, HTTP to HTTPS Redirect and AG Error Pages
You will build a DNS to DB usecase with Azure MySQL Single Server with Virtual Network Rules and Service Endpoint concepts in Azure
You will learn in detail about Terrafrom State, Local and Remote Backends.
You will learn and implement all Terraform Provisioners
You will learn and implement Terraform Modules with 2 types (Public Modules and Local Modules) and also publish a module to Terraform Public Registry
You will implement Terraform Remote State Datasource concept for Load balancing across regions using Azure Traffic Manager and Azure Standard Load Balancer

Terraform on Azure with IaC DevOps SRE RealWorld 25 Demos

Requirements

You must have an Azure Cloud account to follow with me for hands-on activities.
You don’t need to have any basic knowledge of Terraform. Course will get started from very very basics of Terraform and take you to very advanced levels
From Azure cloud perspective, also for complex topics like Standard Load Balancer, Application Gateway, Virtual Machine Scale Sets, we first implemnt via Azure Portal and then automate them via Terraform.

Description

******* Course Overview *******Welcome to this Amazing course on Terraform on Azure with IaC DevOps SRE | Real-World 25 Demos.  Below is the list of modules covered in this course. Course Modules01. Infrastructure as Code (IaC)02. Install Tools on MacOs, LinuxOS and WindowsOS03. Command Basics04. Language Syntax05. Settings Block06. Providers Block07. Multiple Providers usage08. Dependency Lock File Importance09. Resources Syntax and Behavior10. Azure Virtual Network, Subnets and Network Security Groups11. Azure Linux Virtual Machine, Network Interfaces and Public IP12. Azure Bastion Host Linux VM and Azure Bastion Service13. Azure Standard Load Balancer using Portal14. Azure Standard Load Balancer Basics 15. Azure Standard Load Balancer – Inbound NAT Rules16. Terraform Meta-Argument Count with Azure LB and VMs17. Terraform Meta-Argument for_each with Azure LB and VMs18. Azure Virtual Machine Scale Sets Basics – Manual Scaling19. Azure Virtual Machine Scale Sets Basics – Auto Scaling 4 Profiles20. Azure Internet LB + Web VMSS + Internal LB + App VMSS21. Azure Private DNS Zones22. Delegate DNS Domain to Azure DNS23. Azure Public DNS Zones24. Terraform Remote State Storage using Azure Storage Account25. Azure Traffic Manager and Terraform Remote State Datasource26. Azure Application Gateway using Azure Portal27. Azure Application Gateway using Terraform28. Azure Application Gateway Context Path Routing using Terraform29. Azure Application Gateway Multisite Hosting using Terraform30. Azure Application Gateway SSL + HTTP to HTTPS Redirect + AG Error Pages31. Azure Application Gateway SSL from Azure Key Vault using Terraform32. Azure DevOps for Terraform Projects – IaC (Infrastructure as Code) DevOps33. Azure MySQL Single Server with Terraform34. Terraform Modules – Use Public Registry Module35. Terraform Azure Static Website36. Terraform Modules – Build Local Terraform Module37. Terraform Modules – Publish to Terraform Public Registry38. Terraform Module SourcesAzure Services01. Resource Group02. Virtual Network03. Subnets04. Network Security Groups05. Virtual Machines06. Network Interfaces07. Public IPs08. Load Balancer – Internet and Internal09. Traffic Manager11. Virtual Machine Scale Sets 12. Autoscaling13. Private DNS Zones14. Public DNS Zones15. Application Gateway16. Storage Accounts17. Azure DevOps – Build Pipelines18. Azure DevOps – Release Pipelines19. Azure MySQL Single Server20. Azure NAT Gateway Terraform Concepts covered01. Settings Block02. Providers Block03. Multiple Providers usage04. Dependency Lock File Importance05. Resources Syntax and Behavior06. Resources Meta-Argument – depends_on07. Resources Meta-Argument – count08. Resources Meta-Argument – for_each09. Resources Meta-Argument – lifecycle10. Input Variables – Basics11. Input Variables – Assign When Prompted12. Input Variables – Assign with terraform.tfvars13. Input Variables – Assign with tfvars var-file argument14. Input Variables – Assign with auto tfvars15. Input Variables – Lists16. Input Variables – Maps17. Input Variables – Sensitive Input Variables18. File Function19. Output Values20. Local Values21. Datasources22. Backends – Remote State Storage23. File Provisioner24. remote-exec Provisioner25. Null Resource26. Modules from Public Registry27. Build Local Module28. Dynamic Blocks29. base64encode function30. filebase64 function31. element function32. lookup function33. Remote State DatasourceEach of my courses comes withAmazing Hands-on Step By Step Learning ExperiencesReal Implementation ExperienceFriendly Support in the Q&A section30-Day “No Questions Asked” Money Back Guarantee!

Overview

Section 1: Introduction

Lecture 1 Introduction

Lecture 2 Course GitHub Repository Links

Lecture 3 Terraform Fundamentals Pre-requisite Note

Section 2: Terraform – Install Tools

Lecture 4 Step-01: MacOS: Install Terraform

Lecture 5 Connect With Me !!!

Lecture 6 Step-02: Install VSCode Editor and Configure Course Git Repo

Lecture 7 Step-03: Install Azure CLI and Git Client

Lecture 8 Step-04: Install Terraform Tools on Windows OS

Lecture 9 Step-05: Install Terraform Tools on Linux OS

Section 3: Terraform Command Basics

Lecture 10 Step-01: Introduction to Terraform Workflow using Terraform Commands

Lecture 11 Step-02: Review Terraform manifests

Lecture 12 Step-03: Execute Terraform core commands

Section 4: Terraform Language Basics

Lecture 13 Step-01: Terraform Configuration Syntax

Lecture 14 Step-02: Terraform Arguments, Meta-Arguments and Attributes

Lecture 15 Step-03: Understand about Terraform Top Level Blocks

Section 5: Terraform Settings & Providers Block

Lecture 16 Step-01: Terraform Settings Block Introduction

Lecture 17 Step-02: Understand required_version in Terraform Block

Lecture 18 Step-03: Terraform Provider Introduction

Lecture 19 Step-04: Understand required_providers in Terraform Block and Provider Block

Lecture 20 Step-05: Terraform Apply and Destroy Commands Auto Approve Option

Section 6: Terraform Multiple Providers

Lecture 21 Step-01: Terraform Multiple Providers Introduction

Lecture 22 Step-02: Implement Terraform Multiple Providers & Clean-Up

Section 7: Terraform Dependency Lock File

Lecture 23 Step-01: Terraform Dependency Lock File Introduction

Lecture 24 Step-02: Review c1-versions.tf, Create RG and Random String Resource

Lecture 25 Step-03: Create Terraform Storage Account Resource

Lecture 26 Step-04: Dependency Lock File Demo and CleanUp

Section 8: Terraform Resource Syntax, Behaviour and State

Lecture 27 Step-01: Terraform Resource Syntax Introduction

Lecture 28 Step-02: Create TF Config for Virtual Network

Lecture 29 Step-03: Create TF Config for Subnet, Public IP and Network Interface

Lecture 30 Step-04: Terraform Resource Behavior Introduction

Lecture 31 Step-05: Resource Behavior: Create Resource Demo

Lecture 32 Step-06: Understand Terraform State in detail

Lecture 33 Step-07: Resource Behavior: Update-In-Place, Destroy-Recreate and Destroy Demo’s

Lecture 34 Step-08: Understand Terraform Desired and Current States and CleanUp

Section 9: Azure Virtual Network, Subnets and Network Security Groups

Lecture 35 Step-01: Introduction to Azure Virtual Network 4-Tier Design using Terraform

Lecture 36 Step-02: Implement Terraform Settings and Provider Blocks

Lecture 37 Step-03: Define Generic Input Variables

Lecture 38 Step-04: Define Terraform Local Values and Understand its importance

Lecture 39 Step-05: Create Random String and Resource Group

Lecture 40 Step-06: Create VNET Input Variables and VNET Resource

Lecture 41 Step-07: Create Web Subnet, NSG and NSG-Subnet Associate Resources

Lecture 42 Step-08: Create NSG Rules, Implement for_each and depends_on Meta-Arguments

Lecture 43 Step-09: Create VNET Output Values

Lecture 44 Step-10: Create terraform.tfvars file

Lecture 45 Step-11: Execute TF Commands, Verify 4Tier VNET and Destroy Resources

Section 10: Azure Linux Virtual Machine using Terraform

Lecture 46 Step-01: Introduction to Azure Linux Virtual Machine using Terraform

Lecture 47 Step-02: Create SSH Keys and Public IP for Linux VM

Lecture 48 Step-03: Create Network Interface for Linux VM

Lecture 49 Step-04: Review VM NIC Network Security Group

Lecture 50 Step-05: Create Linux Virtual Machine Resource, learn file function

Lecture 51 Step-06: Create VM Custom Data using Locals Block, learn filebase64, base64encod

Lecture 52 Step-07: Review Output Values for Linux VM

Lecture 53 Step-08: Execute TF Commands, Verify all the Resources created in Azure Portal

Lecture 54 Step-09: Connect via SSH to VM, Verify cloud-init-output log, httpd files and lo

Lecture 55 Step-10: Comment VM NIC NSG and Destroy Resources

Section 11: Azure Bastion Host Linux VM and Azure Bastion Service

Lecture 56 Step-01: Introduction to Azure Bastion Host and Azure Bastion Service

Lecture 57 Step-02: Review Input Variables and Bastion Host Public IP, VM NIC and Linux VM

Lecture 58 Step-03: Understand TF Concepts – Null Resource, Connection Block, File and Remo

Lecture 59 Step-04: Create Null Resource, Connection Block, File and Remote Exec Provisione

Lecture 60 Step-05: Create Azure Bastion Service Resources using Terraform

Lecture 61 Step-06: Execute TF Commands, Verify Bastion Host VM to Web VM Connect using SSH

Lecture 62 Step-07: Verify Bastion Service to Connect to Web Linux VM and Destroy Resources

Section 12: Azure Standard Load Balancer using Portal

Lecture 63 Step-01: Introduction to Standard Load Balancer using Portal

Lecture 64 Step-02: Create RG, VNET, VM1 and VM2

Lecture 65 Step-03: Create Load Balancer, Backend Pool, TCP Probe, LB Rule and NAT Rules

Lecture 66 Step-04: Verify LB Inbound NAT Rules and Sample Application via Browser

Section 13: Azure Standard Load Balancer Basics using Terraform

Lecture 67 Step-01: Introduction to Standard Load Balancer using Terraform

Lecture 68 Step-02: Create Public IP, LB, Backend Pool Resources

Lecture 69 Step-03: Create LB Probe, LB Rule, LB Backend Pool and VM Nic Associate Resource

Lecture 70 Step-04: Execute TF Commands, Verify LB Resurces and Destroy Resources

Section 14: Azure Standard Load Balancer – Inbound NAT Rules

Lecture 71 Step-01: Introduction to Load Balancer Inbound NAT Rules

Lecture 72 Step-02: Create LB NAT Rule Resources

Lecture 73 Step-03: Execute TF Commands, Verify Inbound NAT via LB and Destroy Resources

Section 15: Terraform Meta-Argument Count with Azure LB and VMs

Lecture 74 Step-01: Introduction to implementing multiple VMs using Meta-Argument Count

Lecture 75 Step-02: Review changes to be performed and create variables

Lecture 76 Step-03: Create VM NIC with Meta-Argument Count

Lecture 77 Step-04: Create Linux VM with Meta-Argument Count with Element Function and Spla

Lecture 78 Step-05: Create VM Outputs with Splat Expr and LBNICAssociate with Count Meta-Ar

Lecture 79 Step-06: Craeate LB Inbound NAT Rules with Meta-Argument Count

Lecture 80 Step-07: Execute TF Commands, Verify Resources and Destroy Resources

Section 16: Terraform Meta-Argument for_each with Azure LB and VMs

Lecture 81 Step-01: Introduction to implementing multiple VMs using Meta-Argument for_each

Lecture 82 Step-02: Create Variables, VM NIC and Linux VM with Meta-Argument for_each

Lecture 83 Step-03: Create Outputs with for loops

Lecture 84 Step-04: Create LB Backend Associate with VMNIC, LB NAT Rules with MA for_each

Lecture 85 Step-05: Execute TF Commands, Verify Outputs, Verify and Destroy Resources

Section 17: Azure Virtual Machine Scale Sets Basics – Manual Scaling

Lecture 86 Step-01: Introduction to implementing VMSS using Terraform

Lecture 87 Step-02: Review Variables and VMSS NSG Basic Rule via Inline Security Rule Neste

Lecture 88 Step-03: Create VMSS NSG with Terraform Dynamic Block and Inline Security Rules

Lecture 89 Step-04: Create Web VMSS Resource and its outputs

Lecture 90 Step-05: Execute TF Commands, Verify Resources and Destroy VMSS

Section 18: Azure Virtual Machine Scale Sets Basics – Auto Scaling 4 Profiles

Lecture 91 Step-01: Introduction to VMSS Autoscaling

Lecture 92 Step-02: Understand about autoscaling usecase we are going to implement

Lecture 93 Step-03: Learn Autoscaling Default Profile using Azure Portal

Lecture 94 Step-04: Learn Autoscaling Recurrence and Fixed Profiles

Lecture 95 Step-05: Review Bastion Host changes and create basic autoscale resource

Lecture 96 Step-06: Create Default Profile Metric Rules CPU Usage, Available Memory and LB

Lecture 97 Step-07: Test ScaleOut and ScaleIn Events for Autoscaling Default Profile

Lecture 98 Step-08: Create and Test Autoscaling Recurrence Profiles

Lecture 99 Step-09: Create Autoscaling Fixed Profile, Test and Delete Resources

Section 19: Azure Internet LB + Web VMSS + Internal LB + App VMSS

Lecture 100 Step-01: Introduction to Internal LB Implementation Usecase

Lecture 101 Step-02: Create Storage Account and Container

Lecture 102 Step-03: Understan app1.conf and create upload files resource to storage contain

Lecture 103 Step-04: Create NAT Gateway Resources and associate to App Subnet

Lecture 104 Step-05: Review App VMSS Resources TF Configs

Lecture 105 Step-06: Review App Load Balancer Resources and Terraform TFVARS file

Lecture 106 Step-07: Execute TF Commands, Verify Resources on Azure Portal

Lecture 107 Step-08: Review Web VM Custom Data in detail

Lecture 108 Step-09: Verify Resources using Bastion Host (Point to Point) and Clean-Up

Section 20: Azure Private DNS Zones

Lecture 109 Step-01: Introduction to Azure Private DNS Zones

Lecture 110 Step-02: Create Private DNS Zone Resources and Update app1.conf

Lecture 111 Step-03: Execute TF Commands, Verify Private DNS Zones functioning and Delete Re

Section 21: Delegate DNS Domain to Azure DNS

Lecture 112 Step-01: Introduction to Delegate DNS Zone to Azure DNS

Lecture 113 Step-02: Create DNS Zone and Test

Section 22: Azure Public DNS Zones

Lecture 114 Step-01: Introduction to Azure Public DNS Zone

Lecture 115 Step-02: Create Public DNS Records using DNS Zone Datasource

Lecture 116 Step-03: Execute TF Commands, Verify Public DNS Records and Clean-Up

Section 23: Terraform Remote State Storage using Azure Storage Account

Lecture 117 Step-01: Introduction to Terraform Remote State Storage using Azure Storage Acco

Lecture 118 Step-02: Create Storage Account, Container and TF Backend config

Lecture 119 Step-03: Review remaining TF Configs which needs changes

Lecture 120 Step-04: Execute TF Commands, Verify Storage Account TF State files

Section 24: Azure Traffic Manager and Terraform Remote State Datasource

Lecture 121 Step-01: Introduction to Azure Traffic Manager and Terraform Remote State Dataso

Lecture 122 Step-02: Review TF Configs and Execute TFCommands eastus2 and westus2 regions

Lecture 123 Step-03: Define Remote State Datasource TF Configs for Project-1 and 2 in Projec

Lecture 124 Step-04: Create TFConfig for Traffic Manager Profile

Lecture 125 Step-05: Create TFConfig for Traffic Manager Endpoints

Lecture 126 Step-06: Execute Project-3 TF Command, Verify and Clean-Up 3 projects

Section 25: Azure Application Gateway using Azure Portal

Lecture 127 Step-01: Introduction to Azure Application Gateway

Lecture 128 Step-02: Review TF Configs and Execute TF Commands to create VNET + VMSS + AG Su

Lecture 129 Step-03: Create Application Gateway using Azure Portal

Lecture 130 Step-04: Verif Application Gateway Features and Access Application using AG PIP

Lecture 131 Step-05: Destroy Resources

Section 26: Azure Application Gateway using Terraform

Lecture 132 Step-01: Create Application Gateway TF Config – Part-1

Lecture 133 Step-02: Create Application Gateway TF Config – Part-2

Lecture 134 Step-03: Create Application Gateway TF Config – Part-3

Lecture 135 Step-04: Execute TF Commands, Verify AG Resources and Clean-Up

Section 27: Azure Application Gateway Context Path Routing using Terraform

Lecture 136 Step-01: Introduction to AG Context Path based Routing

Lecture 137 Step-02: Review App1 and App2 VMSS TF Configs

Lecture 138 Step-03: Create App2Backend and Routing Rule TF Configs in AG Resource

Lecture 139 Step-04: Create Url Path Map, Redirect Config and VMSS-AG Integration TF Configs

Lecture 140 Step-05: Execute TF Commands, Verify AG Path Routing and CleanUp

Section 28: Azure Application Gateway Multisite Hosting using Terraform

Lecture 141 Step-01: Introduction to AG Multisite Hosting

Lecture 142 Step-02: Create TF Configs for Two Listeners and Two Routings for App1 and App2

Lecture 143 Step-03: Execute TF Commands, Verify AG Multisite Hosting and CleanUp

Section 29: Azure Application Gateway SSL + HTTP to HTTPS Redirect + AG Error Pages

Lecture 144 Step-01: Introduction to AG SSL, HTTP to HTTPS Redirect and AG Error Pages

Lecture 145 Step-02: Generate SSL Self-Signed Certificates and Convert to pfx

Lecture 146 Step-03: Create Storage Account TF Configs for AG Error Pages

Lecture 147 Step-04: Create TF Configs for AG HTTP Listener, FE Port, Rule and Redirect Conf

Lecture 148 Step-05: Create TF Configs for AG HTTPS Listener, Rule and SSL Block

Lecture 149 Step-06: Execute TF Commands, Verify 3 Usecases and CleanUp

Section 30: Azure Application Gateway SSL from Azure Key Vault using Terraform

Lecture 150 Step-01: Introduction to AG SSL Integration with Azure Key Vault

Lecture 151 Step-02: Review TF Configs for UMID, KeyVault, KV Access Policy Resources and Li

Lecture 152 Step-03: Review TF Configs for KV Access Policy for UMID, KV Cert Import Resourc

Lecture 153 Step-04: Review Application Gateway TF Configs required for Key Vault Usecase

Lecture 154 Step-05: Execute TF Commands, Verify keyVault Resources and CleanUp

Section 31: Azure IaC DevOps for Terraform Projects

Lecture 155 Step-01: Introduction to Azure IaC DevOps

Lecture 156 Step-02: Review Terraform Configs

Lecture 157 Step-03: Create Git Repo and Check-In Terraform Configs

Lecture 158 Step-04: GIT SSH Connection Note

Lecture 159 Step-05: Terraform Dependency Lock File check-in to Git Repo

Lecture 160 Step-06: Create Azure DevOps Organization and Install TF Extension

Lecture 161 Step-07: Azure DevOps Build Pipelines Introduction

Lecture 162 Step-08: Create Azure Build Pipeline

Lecture 163 Step-09: Azure DevOps Release Pipelines Introduction

Lecture 164 Step-10: Create Service Connection and Storage Account for TFState Files

Lecture 165 Step-11: Create Releaes Pipeline, Artificats, Dev Stage Install and Init Tasks

Lecture 166 Step-12: Create Validate, Plan, Apply Tasks for Dev Stage

Lecture 167 Step-13: Run end to end pipelines and verify dev resources

Lecture 168 Step-14: Create QA, Stage and Prod stages and Verify Resources

Lecture 169 Step-15: Make changes to prod.tfvars, verify and clean-up

Section 32: Azure MySQL Single Server with Terraform

Lecture 170 Step-01: Introduction to Azure MySQL Single Server using Terraform

Lecture 171 Step-02: Create MySQL Server Input Variables TF Configs

Lecture 172 Step-03: Create MySQL Server TF Configs

Lecture 173 Step-04: Create MySQL DB, FW Rule, Vnet Rule and Web Subnet Service Endpoint TF

Lecture 174 Step-05: Review VMSS Custom Data for Java App and VMSS Resource TF Configs

Lecture 175 Step-06: Review Application Gateway and Bastion Host TF Configs

Lecture 176 Step-07: Execute TF Commands and Verify Resources

Lecture 177 Step-08: Destroy Resources

Section 33: Terraform Modules – Use Public Registry Module

Lecture 178 Step-00: Terraform Modules – Overall Introduction

Lecture 179 Step-01: Understand Terraform Modules and its features

Lecture 180 Step-02: Create VNET Module and reference it in VMNIC Resource

Lecture 181 Step-03: Execute TF Commands, Verify VNET, Subnet and Access Sample App

Lecture 182 Step-04: Taint Child Module Resources and Clean-Up

Section 34: Terraform Azure Static Website

Lecture 183 Step-01: Create Static Website manually using Azure Storage Account

Lecture 184 Step-02: Create TF Configs for Static Website Automation

Lecture 185 Step-03: Execute TF Commands, Verify Static Website and CleanUp

Section 35: Terraform Modules – Build Local Terraform Module

Lecture 186 Step-01: Understand about Child Modules and Create it

Lecture 187 Step-02: Create Root Module TF Configs

Lecture 188 Step-03: Execute TF Commands, Verify and CleanUp Static Website created

Lecture 189 Step-04: Understand Terraform get command

Section 36: Terraform Modules – Publish to Terraform Public Registry

Lecture 190 Step-01: Create Git Repo and Commit Static Website TF Module Files and Create 1.

Lecture 191 Step-02: Publish the Module to Terraform Public Registry and Verify

Lecture 192 Step-03: Create Root Module and call public registy module newly published and t

Lecture 193 Step-04: Learn Module Management in Public Registry and Module Versioning

Section 37: Terraform Module Sources

Lecture 194 Step-01: Implement Terraform Module Sources – Multiple Options

Section 38: Congratulations !!!

Lecture 195 Congratulations !!!

Infrastructure Architects or Sysadmins or Developers who are planning to master Terraform from Real-World perspective on Azure Cloud,Any beginner who is interested in learning IaC Infrastructure as Code current trending tool Terraform,Anyone who want to implement IaC DevOps on Azure DevOps using Build and Release Pipelines

Course Information:

Udemy | English | 30h 30m | 20.24 GB
Created by: Kalyan Reddy Daida | DevOps & SRE Architect on AWS, Azure & Google Cloud Platforms

You Can See More Courses in the IT & Software >> Greetings from CourseDown.com

New Courses

Scroll to Top