DevOps on AWS

  • 00Days
  • 00Hours
  • 00Minutes
  • 00Seconds

FEE

PREREQUISITES:

  • Basic IT (Information Technology) Knowledge

  • An understanding of networking concepts

  • Hardware /Software required

  • PC /Laptop with minimum 08 GB RAM and Virtualisation features

  • Oracle Virtual Box or VMWare

Who can join:

  • This course is for people and teams who want to learn DevOps foundation from basics to intermediate level.

  • Developers / Operations Engineers

  • IT Project Team

  • IT Students

Fundamental Introduction

  • IAC
  • CICD
  • Containerization
  • Orchestration

Continuous Integration Continuous Delivery (CICD)

a) Git Introduction

  • Version Control System
  • Git Introduction
  • Installation of Git
  • Configuration of Git
  • Local Repository
  • Initializing Git Repository
  • Git Basic Example
  • Git branch, Git Merge
  • Git Diff
  • Git Clone
  • securing Git using ssh-keys
  • Git Remote Repository
  • Git Logs

b) Jenkins

  • Introduction
  • Download and Install Jenkins
  • Jenkins Configuration
  • Jenkins Plugins 
  • Security Management
  • Freestyle jobs
  • Integration of Jenkins with GIT
  • Build Web via Code 
  • Building a Jenkins Pipeline (CI/CD)

Containerization

a) Docker

  • Introduction to Docker
  • Install & Setup Docker on Linux
  • Remove, Downgrade, and Upgrade
  • Storage & Logging driver
  • Docker Registry
  • Docker Images
  • Docker Containers
  • Docker Diagnose
  • Docker file
  • Docker Compose
  • Docker Swarm
  • Docker Stack
  • Docker Networking
  • Docker Services
  • Docker Volume
  • Docker Swarm vs Kubernetes

b) Elastic Container Service (ECS)

  • Introduction
  • Security
  • Monitoring
  • Capacity Provider
  • Dynamic Port mapping
  • Container Insight

Orchestration

a) Kubernetes

Module 1: Introduction to Kubernetes

  • Introduction to containerization
  • Overview of Kubernetes and its Features
  • Understanding Kubernetes architecture
  • Setting up a Kubernetes cluster

Module 2: Kubernetes Pods and Deployments

  • Understanding Kubernetes Pods
  • Working with container images
  • Creating and managing Kubernetes Deployments
  • Managing replicas and scaling applications

Module 3: Kubernetes Services and Networking

  • Understanding Kubernetes Services
  • Working with Kubernetes networking
  • Configuring load balancing for applications
  • Creating Kubernetes Ingress resources

Module 4: Kubernetes Storage

  • Understanding Kubernetes Pods
  • Working with container images
  • Creating and managing Kubernetes Deployments
  • Managing replicas and scaling applications

Module 5: Kubernetes Configuration and Secrets

  • Working with Kubernetes ConfigMaps
  • Using Kubernetes Secrets for sensitive information
  • Managing configuration for applications
  • Deploying applications with different configurations

Module 6: Kubernetes Security

  • Understanding Kubernetes security features
  • Configuring Kubernetes Network Policies
  • Using Kubernetes Secrets for secure data management

Module 7: Kubernetes Monitoring and Logging

  • Understanding Kubernetes logging
  • Troubleshooting Kubernetes applications

Module 8: Kubernetes Advanced Topics

  • Using Kubernetes Horizontal Pod Autoscaling (HPA)
  • Configuring Kubernetes Cluster Autoscaling
  • Running stateful applications with Stateful Sets
  • Using Kubernetes Operators for application management

Elastic Kubernetes Service

  • Introduction
  • Security
  • Logs
  • Hierarchy

Helm

Module 1: Introduction to Helm

  • Introduction to package managers and why they are useful
  • Overview of Helm and its features
  • Understanding the structure of a Helm chart
  • Installing and setting up Helm

Module 2: Helm Charts

  • Creating and managing Helm charts
  • Understanding chart dependencies
  • Working with chart values and templates
  • Managing chart upgrades and rollbacks

Module 3: Chart Repositories

  • Understanding chart repositories
  • Creating and managing local chart repositories
  • Using public chart repositories

Module 4: Helm in Kubernetes

  • Using Helm to deploy applications to Kubernetes
  • Understanding Helm releases and their lifecycle
  • Using Helm hooks to execute pre- and post-deployment actions

Infrastructure As Code (IAC):

a) Terraform:

Module 1: Introduction to Terraform

  • Introduction to Infrastructure as Code
  • Overview of Terraform and its features
  • Understanding Terraform syntax and configuration files
  • Setting up Terraform on your computer 

Module 2: Terraform Basics

  • Defining infrastructure with Terraform
  • Working with Terraform providers
  • Creating and managing Terraform resources
  • Understanding Terraform state management

Module 3: Terraform Modules

  • Creating and using Terraform modules
  • Managing Terraform module dependencies
  • Using Terraform modules from public repositories

Module 4: Terraform in the Cloud

  • Deploying infrastructure with Terraform in AWS
  • Working with Terraform workspaces for multi-environment deployments
  • Using Terraform remote state for sharing state across teams

Module 5: Terraform Best Practices

  • Understanding Terraforms best practices
  • Using Terraform CLI commands effectively
  • Writing reusable Terraform code with modules and variables
  • Working with Terraform output values

b) Cloud Formation:

  • Introduction to JSON/YAML, how to use Visual Studio, Working on Parameters & Resource Section using a given template
  • How to find Resource Property in AWS, write 1st template using CFT
  • Drift Detection, Change Stack, Update Stack
  • Parameter Section with S3 & VPC
  • How to deploy VPC using Cloud Formation
  • How to deploy EC2 using Cloud Formation
  • Nested Stack
  • Output with Import/Export
  • Condition Section

6. Configuration Manager

a) Ansible

  • About Ansible
  • How to Install Ansible
  • Configuring SSH and Sudo for Ansible
  • The Ansible Configuration File
  • Setting Up the Ansible Inventory
  • The Ansible Command
  • The Shell and Command Modules
  • Ansible course summary

b) Chef

Module 1: Introduction to Chef

  • Introduction to configuration management
  • Overview of Chef and its features
  • Understanding the Chef’s architecture
  • Setting up Chef on your computer

Module 2: Chef Cookbooks

  • Creating and managing Chef cookbooks
  • Understanding Chef resources and their properties
  • Writing Chef recipes and using Chef templates
  • Using Chef cookbooks to manage system configurations

Module 3: Chef Nodes and Roles

  • Understanding Chef nodes and their properties
  • Working with Chef roles for defining system configurations
  • Using Chef search to discover nodes in your infrastructure
  • Managing node attributes with Chef

Module 4: Chef in the Cloud

  • Using Chef to manage infrastructure in Aws
  • Creating and managing Chef server instances in the cloud

Module 5: Chef Best Practices

  • Understanding Chef best practices
  • Using Chef CLI commands effectively
  • Writing reusable Chef code with cookbooks and templates

c) Puppet

Module 1: Introduction to Puppet

  • Introduction to configuration management
  • Overview of Puppet and its Features
  • Understanding the Puppet architecture
  • Setting up Puppet on your computer

Module 2: Puppet Manifests

  • Creating and managing Puppet manifests
  • Understanding Puppet resources and their attributes
  • Writing Puppet classes and using Puppet templates
  • Using Puppet to manage system configurations

Module 3: Puppet Nodes and Environments

  • Understanding Puppet nodes and their properties
  • Working with Puppet environments for defining system configurations
  • Using Puppet Hiera for managing configuration data
  • Managing node attributes with Puppet

Module 4: Puppet in the Cloud

  • Using Puppet to manage infrastructure in AWS
  • Creating and managing Puppet master instances in the cloud

Module 6: Puppet Best Practices

  • Understanding Puppet best practices
  • Using Puppet CLI commands effectively
  • Writing reusable Puppet code with classes and templates