DevOps Master Program
(Complete DevOps Training)

About the program

Our DevOps training program is designed to equip you with the skills and knowledge you need to optimize your software development process and take your career to the next level. Whether you’re a developer, system administrator, or IT professional or non-IT professional, our comprehensive curriculum will help you take your career to the next level. Our expert instructors will teach you how to streamline workflows, enhance collaboration, and automate your development cycle using the latest tools and methodologies, including Agile, Continuous Integration/Continuous Delivery, Docker, Kubernetes, Monitoring and more. By the end of the program, you’ll have the confidence and expertise to lead DevOps initiatives within your organization and drive innovation in DevOps.

COURSE OBJECTIVE

Through this course, you will learn:

LINUX

Linux for DevOps

AWS

Cloud Master Training

GIT

Version Control Using Git

DOCKER

Docker Container

KUBERNETES

Container Orchestration

JENKINS

Continuous Integration & Deployment 

PROMETHEUS & GRAFANA

Best Monitoring System

Core Python

Programming Language

 Program Outcome:

  • Understand the fundamentals of DevOps engineering and be fully proficient with DevOps terminologies, concepts, benefits, and deployment options to meet your business requirements.
  • Be able to deliver change requests from customers rapidly and effectively by adding new (and updating existing) feature.
  • This program will prepare participants for careers in cloud and DevOps, equipping them with the skills and knowledge needed to excel in these rapidly-growing fields. Even prepares you to get job-ready and enhance your skills to match the industry
  • Training program will provide participants with hands-on experience in real-world scenarios, preparing them to tackle real-world challenges and solve complex problems.

Course Content

Course content by each technology.

Linux For DevOps

Access the command line
Log in to a Linux system and run simple commands using the shell.

Manage fiIes from the command Iine
Copy, move, create, delete, and organize files from the bash shell prompt.

Get heIp in Linux
Resolve problems by using online help systems and Linux support utilities.

Create, view, and edit text fiIes
Create, view, and edit text files from command output or in an editor.

Manage IocaI Linux users and groups
Manage local Linux users and groups, and administer local password policies.

ControI access to fiIes with Linux fiIe system permissions
Set Linux file system permissions on files and interpret the security effects of different permission settings.

Monitor and manage Linux processes
Obtain information about the system, and control processes running on it.

ControI services and daemons
Control and monitor network services and system daemons using system

Configure and secure OpenSSH service
Access and provide access to the command line on remote systems securely using OpenSSH

AnaIyze and store Iogs
Locate and accurately interpret relevant system log files for troubleshooting purposes.

Manage Red Hat Enterprise Linux networking.
Configure basic IPv4 networking on Red Hat Enterprise Linux systems.

Archive and copy fiIes between systems
Archive files and copy them from one system to another.

InstaII and update software packages
Download, install, update, and manage software packages from Red Hat and yum package repositories.

Access Linux fiIe systems
Access and inspect existing file systems on a Red Hat Enterprise Linux system.

Use reguIar expressions with grep
Write regular expressions that, when partnered with grep, will allow you to quickly isolate or locate content within text files.

Cut and Sed command exampIe in Linux
Very useful command when you are working with Linux System and Scripting.

Create and Edit text fiIes with vim
Introduce the vim text editor, with which you can open, edit, and save text files.

ScheduIe future Linux tasks ControI services and daemons
Review how to manage services and the boot−up process using systemctl

Add disks, partitions, and fiIe systems to a Linux system
Manage simple partitions and file systems.

Manage DNS for servers
Setup DNS Server, Configure DNS records

Provide Apache HTTPD web service
Configure Apache HTTPD for websites and virtual hosts.

Write Bash scripts
Write simple shell scripts using Bash

AWS Cloud Master Training

Introduction of Cloud & Amazon Web Service

  • Introduction of cloud computing
  • What is Virtualization
  • Infrastructure as a Service(IaaS), Software as a Service(Saas), Platform as a Service(PaaS)
  • Advantages of Cloud
  • AWS history
  • Dashboard
  • AWS Overview, Architecture Discussion

Identity & Access Management

  • IAM Overview and Policies
  • IAM Users, Groups
  • Access Key & Secret Access Key
  • IAM Role
  • MFA
  • IAM Custom Policy
  • Report

Elastic Cloud Computing (EC2)

  • Amazon EC2 Overview
  • Elastic Block Storage(EBS)
  • Amazon Machine Image(AMI)
  • Instance Purchasing Options
  • Introduction to EC2 Instance Types
  • Security Group
  • Elastic, Public & private IP Overview
  • Amazon EBS & Snapshot
  • Bootstrap Script
  • Elastic Load Balancing (ELB)
  • Auto Scaling

Virtual Private Cloud (VPC)

  • Amazon Virtual Private Cloud (VPC)
  • Amazon VPC and Subnets
  • Route Table
  • Internet Gateway
  • NAT Gateway
  • VPC Peering
  • Security Group
  • Network ACL

Amazon Simple Storage Service (S3)

  • Simple Storage Service (S3)
  • S3 Object Storage and Buckets
  • Security on bucket
  • Web Hosting
  • Logging & Event
  • Glacier
  • Versioning & Lifecycle Policy
  • Cross region replication

Route 53

  • DNS Records
  • DNS Registration
  • Website Hosting with Domain
  • Routing Policy
  • Health Check

Databases

  • Relation Database System
  • DB engine & Instance details
  • HA for RDS
  • Read Replica
  • Security & Parameter group
  • Monitoring Resourcing
  • Dynamodb
  • Dynamodb HA
  • Elasticache

Cloudwatch & Monitoring

  • Cloud Watch
  • Matrices
  • Alarm & notification
  • Log & billing Monitoring
  • Other AWS monitoring
  • SNS

Brief Information & Discussion

  • SNS
  • SQS
  • SWF
  • Trusted Advisor
  • Snowball
  • Consolidated Billing
  • AWS Whitepaper
  • AWS Standard Architecture
  • Exam Preparation

Version Control Using GIT

Introduction

What is Git?

Installing Git on Linux

Configuring Git

Initializing a repository

Understanding where Git files are stored

Performing your first commit

Writing commit messages

Viewing the commit log

Adding files

Deleting files

Branching overview

Viewing and creating branches

Switching branches

Creating and switching branches

Setting up a GitHub account

Adding a remote repository

Creating a remote branch

Cloning a remote repository

Tracking remote branches

Pushing changes to a remote repository

Fetching changes from a remote repository

Docker Container

Managing Container

  • Installing Docker
  • Docker Control Socket
  • Creating a New Container
  • Listing Containers
  • Viewing Container Operational Details
  • Running Commands in an Existing Container
  • Interacting with a Running Container
  • Stopping, Starting, and Removing Containers

 

Managing Images

  • Docker Images
  • Listing and Removing Images
  • Searching for Images
  • Downloading Images
  • Committing Changes
  • Uploading Images
  • Export/Import Images
  • Save/Load Images
  • Name and Tag
  • Managing Public and Private Image in Dockerhub
  • Events
  • Logs
  • Image History

 

Creating Images with Docker File

  • Docker file
  • Caching
  • docker build
  • Dockerfile Instructions
  • ENV and WORKDIR Directive
  • CMD and Entrypoint Directive
  • User and Expose Directive
  • Running Commands
  • Order of Execution
  • Getting Files into the Image
  • Defining ContainerExecutable
  • Container Memory & CPU Limitation

 

Docker Networking

  • Overview
  • Hostnames and DNS
  • Local Host <–> Container
  • Container <–> Container
  • Container <–> Container: Links
  • Remote Host <–> Container

 

Docker Volume

  • Volume Concepts
  • Creating and Using Volumes
  • Changing Data in Volumes
  • Removing Volumes
  • Backing up Volumes
  • Volume mapping to host

 

Docker Compose

  • Introduction
  • Docker Compose example using yml file

Container Orchestration Using Kubernetes

Introduction to Kubernetes

  • Understanding the need for a system like Kubernetes
  • Understanding what containers are
  • Comparing virtual machines to containers
  • Introducing the Docker container platform
  • Understanding docker concepts
  • Understanding the architecture of a Kubernetes cluster
  • Understanding the benefits of using Kubernetes

Core Concepts

  • ETCD in Kubernetes
  • Kube-API Server
  • Kube Controller Manager
  • Kube Scheduler
  • Kubelet
  • Kube Proxy
  • Introduction to PODS
  • Understanding why we need pods
  • Accessing your web application
  • PODs with YAML
  • Organizing pods with labels
  • Modifying labels of existing pods
  • ReplicaSets
  • Deployments
  • Namespaces
  • What is a Service?
  • Creating a Service
  • Understand ClusterIP, NodePort, LoadBalancer service types and endpoints

Scheduling

  • Manual Scheduling
  • Labels and Selectors
  • Labels and Selectors
  • Taints and Tolerations
  • Node Selectors
  • Node Affinity
  • Taints and Tolerations vs Node Affinity
  • Resource Requirements and Limits
  • DaemonSets
  • Practice Test – DaemonSets
  • Static Pods

Application Lifecycle & Management

  • Rolling Updates and Rollbacks
  • Configure Applications
  • Commands
  • Commands and Arguments
  • Configure Environment Variables in Applications
  • Configuring ConfigMaps in Applications
  • Configure Secrets in Applications
  • Scale Applications
  • Multi Container PODs
  • InitContainers

 

Cluster Maintenance

  • OS Upgrades
  • Kubernetes Software Versions
  • Cluster Upgrade Process
  • Backup and Restore Methods Security
  • Kubernetes Security Primitives
  • Authentication
  • Article on Setting up Basic Authentication
  • View Certificates
  • KubeConfig
  • Authorization
  • Role Based Access Controls
  • Cluster Roles and Role Bindings
  • Service Accounts
  • Security Contexts

Storage

  • Preview
  • Introduction to Docker Storage
  • Storage in Docker
  • Container Storage Interface (CSI)
  • Volumes
  • Persistent Volumes
  • Persistent Volume Claims
  • Using PVCs in PODs
  • Storage Class

 

Networking

  • Cluster Networking
  • Pod Networking
  • CNI in kubernetes
  • CNI weave
  • IP Address Management – Weave
  • Service Networking
  • Know how to use Ingress controllers and Ingress resources

Other Topics

  • Installation of Kubernetes
  • Loggin

Continuous Integration & Deployment Using Jenkins

INTRODUCTION TO CONTINUOUS INTEGRATION, CONTINUOUS DEPOLOYMENT AND JENKINS-CI

  • What is Continuous Integration
  • Typical Setup for Continuous Integration
  • Continuous Deployment
  • DevOps and Continuous Deployment
  • Continuous Deployment Challenges
  • Jenkins Continuous Integration
  • Jenkins Features
  • Running Jenkins

INSTALLING AND RUNNING JENKINS

  • Downloading and Installing Jenkins
  • Running Jenkins as a Stand-Alone Application
  • Running Jenkins on an Application Server
  • The Jenkins Home Folder
  • Installing Jenkins as a Windows Service
  • Initial Configuration
  • Configuration Wizard
  • Configuring Tools
  • Configuring Tools – Best Practices

JOB TYPES IN JENKINS

  • Introduction
  • Different types of Jenkins Items
  • Configuring Source Code Management(SCM)
  • Working with Subversion
  • Working with Git
  • Storing Credentials
  • Build Triggers
  • Schedule Build Jobs
  • Polling the SCM
  • Maven Build Steps

SECURING JENKINS

  • Jenkins Security – Overview
  • Jenkins Security
  • Authentication
  • Authorization
  • Confidentiality
  • Activating Security
  • Configure Authentication
  • Using Jenkins’s Internal User Database
  • Creating Users
  • Authorization
  • Matrix-Based Security
  • Note – Create the Administrative User
  • Project-based Matrix Authorization
  • Project-Based Authentication

JENKINS PLUGIN

  • Introduction
  • Jenkins Plugins – SCM
  • Jenkins Plugins – Build and Test
  • Jenkins Plugins – Analyzers
  • Jenkins for Teams
  • Installing Jenkins Plugins

DISTRIBUTED BUILDS WITH JENKINS

  • Distributed Builds – Overview
  • Distributed Builds – How?
  • Slave Machines
  • Configure Jenkins Master
  • Configure Projects

CONTINUOUS DEPLOYMENT AND THE JENKINS PIPELINE

  • Continuous Deployment
  • DevOps and Continuous Deployment
  • Continuous Deployment Challenges
  • Continuous Deployment with Jenkins
  • The Pipeline Plugin
  • Defining a Pipeline
  • A Pipeline Example
  • Parallel Execution
  • Creating a Pipeline
  • Invoking the Pipeline
  • Interacting with the Pipeline

BEST PRACTICES FOR JENKINS

  • Best Practices – Secure Jenkins
  • Best Practices – Backups
  • Best Practices – Reproducible Builds
  • Best Practices – Testing and Reports
  • Best Practices – Large Systems
  • Best Practices – Distributed Jenkins

Prometheus with Grafana Monitoring

Introduction – Prometheus

  • Introduction to Prometheus
  • Prometheus installation
  • Grafana with Prometheus Installation

Collecting Metrics

  • Overview of Scraping
  • Node Exporter platform
  • Running Node Exporter as a Service

Monitoring

  • Introduction to Monitoring
  • Client Libraries
  • Pushing Metrics
  • Querying
  • Service Discovery
  • Exporter

Alerting

  • Introduction to Alerting
  • What is Alert Manager?
  • Installing Alert Manager
  • Defining Alert Rules
  • Setting up Alerts
  • Integrating Alert Manager with Google Chat

Service Discovery

  • Service Discovery Options in Prometheus
  • Service Discovery in AWS

Push Gateway

  • Installing Push Gateway
  • Sending Metrics to Push Gateway
  • Push Gateway Authentication

Security in Prometheus

  • Introduction to Authentication Methods in Prometheus
  • Basic Authentication in Prometheus
  • Enabling HTTPS for Improved Security

Grafana

  • Introduction and Overview
  • What is Grafana?
  • Why do we need it?
  • Grafana Installation
  • Configuring Grafana
  • Connect Grafana to Prometheus
  • Creating Your First Grafana Dashboard
  • Data Source in Grafana – Prometheus – AWS Cloudwatch
  • Explore Grafana Dashboard
  • Grafana Authentication
  • Manage Users
  • Install Plugins

Core Python

Introduction – Python

  • History
  • Features
  • Setting up path
  • Working with Python
  • Basic Syntax
  • Variable and Data Types
  • Operator

Conditional Statements

  • If
  • If- else
  • Nested if-else

Looping

  • For
  • While
  • Nested loops

Looping

  • Break
  • Continue
  • Pass

String Manilpulation

  • Accessing Strings
  • Basic Operations
  • String slices
  • Function and Methods

Lists

  • Introduction
  • Accessing list
  • Operations
  • Working with lists
  • Function and Methods

Tuple

  • Introduction
  • Accessing tuples
  • Operations
  • Working
  • Functions and Methods

Dictionaries

  • Introduction
  • Accessing values in dictionaries
  • Working with dictionaries
  • Properties
  • Functions

Functions

  • Defining a function
  • Calling a function
  • Types of functions
  • Function Arguments
  • Anonymous functions
  • Global and local variables

Modules

  • Importing module
  • Math module
  • Random module
  • Packages
  • Composition

Input – Output

  • Printing on screen
  • Reading data from keyboard
  • Opening and closing file
  • Reading and writing files

Exceptions Handling

  • Exception
  • Exception Handling
  • Except clause
  • Try ? finally clause
All Rights Reserved © 2018 DevOps TechLab