DevOps Online Training

DevOps Online Training Course Content.

DevOps Overview

DevOps is a culture, movement or practice that emphasizes the collaboration and communication of both Software Developers and other information-technology (IT)

Professionals while automating the process of software delivery and infrastructure changes.

It aims at establishing a culture and environment where building, testing, and releasing software can happen rapidly, frequently, and more reliably.

DevOps promotes a set of processes and methods for thinking about communication and collaboration between Development, QA, and IT operations. Because DevOps is a cultural shift and collaboration between development, operations and testing, there is no single DevOps tool, rather a set or “DevOps tool chain” consisting of multiple tools.

Generally, DevOps tools fit into one or more of these categories, which is reflective of the software development and delivery process:

Code – Code development and review, continuous integration tools

Build – Version control tools, code merging, build status

Test – Test and results determine performance

Package – Artifact repository, application pre-deployment staging

Release – Change management, release approvals, release automation

Configure – Infrastructure configuration and management, Infra as Code tools

Monitor – Applications performance monitoring, end user experience

Devops Course Content

  • Introduction to DevOps
  • What is DevOps
  • Why DevOps
  • Business/IT perspective
  • Developer/Tester perspective
  • Problem That DevOps Solves

Overview of DevOps Pipeline

  • Introduction to DevOps
  • Overview of DevOps Pipelines
  • Version Source Control
  • Configuration Management
  • Continuous Integration
  • Continuous Deployment

Over of Public Cloud-AWS

  • Introduction
  • Public vs. Private Cloud Platforms
  • Infrastructure as a Service (IAAS)
  • Platform as a Service (PAAS)
  • Global Infrastructure

Virtualization

  • Introduction
  • What is Virtualization
  • Basics of Virtualization

Basics of Networking

  • Network and Host
  • IPv4 and IPv6
  • Classes in IPv4
  • IP addressing,
  • Deriving Network and Host
  • Subnetting/Subnet Mask
  • Private IP addresses series
  • NAT addressing/NAT Gateway

Public Cloud-AWS

  • EC2 101
  • EBS
  • Instance /Emphermal Volumes
  • Create a custom AMI
  • Create Public and Private AMI
  • KeyPair
  • How to use Putty and Putty Gen
  • Private Sub-Windows 2012 R2,
  • Connectivity from Pub to Private
  • Creation of Snapshots
  • Manual/Automated Snapshots
  • Load Balancers and Health Checks

Version Control–GIT

  • What is Version Control System?
  • Git
  • GITHUB
  • GITHUB Desktop
  • Installation
  • Configuration
  • Basic Commands
  • Branches
  • Repositories

 Version Control-AWS CODE COMMIT

  • What is Code Commit
  • Installation
  • Configuration
  • Basic Commands
  • Branches/Repositories

Build Management-MAVEN

  • Automated Build Process
  • Maven
  • Introduction
  • Maven Structure
  • Maven Dependencies
  • Maven Repositories
  • Maven Plugins
  • Integrated Maven Build

Build Management-CODEBUILD

  • Introduction to Build Tools
  • Basics of AWS CodeBuild
  • Components of AWS CodeBuild
  • Using CodeBuild in your projects

Continuous Integration -Jenkins-I

  • What is Jenkins
  • Installation
  • Configuring Jenkins
  • What is node
  • Configuring node
  • Setting up a node
  • Jobs
  • Plugins
  • Description
  • Creating Application Builds
  • Anatomy of Build
  • Cloning the sample Project
  • Creating the Jenkins job and Configuring a Git Repo
  • Compiling in Jenkins
  • Browsing the workspace in Jenkins
  • App Packaging in Jenkins
  • Automated Test Executions in Jenkins
  • Visualizing Test Results
  • Cleaning up past builds
  • Jenkins Dashboard

CI and CD using AWS Code Deploy and Code Pipeline

  • Introduction to AWS CodeDeploy
  • Components to AWS CodeDeploy
  • AppSpec File Configuration
  • Deployment Using CodeDeploy
  • What is CodePipeline
  • Use cases of CodePipline
  • Continuous Delivery using CodePipeLine

Provisioning Management Tool--VAGRANT

  • Introduction
  • What is Vagrant?
  • Setting up Vagrant
  • Virtual Box Installation
  • Vagrant Installation
  • Vagrant without Virtual Box
  • Using Vagrant/Vagrant Machine
  • Vagrant Files
  • Boxes
  • Running Vagrant Machines
  • SSH to Vagrant Machine
  • Vagrant Boxes
  • Basic Box Management
  • Creating Boxes from existing environment

Configuration Management Tool-Chef

  • What is Chef?
  • Chef Server
  • Chef Workstation
  • Chef-Repo
  • Chef-Client
  • Server and Nodes
  • What is Cookbook
  • What is Knife?
  • Roles
  • Creating Web/DB
  • Extending Chef
  • Knife plugins
  • Deploying Nodes in Production
  • Unattended Node Bootstrapping
  • Adding Local Chef-Repo to Github
  • Data-Bags

Configuration Management Tool-AWS CHEF AUTOMATE

  • What does AWS Chef Automate?
  • Uses cases of Chef Automate
  • AWS Chef Automate Concepts
  • Launching AWS Chef Automate

Configuration Management Tool–AWS OPS WORKS

  • What is AWS OPSWORKS?
  • Uses cases of AWS OPSWorks
  • AWS OPSWorks Concepts
  • Launching AWS OPSWorks

Configuration Management Tool-ANSIBLE

  • Introduction to Ansible
  • Installing Ensile
  • Testing with First Ansible
  • Ansible Configuration Basics
  • Working with python based systems
  • Plays & Playbooks’ basics
  • Basic Play book
  • Advance Playbook usage
  • Roles
  • Introduction to Roles
  • Role Basics
  • Creating Role
  • Ansible Galaxy

Configuration Management Tool-Puppet

  • Introduction to puppet
  • Nodes
  • Puppet Components
  • Installing the puppet master learning puppet master layout
  • Installing the puppet Enterprise layout
  • conf
  • Facter
  • Defining & testing our first class
  • Puppet DSL
  • Adding Ubuntu Node & testing
  • Files & Resource Defaults
  • Hiera
  • Puppet Management
  • Common Console Tasks

Provisioning Management Tool-TERRAFORM

  • Introduction to Terraform
  • Use Cases
  • Terraform Vs Chef Vs Puppet
  • Install Terraform
  • Using Terraform
  • Launching infra using Terraform
  • Creating and Destroying Infra

AWS DEVOPS TOOLS-ElasticBean Stalk

  • Introduction to Elastic Beanstalk
  • Use Cases
  • Using Elastic Beanstalk
  • Envoirment Provising
  • Sample Application provisioning

Containerization-DOCKER

  • What is Docker
  • Installing Docker on Windows, Linux
  • Docker Pull,Build,Run
  • Working with images
  • Container Life cycle
  • Dockerfile
  • Pushing App to GitHub
  • Configuring Test Builds
  • Performing test Builds
  • Pushing App to Production

Monitoring

  • Nagios
  • Installation of Nagios
  • Configuring Nagios
  • Monitoring with Nagios
  • Triggering Alerts

Elasticsearch + logstash + Kibana

  • Installation of ELK stack
  • Configuring the ELK Stack
  • Monitoring