DevOps Foundation

DevOps Foundation is intended to provide individuals with an understanding of basic DevOps concepts and how DevOps may be used to improve communication, collaboration, and integration between software developers and IT operations professionals. In this course, we also cover the essential DevOps toolset.

Prerequisite:

  • Linux fundamentals

Introduction to DevOps

  • SDLC – Waterfall to Agile
  • What is DevOps
  • Why DevOps?
  • History of DevOps
  • DevOps Stakeholders
  • DevOps Goals
  • Important terminology
  • DevOps perspective
  • DevOps Tools
  • Configuration management
  • Continuous Integration and Deployment

 Version Control – GIT

  • Version Control System
  • Distributed Version Control System
  • Advantages of Git
  • Environment Setup
  • Installation of Git Client
  • Life Cycle
  • GIT Operations
    • Create New User
    • Create a Bare Repository
    • Push Changes to the Repository
    • Clone Operations
    • Change Operations
    • Commit Operations
    • Push Operations
    • Branching Operations
  • Exercises
    • Install GIT
    • Configure GIT
    • GIT Operations

 Continuous Integration – Jenkins

  • Continuous Integration Overview
  • What is the Jenkins integration server?
  • Jenkins and extensibility
  • Installation
  • Configuring Jenkins
  • Plug-in management
  • Support for the Git version control systems
  • Setting up a Jenkins job
  • Exercises
    • Install Jenkins
    • Configure Jenkins
    • Integrating Jenkins with GIT

 Configuration Management – Ansible

  • Introduction
  • Ansible and Infrastructure Management
  • Inventory
    • Hosts and Groups
    • Host Variables
    • Group Variables
    • Groups of Groups, and Group Variables
    • Splitting Out Host and Group Specific Data
  • Playbooks
    • Playbook Roles and Include Statements
    • Variables
    • Conditionals
    • Loops
    • Blocks
  • Modules
    • Core Modules
    • Extras Modules
  • Exercises
    • Install Ansible
    • Configure Target hosts
    • Playbook writing Exercises
  1. Continuous Deployment – Docker
  • What is Container virtualization
  • Advantages of Container
  • Case Study – Container
    • What is Docker
    • Docker Vs Traditional VM
    • Docker Installation
    • Docker Images
    • Docker Engine
    • Docker Hub
    • Docker Registry
    • Provision and Setup Docker hosts
  1. Container Orchestration – Introduction to Kubernetes
  • Overview
  • Architecture
  • Setup
  • Images
  • Jobs
  • Labels & Selectors
  • Important Terms – Namespace, Node, Service, Pod
  • Deployments
  • Volumes
  • Secrets
  • Network Policy
  • Exercises
    • Install Kubernetes
    • Configure Kubernetes
    • Deploy and manage pods in Kubernetes

 Continuous Monitoring: Nagios

  • Introduction
  • Installation
  • Configuration
    • Configuration overview
    • Main configuration file options
    • Object configuration overview
    • Object definitions
    • Verifying configurations
  • Monitoring Linux/Windows hosts
  • Inside Nagios
    • Plugins
    • Macros and how they work
    • Standard macros available in Nagios
    • Host checks
    • Service checks
    • Active checks
    • Passive checks
    • State types
    • Time periods
    • Determining status and reachability of network hosts
    • Notifications
  • Exercises
    • Install Nagios
    • Configure Nagios
    • Configure target hosts for monitoring
    • Monitor Resources / Parameters of target hosts