Unit 1
Unit 1
DEVOPS
WHAT IS DEVOPS
1. Patrick Debois, who’s often called “the father of DevOps”, coined the word
“DevOps” in 2009.
2. it was formed by combining two words: “development” and “operations”.
3. DevOps is a collaborative way of developing and deploying software.
4. DevOps (a portmanteau of development and operations) is a software
development method that stresses communication, collaboration and
integration between software developers and information technology
(IT) operation professionals.
COLLABORATIVE WAY
1. Collaboration involves a group of people sharing their skills and ideas
with the purpose of achieving a common objective.
2. The workforce with different perspectives, ideas, and expertise work
together to find innovative solutions, which in turn help the organizations
to solve problems in a more efficient manner.
3. Project collaboration enables entire teams to work together through the entirety of
the process.
4. It allows them to be more productive and more aware of each other's
perspectives, needs, and timelines.
5. Even if a team member is across the world, they can still be looped in and
contributing.
INTEGRATION
1. Project integration management is the coordination of all elements of a project.
2. This includes coordinating tasks, resources, stakeholders, and any other project
elements, in addition to managing conflicts between different aspects of a project,
making trade-offs between competing requests, and evaluating resources.
WHAT IS DEVOPS?
5. DevOps is a software development methodology that combines development
(Dev)and operations (Ops).
6. It's a set of tools and practices that automate and integrate the work of these
two
teams.
7. The goal is to improve and shorten the systems development life cycle.
8.It's designed to help organizations deliver applications and services faster than
traditional software development processes.
9. DevOps is not a technology or tool, it is a concept of behaviour, and it is an
extension of Agile Methodology.
WHAT IS DEVOPS?
10. The DevOps is a set of practices designed to overcome the gap between
development, QA and Operations by effective communication and
collaboration, incorporating continuous integration process with
automated
deployment.
11. DevOps helps to increase an organization’s speed to deliver applications and
services.
12. It allows organizations to serve their customers better and compete more strongly
in the market.
WHAT IS DEVOPS?
There are four basic continuous processes in DevOps:
Continuous Integration
Continuous Delivery
Continuous Testing
Continuous Monitoring
RELATION BETWEEN DEVOPS
AND AGILE
1. DevOps is an approach based on agile : business owners, development,
operations, and quality assurance team collaborate to deliver software in a
continuous stable manner.
2. Environment that promotes cross practicality, shared business tasks and
belief .
3. DevOps is a movement that improves IT service delivery agility.
4. DevOps is a culture that promotes better working relationship within the
company
5. DevOps is a set of practices that provides rapid, reliable software delivery
RELATION BETWEEN AGILE
AND DEVOPS
6. Agile Development is an umbrella term for several iterative and
incremental software development methodologies.
7. The most popular agile methodologies include Extreme Programming
(XP),
Scrum, Crystal,Lean Development, and Feature-Driven Development
(FDD).
8. On the other hand, DevOps is about a culture where development and
operations collaborate to give maximum throughput and high-end
outcomes.
RELATION BETWEEN DEVOPS
AND AGILE
9. Similar to Agile, there are ways through which DevOps can be
implemented such
as deep communication and automated deployment.
10.Agile is all about software development while DevOps deals with
software
development and operations.
11. DevOps is an extension of agile methodology.
DIFFERENCE BETWEEN AGILE
AND DEVOPS
WHY DEVOPS IS NEEDED?
Failure, redundancy, data center sites, Thanks to the feedback from the
and storage needs forecasts are distorted developers, predictions on failover,
since there are no feedback accessible replication, disaster recovery, data
from developers of profound center sites, and storage needs are very
application expertise. reliable.
Old Process Devops
The Operations Staff has no idea about The Operations team in DevOps is well
the Production Team success. aware of the progress that the developers
According to their interpretation, the are making.
management team is designing a control The operations team works with
strategy. developers and collectively creates a
monitoring strategy that addresses the
requirements of IT and company.
Advance Technology Performance
Management (APM) tools are also used.
The load checking crashes the The load checking makes the
programme before Go-live. programme a little sluggish before Go-
The publication will be postponed. live. The bottlenecks are resolved easily
by the production team.
The request is released on schedule.
WHY IS DEVOPS USED
One key benefit of DevOps is that it allows teams to work more closely
with business users, who can provide valuable feedback early on in the
process.
This helps ensure that products meet user needs, rather than simply
meeting technical requirements.
Another benefit is that it enables developers and operations staff to
work more closely together.
This leads to better communication across the team and improved
efficiency throughout the development cycle.
WHY IS DEVOPS USED
4. The Benefits of DevOps are as follows:
Shorter Development Cycles and Faster Innovation
Better Collaboration Between Teams
Continuous Delivery of Software
Easy Deployment
Reduced Deployment Failures and Faster Recovery
Maximizes Efficiency with Automation
More Security
Improved Communication and Collaboration
DEVOPS LIFECYCLE
DEVOPS LIFECYCLE
DEVOPS LIFECYCLE
Plan: In this stage, teams identify the business requirement and collect end-
user feedback. They create a project roadmap to maximize the business value
and deliver the desired product during this stage.
Code: The code development takes place at this stage. The development
teams use some tools and plugins like Git to streamline the development
process, which helps them avoid security flaws and lousy coding practices.
Build: In this stage, once developers finish their task, they commit the code
to the shared code repository using build tools like Maven and Gradle.
Test: Once the build is ready, it is deployed to the test environment first to
perform several types of testing like user acceptance test, security test,
integration testing, performance testing, etc., using tools like JUnit, Selenium,
etc., to ensure software quality.
DEVOPS LIFECYCLE
Release: The build is ready to deploy on the production environment at this
phase. Once the build passes all tests, the operations team schedules the
releases or deploys multiple releases to production, depending on the
organizational needs.
Deploy: In this stage, Infrastructure-as-Code helps build the production
environment and then releases the build with the help of different tools.
Operate: The release is live now to use by customers. The operations team at
this stage takes care of server configuring and provisioning using tools like
Chef.
Monitor: In this stage, the DevOps pipeline is monitored based on data
collected from customer behavior, application performance, etc. Monitoring
the entire environment helps teams find the bottlenecks impacting the
development and operations teams’ productivity.
DEVOPS PRINCIPLE
Automation of the software development lifecycle. This includes automating testing,
builds, releases, the provisioning of development environments, and other manual tasks that
can slow down or introduce human error into the software delivery process.
Collaboration and communication. A good DevOps team has automation, but a great
DevOps team also has effective collaboration and communication.
Continuous improvement and minimization of waste. From automating repetitive tasks
to watching performance metrics for ways to reduce release times or mean-time-to-
recovery, high performing DevOps teams are regularly looking for areas that could be
improved.
Hyperfocus on user needs with short feedback loops. Through automation, improved
communication and collaboration, and continuous improvement, DevOps teams can take a
moment and focus on what real users really want, and how to give it to them.
7 C’S OF DEVOPS
Continuous Development
code is written in small, continuous bits rather than all at once,
improves efficiency every time a piece of code is created, it is tested, built, and
deployed into production.
raises the standard of the code and streamlines the process of repairing flaws,
vulnerabilities, and defects.
It facilitates developers’ ability to concentrate on creating high-quality code.
Continuous Integration
4 stages as follows:
Getting the SourceCode from SCM
Building the code
Code quality review
Storing the build artifacts
Continuous Testing
Any firm can deploy continuous testing with the use of the agile and DevOps
methodologies.
Depending on our needs, we can perform continuous testing using automation
testing tools such as Testsigma, Selenium ,LambdaTest etc.
With these tools, we can test our code and prevent problems and code smells, as
well as test more quickly and intelligently.
With the aid of a continuous integration platform like Jenkins, the entire process
can be automated, which is another added benefit.
Continuous Deployment/ Continuous Delivery
Continuous Deployment is the process of automatically deploying an application
into the production environment when it has completed testing and the build stages.
Here, we’ll automate everything from obtaining the application’s source code to
deploying it.