LX301 Linux Academy DevOps Training

DevOps Training course will help you learn DevOps and master various aspects of software development, operations and automations.

Skills Coverd
DevOps Introduction
  • The Wall of Confusion
  • Agiles impact on software industry
  • DevOps Lifecycle
  • Culture of collaboration Role of Operations Team in Devops.
  • Role of Developer in DevOps Lifecycle
  • Benefits and Limitations of DevOps
Introduction to Git
  • Source Code Management and Version Control System
  • Need of SCM and Version Control
  • Git Basics and History
  • Git Workflow
  • Git and GitLab basics
  • Feature Branching
Revert and Unstage changes on git
  • Unstage
  • Undo Commits
  • Reset Workflow
Git Hub
  • Git Hub Introduction
  • Multiple user contribution to one repository
  • Easiness using multiple contributors
Conflicts and Merge Conflicts on GitHub
  • What is Merge Conflicts?
  • Seriousness of conflict situation
  • Merge and Pull requests
  • Introduction to containers
  • Need of containers and working
  • Containers VS Virtual Machines
  • Containers for Developers
  • Containers for Devops
What is Docker
  • Alternatives to Docker
  • Docker Components and Architecture
  • Installing Docker
  • Configuring Docker
  • Running your first container
  • Docker Components
Docker Implementation
  • Docker Images
  • Pulling and Inspecting Images
  • Docker Hub
  • Creating an account on docker hub
  • Terminal Access Vs Detached mode
Within a container
  • PID
  • Docker ps
  • Docker Logging
Port mapping and other network services
  • Simple port mapping understanding
  • Hosting and accessing webservers in docker containers
  • Tomcat / Jenkins / Wordpress on Docker
Docker Volumes
  • Creating Docker Volumes
  • Attaching Volumes as persistent storage
  • Removing volumes from containers
Docker Image creations
  • Docker Commit changes
  • Image tagging and versions with layers
  • Pushing image to docker hub account
  • Instructions and images
  • FROM,RUN,ADD,COPY,Expose,CMD,Entrypoint,Healthcheck etc.
  • Docker build and obuild contexts
Docker Networking
  • Basics of Docker Network
  • docker0 bridge
  • Containarzing application code using docker
  • Python/Java application code in docker container
  • Running 2-tier application in containers using docker
  • Using Docker file from Github
Introduction to Podman
  • Container management tool podman
  • Installing Podman
  • Podman commands
Working with podman
  • Podman containers management and networking
  • Port redirection and accessing network services using podman
  • Podman for container process management
Introduction to Continuous Integration
  • Introduction to Jenkins and the History of Jenkins
  • Install Java
  • Text Direction: Install Java
  • Install Jenkins
  • Jenkins' Architecture and Terms of Jenkins
  • Overview of Jenkins UI : Dashboard and Menus
  • Create Our First Jenkins Job
  • Run our First Jenkins Job
  • Continuous Integration with Jenkins
  • Install Git and Jenkins GitHub Plugin
  • Install Maven on Our Local Box
  • Configure Jenkins to Work with Java, Git and Maven
  • Text Direction: Create our First Maven-based Jenkins Project
  • Create our First Maven-based Jenkins Project
  • Run our First Jenkins Build and Jenkins Workspace
  • Trouble Shooting: Run our First Jenkins Build and Jenkins Workspace
  • Junit IntegrationTesting with Jenkins
  • Run Ant/Maven project with junit cases
  • Installing and configure Junit plugin
  • Publish Junit test result with HTML report/graph
  • Source Control Polling in Jenkins
  • Source Control Polling in Jenkins
  • Other Build Triggers of Jenkins
Continuous Delivery with Jenkins
  • Archive Build Artifacts
  • Install and Configure Tomcat as the Staging Environment
  • Deploy to Staging Environment
  • The latest Deploy to Container plugin
  • Troubleshooting: Deploy to Staging
Jenkins Build Pipeline
  • Parallel Jenkins Build
  • Deploy to Production
  • Troubleshooting: Deploy to Production
  • Extra Learning Material: 6 of my favorite Jenkins plugins
  • Jenkins Pipeline As Code (Jenkinsfile)
  • Overview of Pipeline as Code
  • Automate our existing Jenkins Pipeline
  • Fully Automated Jenkins Pipeline
Distributed Builds
  • Introduction to Distributed Jenkins Build
  • Install Jenkins Master Node in the Cloud
  • Install Jenkins Slave Agents in the Cloud
  • Concurrent Jenkins Build and Label Jenkins Build
Mid course test on Git,GitHub, Docker, Podman and Jenkins pipelining
  • Mini project topic allocation to participants and guidance for completion
  • Evaluation of test and mini project
  • What is Configuration Management?
  • A usual day in administrators life.
  • Infrastructure as a code.
  • Two strategies of working in configuration management tools
  • Ansiblle Vs Puppet
Puppet Introduction
  • Job satisfaction The Puppet advantage
  • The Puppet way
  • The Puppet language
  • Resources and attributes
  • Configuration management
  • What Puppet can do?
  • Puppet Installation and Manifest Creation
  • Installation and Configuration
  • Installing Puppet
  • Configuring Puppet Master and Agent
  • Connecting Agents
  • Puppet Master
  • Puppet in details
  • Puppet configuration tree
  • Puppet configuration files
  • Manifests, Nodes, Modules
  • Services, Starting services at boot
  • Service status options
  • Service control commands
  • Resource dependencies
  • Puppet for Linux Admins
  • Managing Users
  • Security practices
  • User resources
  • Removing or locking accounts
  • Managing SSH keys
  • Managing privileges with sudo
  • Expressions and Logic, Conditionals
  • If statements, else and elsif, Unless statements
  • Puppet Operators and expressions
  • Boolean operators
  • Combining Boolean operators
  • Arithmetic operators
  • Regular expressions
  • Operators
Ansible - Getting Started with Ansible
  • Ansible and Infrastructure Management
  • Architecture of Ansible
  • On snowflakes and shell scripts
  • Configuration management
  • Installing Ansible
  • Managing inventories
  • Ad-Hoc Commands
  • Build infrastructure with Vagrant for testing
  • Inventory file for multiple servers
  • Your first ad-hoc commands
  • Limitation of ad-hoc commands
  • Ansible In Depth
  • Discover Ansible’s parallel nature
  • Learning about your environment
  • Make changes using Ansible modules
  • Configure groups of servers, or individual servers
  • Make changes to just one server
  • Manage users and groups
  • Manage files and directories
  • Get information about a file
  • Copy a file to the servers
  • Retrieve a file from the servers
  • Create directories and files
  • Ansible Tricks
  • Delete directories and files
  • Run operations in the background
  • Update servers asynchronously, monitoring progress
  • Plays & Playbooks
  • Playbooks
Introduction to Kubernetes
  • Containers
  • History
  • Architecture
  • Resources
  • Where to go for help
Installation and Configuration
  • Installation options
  • Minikube install
  • Install Kubernetes
  • Kubernetes Basics
  • Create a cluster
  • Deploy an app
  • Expose your app
  • Scale your app
  • Kubernetes Resources
  • Master
  • Node
  • Pod
  • Labels
  • Configure Pods and Containers
  • Pods
Pod Lifecycle
  • Pod Status
  • Secrets
  • Pods
  • Controllers
  • Deployment
  • StatefulSet
  • DaemonSet
  • Controllers
  • Services
  • Defining a Service
  • Discovering Services
  • Virtual Ips
  • Services types
  • Volumes
  • Overview
  • Configure a Pod to Use a Volume for Storage
  • Configure a Pod to Use Persistent Volume
  • Cluster Administration
  • CLI
  • Contexts
  • Scaling
  • Monitoring
  • Debugging
  • Dashboards
  • Gotchas
  • Load Balancers
  • Cluster Admin – demo
Introduction to Amazon Web Services and Kubernetes Services
  • AWS/Azure Regions ,AWS Availability/ Azure Zones and AWS services
  • AWS/Azure Container Service
  • AWS/Azure Registry Service
  • AWS/Azure Kubernetes Service
Infrastructure as a Code
  • Getting Started with Terraform
  • Variables, Interpolation and Networking
  • Conditionals, Terraform State and Virtual Machines
  • Iteration, Resources and Availability Sets
  • Scale Sets, Load Balancing and VM Extensions
  • Modules, Traffic Manager and Bastion
  • Terraform 13

  • Duration: 90 Hours