What is DevOps?
DevOps is not just a tool or a team, it is the process or a methodology of using various tools to solve the problems between Developers and Operations team, hence the term “Dev-Ops”.
The development team always has the pressure of completing the old, pending work that can be considered faulty by the operations team. With DevOps, there is no wait time for deploying the code as it gets tested. Hence, the developer gets instantaneous feedback on the code, and therefore can close the bugs, and can make the code production ready, faster!
DevOps is the current IT industry’s most demanding skill. That is one of the reasons why we are here to support you to learn DevOps easily and get hired fast.
Furthermore, DevOps is the field where you need to be strong in core technical, soft skills and business solutions. That’s the reason why DevOps is leading the market and solving complex software problems within the team.
Also, DevOps career separates you from the crowd and you become more valuable to the company.
Nowadays, many organizations are making it mandatory to follow DevOps processes in the Software Development Life Cycle (SDLC). This is because DevOps gives a 360 degree view of SDLC causing fewer problems, faster resolutions, security, reliability and best product quality in the market to compete.
Software industry is rapidly growing and technology is evolving every day. The challenges and opportunities are even more complex. Only having a degree may not give you the dream job you imagined after graduation.
That is why we are here to train and support you through the journey of turning your dream job into a reality . We are here to fill the gap between your education and your career.
DevOps Introduction : 2 Days (Weight: 5%)
- Software Development Life Cycle (SDLC)
- Traditional Models of SDLC
- What is DevOps?
- DevOps Lifecycle & Tools
- What is IaC (Infrastructure as Code)
- IaC Tools
Linux for DevOps : 3 Days (Weight: 5%)
- Install Virtualbox Software
- Create a Virtual Machine (VM) & Installing Ubuntu/CentOS/RHEL OS into the VM.
- Creating Clone of a Virtual Machine
- Fundamental Linux Commands
- Managing Users And Groups
- Managing Permission on a File/Dir
- Managing Packages
- Scheduling a Task
- Viewing Logs
- Configuring Network
- Managing Services
- Managing Firewall
- Remote Login Using SSH
- Creating a Bash Shell Script
- Using tar command
- Downloading Files From FTP/HTTP Server Using wget
Server Installation : 3 Days (Weight: 5%)
- Apace, MySQL, PHP
- Basic Security
- What is Vagrant?
- Importance of Vagrant.
- Setup Vagrant with Virtualbox.
- Cluster node setup in Vagrantfile.
Git – Version Control System : 2 Days (Weight: 5%)
- What is Git?
- What is GitHub?
- Installing Git
- Installing Git Plugin [On Jenkins]
- Configuring Jenkins for Git [On Jenkins]
- Creating an Account on Github
- Configuring Git to Submit Commit Information
- Creating a Local Git Repository
- Link the local Git Repository with Remote Github Repository
- Pull Codes from GitHub Repository to Local Repository
- Cloning a Remote Repository
- Making Changes in the Working Directory and Registering the Changes into
- Staging Area and Local Repository
- Push Commits in the Local Repository to Remote (Github) Repository
- Merging Branches
- To Create New Branch into the Github
- To Delete a Local & Remote Branch
- Git Tag
- Developer’s Collaboration in Github.
Jenkins – Continuous Integration & Continuous Deployment (CI/CD) : 3 Days (Weight: 10%)
- What is Jenkins
- Understanding CI/CD Pipelines
- Jenkins Architecture: Master & Slave
- Installing Jenkins Server
- Configuring Jenkins Server [JAVA_HOME, M2_HOME, Git, NodeJS, Docker]
- Testing Jenkins Setup
- Installing Required Plugins [Github Integration, Deploy to
- Adding Slave Node in Jenkins
- Managing Users in Jenkins
- Managing Roles in Jenkins
Apache & Nginx – Web Server for PHP & Python-Based Applications : 3 Days (Weight: 10%)
- Installing & Configuring Apache HTTP Web Server to Host PHP & Python based
- Installing & Configuring Nginx Web Server to Host PHP and Python based
- Install Plugin in Jenkins and Configure it to Deploy Application on HTTPD &
- Nginx Web Server Architecture.
Creating CI/CD Pipeline : 3 Days (Weight: 10%)
- Create and Automate CI/CD Pipeline to Deploy Java-Based Web Application on Tomcat Server.
- Create and Automate CI/CD Pipeline to Deploy PHP-Based Application on Apache HTTPD & Nginx Web Servers.
- Create and Automate CI/CD Pipeline to Deploy Python-Based Application on Apache HTTPD & Nginx Web Server.
Ansible – Automation Tool : 3 Days (Weight: 10%)
- What is Ansible?
- Ansible Architecture
- Installing Ansible
- Setting Up Environment for Ansible
- YAML Basics
- Executing ad hoc command
- Writing Ansible Playbook
- Installing Required Plugins on Jenkins for Ansible
- Configuring Jenkins Server to to Push/Publish War file to Ansible Server
- Using SSH
- Write a Playbook On Ansible Server.
Docker – Containerization Platform : 3 Days (Weight: 10%)
- What is Docker & What is Container
- Containers Vs Virtual Machine
- Benefits of Using Containers
- Installing Docker
- Typical Docker Operations (Search Image, Download Image, List Image,
- Create Container from Image, Expose an Application on a Port, Run a
- Container, Start/Stop a Container, Remove a Container & Image, etc)
- Provisioning Containerized Services
- Attaching Persistent Storage to Containers
- Creating a Dockerfile and Building a Custom Image
- Deploy an Application on Docker Container Using CI/CD Pipeline
- Docker Swarm.
Docker & Ansible Together – Build and Automate Deployment of Application: 2 Days (Weight: 5%)
- Installing Docker on Ansible Server and setting up environment
- Test Pushing Docker Image into the DockerHub Using Command-Line
- Create a Job on Jenkins Server to Create and Upload an Image on
- Docker Hub By Jenkins
- Deploying Container on Docker Host by Ansible Playbook and Jenkinsfile.
- On Jenkins Server, Create a Job to Execute Jenkinsfile on Jenkins Server to
- Create and Upload Docker Image on Dockerhub and deploy to a remote server.
Continuous Testing : 3 Days (Weight: 5%)
- Overview of Continuous Testing
- Software Testing Life cycle
- Different Types of Testing
- Test -Driven Development Approach
- Testing Web Applications using Selenium
- SonarQube Code Analysis
- SonarLint Analysis
Nagios – System Monitoring: 2 Days (Weight: 10%)
- What is Continuous Monitoring
- Introduction to Nagios
- Installing Nagios
- Monitoring Services in Nagios
- What are NRPE Plugins
- Installing NRPE Plugins to Monitor Remote Hosts
AWS Cloud – IaaS : 3 Days (Weight: 10%)
- Virtualization Vs Cloud
- What is Cloud Computing
- Features of Cloud Computing
- Types of Cloud Computing
- Benefits and Risks of Cloud
- Why DevOps on Cloud?
- Launching Cloud Instance in AWS.
- Working with Terraform and Ansible.
- Cloudwatch monitoring.
- EKS setup and run Kubernetes Cluster.