Aws Fargate Devops: Autoscaling With Terraform At Practice
Last updated 9/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 1.19 GB | Duration: 2h 29m
Last updated 9/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 1.19 GB | Duration: 2h 29m
Learn to deploy, scale, and optimize any web application or worker on AWS ECS Fargate using Terraform, at real examples
What you'll learn
Web application deployment at AWS ECS Fargate using terraform
Auto scaling AWS Fargate policies: predefined auto scaling , step auto scaling, auto scaling based on custom CloudWatch metrics
Terrafom as tool for creating and managing auto scaling
AWS Fargate usage cases and cost optimizations
Requirements
Active AWS account
Some active web domain
AWS basic conceptions, e.g VPC, EC2, subnets, security groups…
AWS ECS basics
Terraform basics
Basic knowledge at using docker and web programming
Description
What you'll learn:How to deploy Web API application and SQS worker at AWS Cloud using AWS Fargate and TerraformAWS ECS base components and how to deploy them using TerrafomWhat is autoscaling and how it works at AWS FargateHow to create autoscaling policies using target metric values + TerraformHow to create autoscaling policies using predefined step increments + CloudWatch alarms + TerrafomHow to create autoscaling policy based on a custom CloudWatch metric for scaling workersHow to use AWS Fargate wisely - CPU architectures, savings plans, and hybrid Fargate Spot systems as strategies for for cost reductionRequirements:Active AWS accountSome active web domainBasic knowledge at using docker and web programmingBasic knowledge at TerraformAWS basic conceptions, e.g VPC, EC2, subnets, security groups…AWS ECS basics.Short description:This course is designed to guide you through the practical implementation of autoscaling using Terraform and AWS Fargate. It discovers how to optimize resource use effectively and ensure seamless application performance, all while managing costs wisely.COURSE STRUCTURE:The course consists of 5 sections:In the 1st section we will create a test web application and test worker, forming the lab environment for hands-on auto scaling practice. No prior knowledge of those technologies are required.In the 2d section we will create a base AWS infrastructure - all stuff related to the network, and additional services required for our lab environment - ALB, SNS, SQS, CW. Finally we will configure the real domain for our application using Route 53 and CM. Almost all that would be done rather fast, as we will be using ready terrafom modules.The 3d section focuses on AWS Fargate. Here, we'll explore the core components of AWS Fargate and deploy our test API application, working towards achieving our desired final architecture.The 4th section is the heart of our course, where we'll dive deep into autoscaling. We'll explore various autoscaling strategies, including target metric values and predefined step increments using CloudWatch alarms. You'll learn to work with CPU and memory utilization metrics and even create an autoscaling policy based on a custom CloudWatch metric for scaling workers.In the final, 5th section, we'll discuss the costs involved with AWS Fargate, compare it with EC2 pricing and discuss how to navigate via Fargate limitations. You'll learn strategies to use this technology wisely, ensuring your expenses stay low while maximizing its benefits. We'll cover topics such as CPU architectures, savings plans, and hybrid Fargate Spot systems. Who this course is for:Anyone who is interested at autoscaling or who is responsible for Web resources:Software engineerDevOpsAdminCTOCEO
Overview
Section 1: Introduction
Lecture 1 Introduction
Section 2: Flask test web application and worker
Lecture 2 Flask app - local environment
Lecture 3 Flask app - code overview, how application works
Section 3: Base AWS infrastructure deployment using Terraform
Lecture 4 Terraform installation with tfenv
Lecture 5 AWS profile and terrafrom configuration
Lecture 6 Running base terraform scripts - essential introduction
Lecture 7 Applying terraform - Part 1: pre init, network and sns terrafrom modules
Lecture 8 Applying terraform - Part 2: sqs terrafrom module, testing worker mode
Lecture 9 Applying terraform - Part 3: ALB terrafrom module and AWS Certificate Manager
Lecture 10 Applying terraform - Part 4: AWS ALB terraform source code
Lecture 11 Applying terraform - Part 5: General architecture scheme and request workflow
Lecture 12 REMEMBER TO DESTROY ENV IN THE END - BELOW IS THE ARTICLE HOW TO DO IT PROPERLY
Section 4: Application deployment at AWS ECS Fargate using Terraform
Lecture 13 What is AWS Fargate?
Lecture 14 Lecture 2: Build docker image and push it to the AWS ECR
Lecture 15 Fargate terraform module overview - Part 1: ecs cluster, network configurations
Lecture 16 Fargate terraform module overview - Part 2: IAM roles
Lecture 17 Fargate terraform module overview - Part 3: ecs service
Lecture 18 Fargate terraform module overview - Part 4: task definition template
Lecture 19 Target group terraform module and implementation code - Part 1
Lecture 20 Target group terraform module and implementation code - Part 2
Lecture 21 Lecture 6: AWS Fargate - apply terraform code, aws console, inside container
Section 5: Fargate autoscaling
Lecture 22 Autoscaling types and use cases being covered at current course
Lecture 23 When should we use autoscaling?
Lecture 24 Autoscaling terraform module with predefined CPU and RAM target metrics
Lecture 25 Testing predefined CPU and memory autoscalining at practice
Lecture 26 Target tracking autoscaling surprises
Lecture 27 Step autoscaling terraform module - part 1
Lecture 28 Step autoscaling terraform module - part 2
Lecture 29 Applying autoscaling with predefined custom SQS metric, testing worker
Lecture 30 Terraform code autoscaling with predefined custom SQS metric
Lecture 31 Testing autoscaling with predefined custom SQS metric at practice
Lecture 32 Autoscaling summary
Section 6: Fargate costs and how to optimize AWS expenditures
Lecture 33 How much Fargate costs, price comparison with EC2
Lecture 34 CPU architecture and saving plans
Lecture 35 Fargate spot
Lecture 36 Cost optimization recommendations or when AWS Fargate is a bad choice
Section 7: Bonus Section
Lecture 37 Bonus Lecture
Anyone who is interested at AWS Cloud, AWS Fargate and autoscaling