Devops for Advance Level
Topics
DevOps TOC (40 Hrs)
Overview of DevOps
- Introduction to DevOps
- Benefits of working in a DevOps environment
- DevOps Lifecycle
- DevOps Stages
- DevOps Delivery Pipeline
Version Control with Git
Topics
- Version Control
- Git Introduction
- Git Installation
- Commonly used commands in Git
- Working with Remote repository
Hands-on Projects
- Git Common Commands
- Working with Remote Repository
Skills You will Learn
- Tracking and managing changes to code
- Source code management
- Tracking and saving changes in files
Git, Jenkins & Maven Integration
Topics
- Branching and merging in Git
- Merge Conflicts
- Stashing, Rebasing, Reverting, and Resetting
- Git Workflows
- Introduction to Maven
- Maven Architecture
- Introduction to Continuous Integration
Hands On
- Branching and Merging
- Merge Conflicts
- Stashing, Rebasing, Reverting, and Resetting
- Configuring Maven
Skills You will Learn
- Creating multiple branches in a repository
- Build and manage projects
- Automating Continuous integration
Continuous Integration using Jenkins
Topics
- Jenkins Architecture
- Plugin Management in Jenkins
- Jenkins Security Management
- Notification in Jenkins
- Jenkins Master-slave architecture
- Jenkins Delivery Pipeline
- Jenkins Declarative pipeline
Hands-on
- Create pipeline view
- Adding Slave node in Jenkins
- Build Pipeline project
Skills You will Learn
- Creating Jenkins pipeline
- Enable Jenkins Pipeline Plugin
- Configuring plugin for email notification
Configuration Management Using Ansible
Topics
- Introduction to Configuration Management
- Infrastructure as Code
- Introduction to Ansible
- Ansible Architecture
- Inventory Management
- Ansible Modules
- AD-HOC Commands
- Ansible Playbooks
- Ansible Roles
Hands-on
- Ad-Hoc Commands
- Running a Simple Playbook
- Using Variables and handlers
- Using Ansible Roles
Skills You will Learn
- Configuration management
- Ansible ad hoc commands
- Creating Ansible Playbook and Roles
Containerization using Docker Part – I
Topics
- Containerization
- Namespaces
- Docker
- Docker Architecture
- Container Lifecycle
- Docker CLI
- Port Binding
- Detached and Foreground Mode
- Dockerfile
- Dockerfile Instructions
- Docker Image
Hands-on
- Docker CLI Commands
- Port Binding
- Starting Containers in Different Modes
- Writing a Dockerfile to Create an Image
Skills You will Learn
- Continuous Deployment
- Writing a Dockerfile to create an Image
Containerization using Docker Part – II
Topics
- Docker Registry
- Container Storage
- Volumes
- Docker Compose
- Docker Swarm
Hands-on
- Setting up Docker Hub
- Docker Volumes
- Installing Docker Compose
- Installing a Multi-Container Application using Compose
- Running Docker in Swarm Mode
Skills You will Learn
- Configuring Local Registry
- Creating persistent storage solutions
- Deploying a Multi-container Application
Orchestration using Kubernetes Part - I
Topics
- Introduction to Container Orchestration
- Kubernetes Core Concepts
- Understanding Pods
- ReplicaSet and Replication Controller
- Deployments
- DaemonSets
- Rolling Updates and Rollbacks
- Scaling Application
Hands-on
- Kubectl Common Commands
- Deployments
- DaemonSets
- Rolling-update and Rollbacks
- Scaling in Kubernetes
Skills You will Learn
- Container Orchestration
- Deploying pods
- Application Scaling
Orchestration using Kubernetes Part - II
Topics
- Services
- Persistent Storage in Kubernetes
- Primitives for PersistentVolumeClaims
- Secrets and ConfigMaps
- Headless Services
- StatefulSets
- Helm Charts
Hands On
- Deploying Services
- Persistent Volumes and Persistent Volume Claims
- StatefulSets
- ConfigMaps and Secrets
- Helm Charts
Skills You will Learn
- Deploying PersistentVolume
- Application Deployment
Monitoring using Prometheus and Grafana
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
Skills You will Learn
- Event monitoring and alerting
- Metric visualizations
Provisioning using Terraform Part - I
Topics
- Introduction to Terraform
- Terraform vs Ansible
- Terraform Architecture
- Terraform Configuration
- Terraform Common Commands
- Managing Terraform Resources
Hands On
- Setting Up AWS and Terraform
- Executing a Terraform Configuration
- Managing Terraform Resources
- Referencing Terraform Resources
Skills You will Learn
- Orchestrate infrastructure changes
- Resource Provisioning
- Managing Resources in Terraform
Provisioning using Terraform Part - II
Topics
- Terraform State
- Terraform Project
Hands On
- Terraform State Commands
- Terraform Project
Skills You will Learn
- Storing infrastructure information