AWS DevOps Course Outline
Introductionto Devops
Define SDLC models – Waterfall and Agile
Define DevOps, Why DevOps?
DevOps Principles
DevOps Stages
DevOps Lifecycle, Work Flow
DevOps Terminologies and goals
DevOps Tools
Configuration Management Tools
Continuous Integration and Deployment
LINUX
Introduction
Installation
Linux Basic Commands
Linux file system
Understanding of permissions and storage in linux
User and group management
Virtual box & VMWare Workstation.
Introduction about log messages, log monitoring commands
Linux CronJobs calling Bash Scripts.
GIT
Version Control System with Types
Git Introduction
Installation of Git on windows and linux platforms
Configuration of Git
Local Repository
Initializing Git Repository
Git Basic Example
Git Tag
Git branch
Git Merge
Git Stash
Git Revert
Git Diff
Git Clone
Securing Git using ssh-keys
Git Reset
Git GC / Prune
Git Remote Repository
Git Logs
Git Command Alias
Difference between CVCS and DVCS
Managing GIT and GITHUB
Connect GIT to various platforms like Jenkins Ansible etc.
DOCKER
Introduction to Docker
Install & Setup Docker on Linux
Remove, Downgrade, Upgrade
Storage & Logging driver
Docker Registry
Docker Images
Docker Containers Lifecycle and CLI Monitoring
Docker Diagnose
Dockerfile copy vs add, write dockerfile like professional
Docker Compose
Docker Compose & Swarm
Docker Stack
Swarm Backup and Restore (Manager)
Docker Networking and its management
Docker Services
Docker Data Volume
Docker Jenkins
Docker Swarm vs Kubernetes
Docker Alpine, CentOS, Ubuntu Images.
Port Binding
Detached and Foreground Mode
CE vs EE.
Containers vs Virtual Machienes.
Docker Alpine, CentOS, Ubuntu Images.
Introduction to AWS
What is cloud computing?
Types of models in cloud
Difference between Iaas | Paas | Saas
What is public, private and hybrid cloud.
Understanding of IAM
Understanding of EC2
Understanding of Load Balancer
Auto Scaling
Understanding of RDS
Understanding of Route53
Understanding of Volumes (EBS, S3)
Introduction to VPC
Amazon Machine Image (AMI)
Virtualization
AWS Global Infrastructure
Security Groups in AWS
Instance Store
Introduction to Kubernetes
Introduction to Kubernetes
Kubernetes overview
Setup Kubernetes
Kubernetes concepts – POD’s | ReplicaSets | Deployments
YAML Introduction
Networking in Kubernetes
Microservices Architecture
Services
Understanding Pods
DaemonSets
Scaling Application
Namespaces in Kubernetes.
Kubernetes Management Tools.
Managing Rolling updates with Deployments.
Storage Overview.
Troubleshoot Kubernetes Cluster.
Checking Cluster & Node Logs.
Monitoring using Prometheus and Grafana
Objectives:
Understand Continuous Monitoring
Use Prometheus to monitor services
Create an alerting mechanism using Prometheus
Deploy Grafana dashboards to visualize data
Integrate Prometheus and Grafana to monitor a full pipeline
Topics:
Introduction to Prometheus and Grafana
Prometheus and Grafana Setup
Monitoring using Prometheus
Dashboard Visualization using Grafana
Creating a Dashboard to monitor the Pipeline
Hands On:
Monitoring Service using Prometheus
Alerting using Prometheus
Grafana Dashboards
Monitoring a Pipeline
Introduction to Nagios
Installation and updates
Administration (checking system status, managing users, cloning user accounts)
Managing plugins
Understanding of dashboards
Monitoring windows machines
Monitoring Linux machines
Running auto discovery jobs
Managing notifications
Scheduling downtime
Introduction to Python
Understanding of python rich data-types as Numbers, Strings, Lists, Tuples, Dictionaries Sets.
Introduction to Python Operators and their Precedence.
Understanding of Control Flow of programs with Flow charts, Algorithms and
Control Statements (if-else, nested if-else).
Python Functions in deep to make code portable and reusable
Python Closure and Decorator to decorate any boring function to impressive Function.
Python Loops (For and While) to make interactive code as well as simply complex Code.