AWS
The AWS training is a bootcamp on AWS to prepare candidates on how to architect, develop and deploy secure and robust applications on AWS technologies. After finishing the training, the candidates will be able to design available, cost-efficient, fault-tolerant, scalable and distributed systems on AWS. The critical goal of the course is to make the candidates hands on• Using compute, networking, storage, and database AWS services.
• Ability to identify and define technical requirements for an AWS-based application.
• Developing AWS Applications.
• Designing resilient architectures in AWS.
• Defining performant architectures in AWS.
• Designing Fault Tolerant architectures in AWS.
• Specifying secure applications and architectures in AWS.
• Designing cost-optimized architectures in AWS.
• Defining operationally excellent architectures in AWS.
Certification
After finishing the training, the candidates will have the sufficient knowledge to pass the following CertificationsAWS Certified Solution Architect − Professional
AWS Certified DevOps Engineer (Professional) − for top graduates
Class Schedule Overview
- Introduction
- Introduction to the course
- Objectives of the course
- Linux Environment
- Overview of Linux
- Necessity of Linux to the Career Path and Industries
- Linux flavors
- Setting up Linux Environment
- Installing Oracle Virtual box
- Installing Linux
- Linux Deep Dive
- Linux Commands Line
- Using Directories and lists
- Create, Move and Delete
- Installing Packages
- Archiving files and listing data
- Data and Linux storage
- Security and User Types
- Creating Users and Groups
- Permissions
- Temporary Files and Symbolic Links
- Basic Troubleshooting
- Introduction to AWS
- History of AWS
- Sign up to AWS and Different Accounts
- Regions and Availability zones
- Identity and Access Management − IAM
- IAM Introduction
- How IAM works
- Users, Groups and Policies
- Authentication Methods
- Creating users, Security Credentials and MFA
- RBAC and ABAC
- Permission Boundaries
- Policy Evaluation
- IAM Policy Structure
- AWS ARN Structures
- Identity and Access Management
- Use cases for IAM Roles & Policies
- Instance Profile
- Best Practices
- Identity Center
- AWS Cognito
- AWS Organizations
- AWS Control Tower
- Virtual Private Cloud – VPC
- CIDR
- Subnets
- Route tables
- Security groups
- Network Access Control Lists (ACLs)
- Internet Gateways (IGWs)
- Elastic IP (EIP) addresses
- Internet Protocol
- OSI Model
- IP Addressing
- Network,Routers, and Internet
- Reserved, Public vs Private
- Subnetting
- CIDR
- IPV6
- Elastic Compute Cloud – EC2
- Compute Basics
- EBS basics
- AMI
- EC2 Instances
- Key Pairs
- Connecting to a EC2 instance
- EC2 states
- Instance Metadata
- EC2 Lifecycle
- Pricing and Usecases
- Elastic Compute Cloud – EC2
- EC2 Placement Groups
- Auto Scaling
- Types of Auto Scaling
- Launch Configurations
- Auto Scaling group and Policy
- Load Balancer
- Types of ELB
- ELB Listeners
- Sticky Sessions and Health checks
- Target Groups
- Storage
- S3 Storage Classes
- S3 Lifecycle Policies
- Versioning
- Hosting static website
- Bucket Replication
- Bucket Encryption
- Cloud Front
- Edge Locations
- Distribution
- Versioning
- Origins
- Invalidations
- Route 53
- How website comes into browser
- Hosted Zone
- Routing Policies
- Failover Policy
- Records
- SNS
- SNS Overview
- Fanout
- SQS
- Message Lifecycle
- Message Attributes
- Lambda Basics
- Introduction to serverless computing
- Creating, deploying, and managing Lambda functions
- Understanding event-driven architecture
- Lambda Integration
- Integrating Lambda with other AWS services (S3, DynamoDB, API Gateway, etc.)
- Using Lambda with EventBridge for event-driven workflows
- Setting up and managing triggers
- Lambda Function Management
- Versioning and Aliases
- Environment variables and secret management
- CloudWatch Basics
- Introduction to Amazon CloudWatch
- Key concepts: metrics, logs, events, and alarms
- Understanding the CloudWatch dashboard and navigation
- CloudWatch Metrics
- Collecting and viewing metrics for AWS services
- Custom metrics: creating and publishing custom application metrics
- Metric filters and alarms: setting up thresholds and notifications
- CloudWatch Alarms
- Creating and managing CloudWatch Alarms
- Actions based on alarms: notifications, Auto Scaling, and EC2 actions
- CloudTrail Basics
- Introduction to AWS CloudTrail
- Key concepts: trails, events, logs, and insights
- Understanding the CloudTrail console and navigation
- CloudWatch Metrics
- Collecting and viewing metrics for AWS services
- Custom metrics: creating and publishing custom application metrics
- Metric filters and alarms: setting up thresholds and notifications
- Creating and Managing Trails
- Creating a CloudTrail trail
- Configuring trail settings (single-region vs. multi-region)
- Storing CloudTrail logs in S3 and managing log file integrity
- Quiz 2: Day 3 Materials, class lectures and labs
- Lab 1: Create Your First VPC
- Lab 2: Create Two Subnets for the custom VPC
- Lab 3: Connect Your Custom Amazon VPC to the Internet and Establish Routing
- Lab 4: Launch an Amazon EC2 Instance and Test the Connection to the Internet
- Assignment 03 : VPC peering
- Virtual Private Cloud − VPC
- Subnets
- Route tables
- Dynamic Host Configuration Protocol (DHCP)
- Security groups
- Network Access Control Lists (ACLs)
- Internet Gateways (IGWs)
- Elastic IP (EIP) addresses
- Elastic Network Interfaces (ENIs) Endpoints
- VPC Peering
- Network Address Translation
- VPN
- Transit Gateway
- Quiz 3: Day 4 Materials, class lectures and labs
- Lab Exam 1
- Lab 1: Create a New Zone
- Lab 2: Create a Weighted Routing Policy
- Lab 3: Install CloudWatch Unified agent on the EC2 and Monitor through the Dashboard
- Lab 4: Create Topic and Subscription for AWS SNS
- AMI
- Deep Dive into AMI
- Snapshots
- Backup and Storage
- Migration of AMI
- Disaster Recovery
- Backup and Recovery
- Autoscaling to avoid disaster
- Midterm 1 : Week 1 Materials, Lectures, Notes , Labs and Quizzes
- Lab exam 2
- Lab 2: Deploy EC2 from the image
- Lab 3: Create an ELB
- Lab 4: Create Auto Scaling Group
- Lab 5: Launch spot instances
- Assignment 04 : System design
- Cost Management
- Buying Reserve Instance
- Reserve vs On Demand
- Billing dashboard
- Cost Explorer
- Savings Plan
- Quiz 5: Week 2 Day 1 and past Materials, class lectures and labs
- Lab exam 3
- Lab 1: Installing Python IDE and Anaconda with Jupyter Notebook
- Lab 2 : Python Coding practice : Palindrome
- Lab 3 : For loop -> Removing Duplicate numbers from a list
- Assignment 05 : Python program
- AWS Database
- RDS
- DynamoDB
- Redshift
- Arrora
- Elasticache
- Quiz 6: Week 2 Day 2 and past Materials, class lectures and labs
- Lab exam 4
- Lab 1 & 2: writing a json scripts
- Lab 3,4 &5 : Writing
- CloudFormation Template
- CloudFormation
- Intro to IAC
- Intro to CloudFormation Template
- CloudFormation Deep Dive
- Terraform
- Introduction to Infrastructure as Code (IaC)
- Installation and Setup
- Terraform Basics (Providers, Resources, Variables, and Outputs)
- Writing Terraform Configuration Files
- Quiz 7: Week 2 Day 3 and past Materials, class lectures and labs
- Lab exam 5
- Lab 1: Create a python Script
- Lab 2,3: Python scripting for Automation
- Terraform
- State Management and State Files
- Modules and Reusable Code
- Workspaces for Environment Management
- Provisioning and Managing Infrastructure (AWS)
- Remote Backends and Version Control
- Testing and Validation (Terraform Validate, Linting)
- Git Basic
- Understanding version control systems
- Installing and configuring Git
- Basic Git commands: init, clone, add, commit, status, log
- Branching and Merging
- Creating and managing branches: branch, checkout
- Merging branches: merge, rebase
- Understanding merge conflicts and resolving them
- Remote Repositories
- Setting up remote repositories: remote, add, remove
- Pushing and pulling changes: push, pull, fetch
- Managing remote branches
- Collaboration with Git
- Forking and cloning repositories
- Using pull requests and code reviews
- Managing contributions from multiple collaborators
- Microservices Architecture Basics
- Understanding the fundamentals of microservices architecture
- Differences between monolithic and microservices architectures
- Benefits and challenges of adopting microservices
- Designing Microservices
- Principles of designing scalable and maintainable microservices
- Defining service boundaries and data ownership
- Creating APIs and contracts for inter-service communication
- Stateless vs. stateful microservices
- Communication in Microservices
- Synchronous communication: RESTful APIs, gRPC
- Asynchronous communication: messaging queues (RabbitMQ, Kafka)
- Service discovery and service mesh (e.g., Istio, Consul)
- Quiz 9: Week 3 Day 1
- Midterm Q & A − Post exam
- Lab 1 : Installing git
- Lab 2 : Features and branching in git
- Lab : Group
- Introduction to Docker:
- What is Docker and why use it?
- Containers vs. Virtual Machines
- Docker architecture
- Installation and Setup:
- Installing Docker on various operating systems
- Understanding Docker Daemon, Docker CLI
- Basic Docker Commands:
- docker run, docker ps, docker stop, docker start, docker rm
- docker images, docker rmi, docker pull, docker push
- Quiz 9: Week 3 Day 2, Day 1
- Lab 1: Installing Jenkins
- Lab 2 & 3 : CI/CD with git and Jenkins
- Lab : Group
- Docker Images:
- Docker Hub and repositories
- Creating your own Docker images
- Dockerfile syntax and best practices
- Multistage builds Docker Containers:
- Lifecycle of a container
- Running containers in detached mode
- Managing container states and logs
- Inspecting containers
- Quiz 10: Week 3 Day 1-3
- Lab 1 : Writing YAML code
- Lab 2 : Installing Ansible and Connect
- Lab 3 & 4 : Ansible Playbook and YAML
- Lab : Group
- CloudWatch Logs and Metrics
- Setting up Alarms
- Docker Swarm:
- Introduction to Docker Swarm
- Setting up a Swarm cluster
- Deploying services in Swarm
- Scaling services
- Managing and updating a Swarm cluster
- Security Best Practices:
- Securing Docker daemon
- Using Docker Bench for security
- Image vulnerability scanning
- Quiz 10: Week 3 Materials and older lectures
- Lab 1 & 2 : CloudFormation Template
- Lab 3 : Terraform cli
- Lab : Group
- Assignment : CloudFormation and Terraform
- Introduction to Elastic Beanstalk
- Environment Management
- Application Deployment
- Configuration Management
- Scaling and Load Balancing
- Monitoring and Logging
- Security Best Practices
- Quiz 11: Week 4 Day 1 and older lectures
- Lab 1 & 2 : Docker Installation
- Lab 3 : Creating a Docker Image
- Lab 4 : Creating DockerFile
- Introduction to ECS
- ECS Architecture
- Clusters
- Task Definitions
- Tasks
- Services
- EC2 Launch Type
- Fargate Launch Type
- Networking
- Service Discovery & Load Balancing
- Quiz 13: Week 4 Day 1-2
- Lab 1 : Installing Kubernetes
- Lab 2 : Creating Kubernetes Clusters
- Lab 3 : Group
- Jenkins
- Installation and Setup
- Pipeline Concepts
- Declarative vs. Scripted Pipelines
- Plugin Management
- Integration with Version Control Systems
- Building and Testing
- Notifications and Reporting
- Security Best Practices
- Scaling Jenkins (Master/Slave Architecture)
- Managing Credentials
- Quiz 14: Week 4 Day 1-3
- Lab 1 : Creating CI/CD Pipeline
- Lab 2 : Installing Nagios
- Lab 3 : Installing Log Monitoring services
- Jenkins
- Building and Testing
- Notifications and Reporting
- Security Best Practices
- Scaling Jenkins (Master/Slave Architecture)
- Managing Credentials
- Quiz 15: Week 4 Day 1-4
- Lab 1 : Creating CI/CD Pipeline
- Midterm 2 : Q & A − before exam
- GitHub Actions:
- Introduction to Workflows
- Action Configuration
- YAML Syntax for Workflows
- Integration with GitHub Repositories
- Event Triggers
- Actions and Jobs
- Secrets Management
- Matrix Builds
- Reusable Workflows
- Monitoring and Logging
- Security Considerations
- Midterm 2: Week 2-3 , part of week 1-2
- Lab exam
- GitHub Actions:
- Overview of Kubernetes
- Understanding Kubernetes architecture
- Setting up a Kubernetes cluster on AWS EC2
- Creating EC2 instances for master and worker nodes
- Installing Kubernetes components (kubeadm, kubelet, kubectl)
- Initializing the Kubernetes cluster
- Quiz 15: Week 5 Day 1 and AWS Midterm 2 : Q & A − post exam
- Lab 1 : Creating Elastic Beanstalk
- Lab 2 : Creating Elasticache
- Lab : group
- Core Concepts and Components
- Nodes, pods, and clusters
- Understanding Kubernetes objects (Pods, Services, Deployments, etc.)
- Hands-on: Creating and managing pods
- Quiz 16: Week 5 Day 1 and Devops
- Lab 1: Creating Backups
- Lab 2: Configure CloudTrail
- Core Concepts and Components
- Networking in Kubernetes
- Kubernetes networking model
- Services, Ingress, and network policies
- Hands-on: Creating and managing services
- Quiz 15: Week 5 Day 1 and AWS
- Lab 1 : Installing Prowler and create a full Scan with Prowler
- Lab 2 : Group
- Kubernetes
- Quiz 16: Week 5 Day 1 and AWS
- Lab 1 : Installation of IDS and IPS
- Kubernetes
- Quiz 17: Week 5 all classes
- Lab : Group
- Lab Exam
- kubernetes
- Quiz 18: Week 5 Day 1 and AWS, , DevOps, Security
- Lab : Group
- Lab Exam
- AWS Snowball
- AWS Athena
- AWS Whitepapers
- AWS Marketplace
- Quiz 19: Week 5 Day 2 and AWS, DevOps, Security
- Quiz 19: Week 5 Day 2 and AWS, DevOps, Security
- Lab Exam
- DDOS attacks
- More in Security
- Troubleshooting Strategies
- Quiz 20: Week 5 Day 3 and , AWS, DevOps, Security
- Lab : Group
- Lab Exam
- AWS and DevOps overview
- Preparing for Certifications
- Summary
- Final Exam : All the topics covered in AWS, DevOps and Security
