DevOps Course Content
DevOps Course Content
Course
Duration
: 45 days
GIT
Implement automated system update, installations and deployments
Learn Virtualization Concepts
Configuration deployment and packaging, continuous integration using GIT
Manage server operations using Code which is popularly known as Infrastructure as a Code.
The course follows the whole software development lifecycle from requirements analysis
through coding to production support.
Introduction to DevOps:
Background
Ingredients of DevOps
DevOps principles
Who has adopted?
Mirage or Reality?
Challenges
Domain specific
Technology specific
DevOps Toolchain (Practices and Tools)
SDLC vs Agile/DevOps:
Agile Values and Principles
What is conventional software development methodology
Advantages of Agile
Importance of DevOps in Agile
What is Continuous Integration
What is Continuous Delivery
What is Continuous Deployment
What is continuous feedback
Faster deployments using devops
Collaboration
How Automation helps devops
DevOps job market
Linux
Linux Overview
What is Operating sytem
What is Unix, Linux
Unix vs Linux
Linux vs Windows
Linux market trends
Linux flavours
Linux Architecture
What is shell kernel command line utilities
Linux Boot process
Linux commands
Linux admin level commands
Reading files
Redirection operators
Piping
User management
Process management
File system management
Linux volume manager hands on
Linux installation using iso
Directory structure
Editors
VMware overview
Scripting:
Shell scripting:
She-bang line in shell
Command line arguments
Variables
Loops
Case statement
Getopts
Functions
Regular expressions
grep
Awk
Sed
Python scripting:
Python Introduction
Features of Python
Python vs Perl
Python vs shell
Interactive mode of programming using python
Reserved words
Python indentation
Python variables
Python data types
Numbers
Strings
Lists
Tuples
Dictionaries
Loops
Operators
Break
Continue
pass
Command line arguments
Functions
Lambda functions
Modules
Files
Exception Handling
Object Oriented concepts
Class
Object
Inheritance
Polymorphism
Abstraction
Method overloading
Real time modules/scripts used
Configuration Management tools
Chef:
Introduction to Chef:
What is chef
Difference between Chef open source and enterprise
Chef Architecture
Chef components
Chef server
Chef work station
Chef client
Installation of chef components on different machines
Configuration of chef server, work station and development kit
What is boot strap method
How to add clients to chef server
What is cook book and recipe
How to write cookbooks, recipes
How to search clients on command line from server
Knife command utility
Chef-serve-ctl utility
Chef-client utility
How to run cookbooks on clients
How to download cookbooks and apply on clients
How to write our own cookbooks
Templates
Source files
Roles in chef
Environment in chef
Data bags in chef
Search criterion in Chef
Real time cookbooks
Puppet:
Introduction to Puppet
Difference between puppet open source and enterprise
Puppet Architecture
Puppet components
Puppet Master installation and configuration
Puppet agent installation and configuration
Puppet connections
Adding agents to master
Components of Puppet
Hiera
Mcollective
Puppet DB
Puppet dash board
Geppato
Facter
Catalogue
Puppet DSL
Templates
Defining the classes in puppet
Relationships between resources
Variables
Scope
Notify required keywords
Puppet modules
Site.pp vs node.pp
Puppet manifests
How to write basic manifests
How to define classes
How to write customized manifests
Real time examples of manifests
Ansible:
Introduction to Ansible
Ansible Architecture
Ansible terminology
Ansible commands
How to add nodes to server
Ansible installation and configuration
Installing ssh on nodes
Generating the keys
Components of Ansbile
Inventory
Configuration
Modules
Playbooks
Global Configuration
Roles
Tags
How to write playbooks
PYYAML overview
How to write playbooks
Ansible modules
Ansbible Roles
Ansible Galaxy
How to download playbooks from Galaxy
Realtime playbooks
Saltstack:
Introduction to Saltstack
Curl
Wget
How to configure salt master
How to configure salt minion
How to establish the communication between master and minions
Salt grains
Search criterion using grains
Globbing
Regular Expressions
Pillars
Saltstate files SLS
How to write basic sls
How to write advanced sls
How to apply the sls on minions
Monitoring tools
Nagios:
Nagios Introduction
Nagios Architecture
How to install Nagios
How to configure Nagios
Plugins in Nagios
How to add servers to Nagios
NRPE – Nagios Remote Plugin Executor
How to configure plugins on remote nodes
Monitoring with Nagios
Using the default plugins
Writing our plugins
Dockers :
Introduction to Dockers
Installing dockers
What are containers
How to manage dockers from machine
Docker pull
Docker run
Docker attach
Exploring Docker hub
Pulling images from hub
Virtualization
What is virtualization
Different virtualization models
Physical Partitioning - LPARs
Bare metal hypervisor – Vmware ESX servers
Hosted OS virtualization – KVM
Software Partitioning - Dockers
Cloud Computing:
Introduction to Cloud
Cloud features:
Elasticity
Pay as you use
Different models of Cloud:
Iaas – Infrastructure as service
Paas – Platform as service
Saas – Software as service
AWS Overview