Oreilly - VPC Solutions with EC2 for Production: AWS with Terraform
by Niyazi Erdoğan | Publisher: Packt Publishing | Release Date: April 2019 | ISBN: 9781838551247
Learn Terraform with AWS, infrastructure-as-code! Develop Scalable, Highly-Available Architecture with an AWS Architect!About This VideoAll you need to take the course is any Python interpreter and an AWS account with some general knowledge on AWS. Theoretical Knowledge on VPC and EC2 Concepts would be nice but not necessary!In DetailLearn to implement production-ready infrastructures with AWS and Terraform today with an AWS Certified Solutions Architect!You will learn not only how to implement Terraform code, but will also how to implement an AWS Well-Architected Framework-recommended deployment model that will be highly-available, scalable, fault-tolerant, and resilient!In this course, we will start by exploring the tools we'll need throughout the course. You will need an IDE and an AWS account is also necessary. You will be shown how to get one if you do not already have one. We will set up our environment variables for Terraform deployments and also configure our IDE to use Terraform efficiently by installing a Terraform plugin. We will start off by implementing our remote state and obtaining a key pair, which we will use to connect to the instances we launch. Once we get these done, we will first create the Virtual Private Cloud (VPC) environment. We'll also attach an Internet Gateway (IGW) to our VPC for use with public subnets, so their resources will be able to access and receive public internet traffic. We will proceed to implement our Launch Configurations for the public and private EC2 instances we will launch through Auto-Scaling Groups. We will use Target Tracking Scaling to help us use, scale, and manage our EC2 instances all by itself.All the codes and supporting files for this course are available at: https://github.com/PacktPublishing/VPC-Solutions-with-EC2-for-Production-AWS-with-TerraformDownloading the example code for this course: You can download the example code files for all Packt video courses you have purchased from your account at http://www.PacktPub.com. If you purchased this course elsewhere, you can visit http://www.PacktPub.com/support and register to have the files e-mailed directly to you.
- Chapter 1 : Introduction
- Welcome 00:01:15
- About This Course 00:02:50
- What We Will Build in This Course 00:04:36
- What Do You Need For This Course 00:02:15
- Chapter 2 : Preparing The Environment for Development
- Create an AWS Account If You Don't Already Have It! 00:09:05
- Logging in to AWS Console and A Walkthrough 00:09:13
- Let's Create Our AWS Credentials! 00:11:13
- Chapter 3 : Windows Environment Setup
- Installing Terraform and IntelliJ Plugin 00:04:38
- Installing AWS SDK (CLI) 00:04:20
- Preparing AWS Credentials for Environment 00:02:57
- Chapter 4 : MacOS Environment Setup
- Installing Terraform and IntelliJ Plugin 00:03:16
- Installing AWS SDK (CLI) 00:03:01
- Preparing AWS Credentials for Environment 00:02:00
- Chapter 5 : Terraform Refresher
- Terraform Crash Course 00:18:39
- Chapter 6 : Virtual Private Cloud (VPC) Network Infrastructure with Terraform - Part 1
- Creating a Key Pair for EC2 Instances 00:01:36
- Creating a S3 Bucket for Terraform Remote State 00:01:15
- Creating Our Project 00:02:24
- Defining Our Remote State Configuration 00:03:09
- Creating a Virtual Private Cloud (VPC) 00:06:26
- Creating Public Subnets 00:05:15
- Creating Private Subnets 00:03:49
- Chapter 7 : Virtual Private Cloud (VPC) Network Infrastructure with Terraform - Part 2
- Creating a Route Table for Public Routes 00:00:56
- Creating a Route Table for Private Routes 00:00:45
- Associating Route Tables with Subnets 00:05:08
- Creating an Elastic IP for NAT Gateway 00:02:12
- Creating the NAT Gateway and Adding to Route Table 00:03:56
- Create an Internet Gateway (IGW) and Adding to Route Table 00:02:49
- Executing Terraform and Outputting Variables for Remote State Reading 00:16:17
- Chapter 8 : Elastic Compute Cloud (EC2) with Terraform - Part 1
- Defining Backend and Reading Remote State for Layer 1 Infrastructure 00:06:50
- Creating Security Groups for EC2 Instances and ELB 00:10:45
- Creating an IAM Role for EC2 Instances 00:05:17
- Creating an IAM Role Policy for EC2 Instances 00:04:20
- Creating an IAM Instance Profile 00:01:30
- Dynamically Using Latest AMI for EC2 Instances 00:01:50
- Launch Configuration for Private EC2 Instances 00:10:25
- Launch Configuration for Public EC2 Instances 00:03:18
- Chapter 9 : EC2 High Availability, Scalability and Fault Tolerance with Terraform
- Creating a Load Balancer for Public Web App Tier 00:04:59
- Creating a Load Balancer for Private Backend App Tier 00:03:42
- Creating an Auto-Scaling Group for Private EC2 Instances 00:05:58
- Creating an Auto-Scaling Group for Public EC2 Instances 00:03:54
- Creating an Auto-Scaling Policy for Public EC2 Instances 00:05:16
- Creating an Auto-Scaling Policy for Private EC2 Instances 00:01:42
- Creating a SNS Topic for Auto-Scaling Notifications 00:01:34
- Creating a SNS Subscription for SMS to Receive Auto-Scaling Notifications 00:01:49
- Defining Auto-Scaling Notifications for Triggering on Certain Events 00:03:05
- Reviewing Our Code and Infrastructure Before Execution 00:15:07
- Providing Tfvars, Planning and Executing Everything 00:09:00
- Testing Out The Whole Architecture and Verifying Our Setup 00:20:54
- Chapter 10 : Wrapping Up