
Build production-grade AWS infrastructure with Terraform from scratch, spanning a three-tier architecture, VPC, subnets, application load balancer, auto scaling, DB instances, DNS, SSL, and Slack-based ops visibility.
Explore the production infrastructure architecture in Ireland, building a VPC with six subnets across two availability zones for three tiers—public, private, and DMZ—secured by security groups.
Configure a production network by creating a VPC with a 192.168.0.0/19 IPv4 CIDR, then split into six subnets with /23 masks, including DMZ, private, and public segments.
Learn how to create and attach an internet gateway to a VPC, configure route tables for public and private subnets, and deploy NAT gateways for internet access.
Enable auto-assign public IP on your public subnets in the VPC settings so EC2 instances launch with a public IP by default, ensuring internet accessibility.
Launch and configure your first EC2 instance by selecting Amazon Linux, choosing the instance type, setting up networking, security groups, a key pair, tagging, and a public IP.
Learn how to connect to a newly created EC2 instance using PuTTYgen, generate and save a private key, log in with the key, verify internet connectivity, and complete basic configuration.
Review the AWS network setup, including subnets, a DMZ with public and private subnets, and an internet gateway. Validate connectivity by routing tables and accessing an instance.
Create an identity and access management role for an EC2 instance to grant permissions to access resources without embedding credentials, following least privilege, then attach a granular policy as needed.
Launch a production Amazon Linux app server in a public subnet with a public IP, open http port 80, and tag for environment and name while enabling delete on termination.
Connect to the application server via ssh using the public IP and private key, install and start httpd, verify index page, and copy app from S3 to new instances.
Upload a sample app to an S3 bucket, grant EC2 read access with a custom IAM policy, and download the app for deployment.
Launch an application server with IAM roles, configure inbound and outbound port rules, install BHB, deploy a Hello World web application from S3 to EC2, and automate with user data.
Launch a second application server in public subnet two using the AMI, instance type, security group, and user data. Register both instances with an elastic load balancer to distribute traffic.
Explore the three AWS load balancer options—classic, network, and application—focusing on application load balancer routing, listeners, target groups, and health checks for scalable microservice architectures.
Configure an application load balancer with advanced health checks, target groups, and security groups; monitor traffic and latency with CloudWatch and set alerts, then verify traffic routing via dns.
Clean up the public security group by restricting inbound traffic to the load balancer on port 80 and outbound to the public subnet, preventing direct browser access.
Learn to set up an application load balancer, create a server, configure listeners, listener rules, and target groups, attach security groups, and validate connectivity via the load balancer DNS.
Learn how auto scaling groups manage production capacity by setting minimum, desired, and maximum sizes, linking launch configurations to a target group, and using scaling plans with CloudWatch alarms.
Create a launch configuration for an auto scaling group in production, enabling detailed monitoring, attach storage, select security groups, and configure load balancer traffic before creation.
Configure a basic auto scaling group with two instances in public subnets, linked to a target group and application load balancer health check, using oldest instance termination policy.
Configure auto scaling group scaling policies with scale up and scale down alarms driven by utilization thresholds, and create topics to trigger notifications for scaling events, service latency, and termination.
Set up SNS topics and CloudWatch alarms for target groups to trigger scale up on high latency and scale down when latency normalizes, with email notifications for alerts.
Recap the ASG setup, including launch configurations, scaling policies, cloudwatch alarms, and SNS topics, then validate integration with the load balancer by launching new instances and monitoring email alerts.
Configure a private security group for database servers to allow port 3306 traffic only from application servers in private subnets, blocking internet access.
Create a MySQL database in Amazon RDS and place it in private subnets, apply security groups, and ensure internal access via the default database port.
Configure an ACM SSL certificate for your domain, validate via email, and attach it to a new HTTPS listener on the load balancer to route traffic to the target group.
Configure a Route 53 public hosted zone for your domain, update name servers at your DNS provider, and create a subdomain alias record pointing to your ALB, with DNS propagation.
Discover how Terraform stores infrastructure as code, uses versioned configurations to share with teams, and applies planned changes to reach the desired state across production environments.
Install terraform on Windows by downloading the latest version, extracting the executable, placing it in program files, and adding its path to environment variables; verify in the command line.
Configure the AWS CLI by creating an IAM Terraform user with programmatic access, then set up a dedicated profile using its access key and secret key.
Configure a Terraform project by creating a tf file, selecting an AWS provider with region and profile, and securing credentials locally. Run terraform init to download plugins and prepare resources.
Create and configure an application load balancer with Terraform, using variables for security groups and dmz subnets, to support production deployment.
Configure an AWS application load balancer with Terraform, including target groups, listeners, and health checks, then validate the setup with a plan and apply.
Configure a launch configuration with Terraform to attach to an auto scaling group, specifying instance role, key name, security groups, and user data, then run plan and apply to deploy.
Learn to create and configure an AWS auto scaling group with Terraform, wiring it to a load balancer and target group, setting subnets, termination policies, and a launch configuration.
Create and configure an ASG using Terraform, adding a name tag, and validate instances with a load balancer target group, then reproduce production environments by changing variables.
Learn to use Terraform to create CloudWatch alarms and scaling policies for a scaling group, with SNS notifications triggering scale up or down by CPU utilization thresholds.
Explore how to set up terraform, configure access keys, run plan and apply, and automate infrastructure with scaling groups, scaling policies, and cloud watch alarms.
Create a Slack workspace, configure an incoming webhook, and use a lambda function to post production alerts from your Terraform-managed AWS infrastructure to a channel.
Configure a serverless lambda function from a Slack blueprint to post Slack notifications whenever cloud watch alarms trigger, secured with a customer-managed encryption key and IAM controls.
Conclude the course by revisiting how to set up production infrastructure and reform, invite questions, and encourage sharing to spread cloud knowledge.
If you are looking to boost your career in the field of AWS then you are in the right spot, In this course you will learn how to apply the AWS Concepts to build your Infrastructure from scratch which can handle any production workload and can scale to any number of customers.
I have created this course to help students who are new to AWS understand how the AWS Services work together to host a web application using best practices and a secure 3 tier architecture.
You will learn the most trending and high in demand skill of managing "Infrastructure as Code" using Terraform from basics and I will show you step by step process of how to write your infrastructure as code by creating all the components in our infrastructure using Terraform.
At the end of the course I have also included "Devops using Slack" section which gives you an idea of how you can get visibility in you cloud by using Cloudwatch Alarms, Scaling Policies and SNS topics posting messages to slack.
This course is a complete hands on and I have attached the required resources at the respective sections.