This workshop is applicable to people of all roles, knowledge, experience. The program has following key advantages
- Completely hands on.
- 100% Lab driven
- Covers all the tools in entire lifecycle
- You will not only learn but experience the entire DevOps lifecycle.
- Practical Assessment to help you solidify your learnings
The program covers end to end DevOps lifecycle using a complete tool chain. The program setup is provided through a sandbox where the participants get to learn the concepts by practicing exercises.
How is it useful?
Leading organizations have adopted the DevOps approach to deliver in-time software. DevOps has quickly become the most hyped, overused and ambiguous term in IT. It is being used to reference everything from job titles (DevOps is not a job title!) to technology practices, but the truth is that DevOps is more of a culture than anything else. It is about transformation, about building quality in, improving productivity and about automation in Dev, Testing and Operations. DevOps is about breaking down silos and to increase communication and accomplish the tasks that require expertise in multiple areas.
The course enables you to learn DevOps fundamentals along with Continuous Integration and Continuous Delivery and deep dive into DevOps concepts and mind-set. It also helps you explore the possibilities in applying the concepts learned during the course using the most popular tools today
Prerequisites
There are no pre-requisites for this certification. Any IT professional interested in truly understanding DevOps can do this course. Little technical background is very helpful and is recommended.
Course Coverage
DevOps Fundamentals
- Recall Waterfall and Agile concepts
- Differences within Dev and Ops Teams
- DevOps and Agile – complementary concepts
- DevOps Definition and need
- DevOps history
- Shift left approach to Ops
- DevOps Principles
- Benefits achieved using DevOps, trends towards faster delivery
- DevOps Life Cycle and need of tools
Software Configuration Management (SCM)
- Purpose and Basic Concepts of SCM
- Main SCM Activities
- Need of SCM for testers
- SCM Tools – basic features
- SCM Tool Overview and usage – [Git, Github, GitLab]
- Features of GIT – concept, overview, three stages
- Linux, Vim , Git Exercise
- Practice Git commands, Create Git account, Git Repository creation and usage
- Publishing to Github/Gitlab, modify, delete, track, check logs for git repositories
- Automated Software Build process
Maven – as a Build tool
- Maven Objectives and usage
- Maven Build Life Cycle and Goals
- Maven build file POM.xml and its configuration elements with example
- Basic Maven commands – practical
Continuous Integration
- Need of CI, definition and usage
- Benefits and uses of CI
- CI Build ingredients
- Frequency of build, how to build and when to build
- Steps to CI success
- CI Workflow and Tools
- Continuous Integration/Delivery (CI) [Maven, Jenkins]
Continuous Integration using Jenkins
- Jenkins Overview and History
- Jenkins in CI/CD Workflow
- Continuous Delivery and Continuous Deployment
- Main features of Jenkins
- Setup, Building and Reporting using Jenkins
- Create Jenkins Jobs for building Maven project – practical
- Artefact-ing.
- Repository Management [Git, (Artifatory]
- Best Practices Version Management and Control
- Automated Build using Jenkins
- Continuous Testing – CI at every Check-in
- Concept of TDD
Infrastructure Management – Docker, Ansible, Kubernetes
- Cloud Containers using Docker
- Docker Architecture and Overview
- Docker vs VM and benefits of Docker
- Docker images, containers and usage
- Docker commands – practical
- Improved Deployment Process – Continuous Release / Deployment (CD) [Jenkins, Ansible]
- Infrastructure as Code
- Container Orchestration
- Micro-services
- Docker and Kubernetes (need of Container management software)
- Using Dockerfile to create custom docker image
- Pushing custom image to Docker Hub
- Deploying custom images to Google Kubernetes Engine
Automated Deployment Tool
- Ansible
- Ansible definition and principles
- Ansible architecture
Continuous Delivery
- Continuous Monitoring and Logging – overview
- Simian Army – (Simian Monkeys – Conformity, Janitor, Chaos)
- DevOps end-to-end pipeline and tool chain – Useful DevOps Tools Groups by category
- DevOps Jargon
- DevOps Anti-patterns
- DevOps Myths
- DevOps Culture/ Values
- Create and use Docker VM effortlessly
Continuous Monitoring
- Continuous Monitoring using tools like Nagios
Tools Covered
- Nagios
- Jenkins
- Git
- Ansible
- Docker and Docker Hub
- Kubernetes and Google Kubernetes Engine
- JFrog Artifactory
- Cobertura
- Junit
- Selenium
- Maven
- Tomcat
- Nagios
- PMD