****** DevOps Training : https://www.edureka.co/devops ******
This Introduction To DevOps Tools tutorial explains the popular DevOps tools which are actively used in industry and why you should learn them. The following topics have been covered in this tutorial:-
1. Software Development Challenges *Agile
2. DevOps: Need, Rise & Tools involved
3. Git (SCM): Need, Working & Use-case
4. Selenium, TestNG & Maven (CT): Need & Working
5. Jenkins (CI): Need, Working & Use-case
6. Docker (CD & Containers): Need & Working
7. Ansible (CD & CM): Need & Working
8. Structured DevOps Training at Edureka
Check our complete DevOps playlist here (includes all the videos mentioned in the video): http://goo.gl/O2vo13
2. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
Agenda For The Session
i. Software Development Challenges *Agile
ii. DevOps: Need, Rise & Tools involved
iii. Git (SCM): Need, Working & Use-case
iv. Selenium, TestNG & Maven (CT): Need & Working
v. Jenkins (CI): Need, Working & Use-case
vi. Docker (CD & Containers): Need & Working
vii. Ansible (CD & CM): Need & Working
viii. Structured DevOps Training at Edureka
3. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
Software Development Challenges
Primary factor leading to challenges during software development is the Silo between development & operations.
No legacy
systems
Errors' in
Production
environment
Tool
turbulence
DEV OPS
Need
automation
Monitoring
is tedious
Fix your
bugs
4. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
How Does Software Development Take Place?
So, What Is The Solution?
5. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
DevOps Strategy
DevOps involves Continuous Development, Continuous Testing, Continuous Integration, Continuous
Deployment & Continuous Monitoring of the software throughout its development lifecycle.
Development Operations
DevOps
6. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
Lifecycle Phases In DevOps
Continuous
Development
Continuous Testing
Continuous Integration
Continuous
Monitoring
Continuous
Deployment
8. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
DevOps Tools In Context
Should we
learn all
these Tools??
NOPE !!
Learning 1 Tool from
various phases is
good enough
11. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
What Is Git & Its Explanation
Git is a Distributed Version Control System for tracking changes in computer
files and coordinating work on those files among multiple users.
12. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
Benefits Of Using Git
Re v i s i o n
C o n t r o l
C o l l a b o r a t i o n
B a c k u p
A n a l y s i s
01
02
03
04
13. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
Case Study: Why & How Orbitz Moved To Git
1. Over 40 feature teams working in parallel
2. Developers use a centralized VCS for
working on same code base
3. The VCS was not scalable
4. Developer to code Deployer ratio is 50:1
Challenges
Orbitz Worldwide is an online travel site operating in over 180 countries.
Downtime of even 1 second will result in loss of millions of dollars.
Git’s Distributed VCS helped in Scaling systems globally
Git helped in achieving increased automation
Git allows developers to branch and merge flexibly
Git helped decrease build time by more than 20%
Implementation of Stash, a Git repo management solution
14. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
How Does Software Development Take Place?
Maven, Selenium & TestNG
15. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
Tools Used For Continuous Testing In DevOps
DevOps Lifecycle →
Process of automating the execution of test cases is called Automation Testing.
Scheduling Automation Tests after every feature update is called Continuous Testing.
16. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
Maven For CT
• Helps in easily managing the project structure, its dependencies & test cases
• Can automatically download the necessary files & dependencies from the
repository
• These details need to be specified in the pom.xml file
17. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
Selenium For CT
• MAIN TOOL for testing the web application
• But has limitations like: Test case management & Report generation
• Hence tools like Maven, TestNG & Jenkins are integrated with it
SeleniumWebDriver
18. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
TestNG For CT
• Used with Selenium WebDriver for overcoming limitations:
• Test Annotations for managing Test Cases
• Generates structured Test Reports
• Helps perform Unit Testing
19. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
Jenkins For CI
• Tool responsible for Continuous Testing
(Automates Test Execution)
• Schedules builds and deploys the code to prod or staging server
• Integrates seamlessly with most testing tools
Jenkins
22. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
What Is Jenkins?
Jenkins is a Continuous Integration
tool for automation various stages
in DevOps lifecycle. Automation is
achieved by using Plugins to various
tools involved in the process.
23. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
Working Of Jenkins
Jenkins
Server
Production
Prepares a build
TestingDeveloper 1
Developer 2
Developer 3
Source Code
Repository
Feedback
1. Developers commit changes to the source code
2. Continuous Integration server pulls that code and triggers a build
3. The build application is then deployed on the testing server for testing
4. After testing the application, it is then deployed on the production server
5. The concerned teams are constantly notified about the build and test results
24. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
Jenkins Case Study: Nightly Builds At Nokia
1. In Nokia, a process called Nighly Build was used.
2. In this process, every night an automated system pulls
the code added to the shared repository throughout
the day and builds that code.
3. Since the code that was built at night was quite large,
locating and fixing of bugs was a real pain.
Challenges
25. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
Jenkins Case Study: Nightly Builds At Nokia
1. Nokia adopted Continuous Integration (CI).
2. As a result, every commit made to the source code in
the repository was built.
3. If the build result shows that there is a bug in the code,
then the developers only need to check that particular
commit.
Solution
26. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
How Does Software Development Take Place?
Continuous Deployment
Using Docker
27. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
What Is Docker?
Docker is a Containerization platform which packages your application & all its dependencies together in the form of
Containers, to ensure that your application works seamlessly in any environment be it Development/ Test/ Production.
• RAM consumed by containers is << RAM consumed by VMs.
• Easily run applications by packaging them into containers.
• Containers are light-weight; can be easily shared via Docker Hub.
BENEFITS
28. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
How Do We Create Docker Containers?
Docker files are used to build a Docker image & that image will also contain all the project codes.
The same Docker image can be used to spin ‘n’ no of containers, each with modifications to the underlying image.
This final image can then be uploaded to Docker Hub & shared with other collaborators for testing/ deployment.
29. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
How Does Software Development Take Place?
Continuous Deployment
Using Ansible
30. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
What Is Ansible?
Ansible is a Configuration Management, Deployment & Orchestration tool which automates
your entire IT infrastructure. It is a “Push-based” configuration management tool.
31. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
Features Of Ansible
Po w e r f u l
S i m p l e
A g e n t l e s s
E f f i c i e n t
01
02
03
04
32. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
How Does Software Development Take Place?
About Edureka’s
DevOps Course
34. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
DevOps Course at Edureka – Modules 1 & 2
DevOps Essentials
Version Control With Git
In this module, you will learn the reasons for the evolution of DevOps, what is DevOps, the various skills and
market trends in DevOps, introduction to the delivery pipeline in DevOps and the DevOps ecosystem.
In this module, you will learn about Source Code Management using Git
35. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
DevOps Course at Edureka – Modules 3 & 4
Continuous Integration
with Jenkins
Continuous Testing with
Selenium
In this module you will learn about Continuous Integration with Jenkins. You will also learn Plugin Management in
Jenkins and various scenarios of Building Delivery Pipeline.
This module explains what is Selenium and how Selenium works. It also explains how to integrate it with Jenkins
36. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
DevOps Course at Edureka – Modules 5 & 6
Configuration Management
using Puppet
Configuration Management
with Ansible
This module explains what is Configuration Management and Deployment, and how to do that with Puppet
In this module, you will learn to install Ansible and configure ansible roles. You will also learn to write playbooks
and finally execute ad-commands using Ansible
37. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
DevOps Course at Edureka – Modules 7 & 8
Containerization using
Docker
This module introduces Docker to readers, the core concepts and technology behind Docker. Learn in detail about
container and various operations performed on it.
In this module, you will learn to integrate different containers using docker.
Docker Ecosystem and
Networking
38. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
DevOps Course at Edureka – Modules 9 & 10
Virtualization using
Kubernetes
In this module, you will learn the basics of Kubernetes and its integration with Docker.
In this module, learn how to continuously monitor your tasks using various plugins and implementing
Nagios Commands
Continuous Monitoring
using Nagios
39. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
WebDriver vs. IDE vs. RC
➢ Data Warehouse is like a relational database designed for analytical needs.
➢ It functions on the basis of OLAP (Online Analytical Processing).
➢ It is a central location where consolidated data from multiple locations (databases) are stored.
40. DEVOPS CERTIFICATION TRAINING www.edureka.co/devops
What Is Git & Its Explanation
Git is a Distributed Version Control System for tracking changes in computer
files and coordinating work on those files among multiple users.