0% found this document useful (0 votes)
15 views5 pages

Comprehensive DevOps Guide and Tools

DevOps is a cultural and operational framework that integrates development and operations to enhance efficiency and reduce errors in software delivery. The document outlines the history, advantages, and processes of DevOps, including continuous integration, delivery, and deployment, as well as the Agile methodology and ITIL framework. It also discusses the roles within Scrum and Kanban methodologies, emphasizing the importance of automation and collaboration in the software development lifecycle.

Uploaded by

lemel52930
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views5 pages

Comprehensive DevOps Guide and Tools

DevOps is a cultural and operational framework that integrates development and operations to enhance efficiency and reduce errors in software delivery. The document outlines the history, advantages, and processes of DevOps, including continuous integration, delivery, and deployment, as well as the Agile methodology and ITIL framework. It also discusses the roles within Scrum and Kanban methodologies, emphasizing the importance of automation and collaboration in the software development lifecycle.

Uploaded by

lemel52930
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

DevOps;is the combination of two words, one is Development and other is Operations.

It is a culture to
promote the development and operation process collectively;The DevOps tutorial will help you to learn
DevOps basics and provide depth knowledge of various DevOps tools such as Git, Ansible, Docker, Puppet,
Jenkins, Chef, Nagios, and Kubernetes;Why is DevOps used;Before going further, we need to understand why
we need the DevOps over the other methods;The operation and development team worked in complete
isolation;After the design-build, the testing and deployment are performed respectively. That's why they
consumed more time than actual build cycles;Without the use of DevOps, the team members are spending a
large amount of time on designing, testing, and deploying instead of building the project;Manual code
deployment leads to human errors in production;Coding and operation teams have their separate timelines
and are not in synch, causing further delays;DevOps History;In 2009, the first conference
named DevOpsdays was held in Ghent Belgium. Belgian consultant and Patrick Debois founded the
conference;In 2012, the state of DevOps report was launched and conceived by Alanna Brown at Puppet;In
2014, the annual State of DevOps report was published by Nicole Forsgren, Jez Humble, Gene Kim, and others.
They found DevOps adoption was accelerating in 2014 also;In 2015, Nicole Forsgren, Gene Kim, and Jez
Humble founded DORA (DevOps Research and Assignment);In 2017, Nicole Forsgren, Gene Kim, and Jez
Humble published "Accelerate: Building and Scaling High Performing Technology Organizations”.

Agile Development Model;An agile methodology is an iterative approach to software development. Each
iteration of agile methodology takes a short time interval of 1 to 4 weeks. The agile development process is
aligned to deliver the
changing business
requirement. It
distributes the
software with faster
and fewer changes;The
single-phase software
development takes 6 to
18 months. In single-
phase development, all
the requirement
gathering and risks
management factors
are predicted
initially;The agile
software development process frequently takes the feedback of workable product. The workable product is
delivered within 1 to 4 weeks of iteration;Advantages;Focus on Customer Value;Enhanced Team Morale and
Motivation;Stakeholder Collaboration;Early
and Continuous Delivery;Delivering high-
quality software;Disadvantages;Lack of
Predictability;Dependency on Customer
Availability;Scaling Agile;Dependency on
Team Dynamics;Increased Overhead.
(ITIL)Information Technology
Infrastructure Library;It is a framework
which helps the IT professionals for
delivering the best services of IT;The main
motive of this framework is that the
resources are used in such a way so that
the customer get the better services and
business get the profit;Service Strategy;The main aim of this stage is that it offers a strategy on the basis of
the current market scenario and business perspective for the services of IT;This stage mainly defines the plans,
position, patters, and perspective which are required for a service provider; Following are the various essential
services or processes;Financial Management; Demand Management;Service Portfolio Management;Business
Relationship Management;Strategy Management; Service Design;This stage provides the blueprint for the IT
services. The main goal of this stage is to design the new IT services. We can also change the existing services
in this stage;Following are the various essential services or processes; Service Level Management;Capacity
Management;Availability Management;Risk Management;Service Continuity Management; Service Catalogue
Management; Information Security Management; Supplier Management;Compliance Management;
Architecture Management;Service Transition ;The main goal of this stage is to build, test, and develop the
new or modified services of IT. This stage of service lifecycle manages the risks to the existing services. It also
certifies that the value of a business is obtained;There are following various essential services or
processes;Change Management;Release and Deployment Management;Service Asset and Configuration
Management;Knowledge Management;Project Management;Service Validation and Testing;Change
Evaluation;Service Operations;This stage provides the guidelines about how to maintain and manage the
stability in services of IT, which helps in achieving the agreed level targets of service delivery;This stage is also
responsible for monitoring the services of IT and fulfilling the requests. In this stage, all the plans of transition
and design are measured and executed for the actual efficiency;There are following various essential services
or process;Event Management;Access Management;Problem Management;Incident Management;Application
Management;Technical Management; Continual Service Improvement;This stage helps to identify and
implement strategies, which is used for providing better services in future;objectives or goals;It improves the
quality services by learning from the past failures;It also helps in analyzing and reviewing the improvement
opportunities in every phase of the service lifecycle;It also evaluates the service level achievement
results;There are following various essential services or processes; Service Review;Process
Evaluation;Definition of CSI Initiatives;Monitoring of CSI Initiatives;Advantages of ITIL;it helps in increasing the
customer satisfaction;It allows managers to improve the decision-making process;used for creating the clear
structure of an organization;It helps managers by controlling theinfrastructure services;It improves the
interaction between the customers and the service provider;service delivery is also improved;It establishes the
framework of ITSM for the organization.

DevOps process flow;is all about agility and automation. Each phase in the DevOps lifecycle focuses on closing
the loop between development and operations and driving production through continuous development,
integration, testing, monitoring
and feedback, delivery, and
deployment;Continuous
development;is an umbrella term
that describes the iterative
process for developing software
to be delivered to customers. It
involves continuous integration,
continuous testing, continuous
delivery, and continuous
deployment; Continuous
integration(CI);is a software
development practice commonly
applied in the DevOps process
flow. Developers regularly their
code changes into a shared
repository where those updates
are automatically tested; Continuous testing;is a verification process that allows developers to ensure the
code actually works the way it was intended to in a live envionment. Testing can surface bugs and particular
aspects of the product that may need fixing or improvement, and can be pushed back to the development
stages for continued improvement;Continuous monitoring and feedback;Throughout the development
pipeline, your team should have measures in place for continuous monitoring and feedback of the products
and systems. Again, the majority of the monitoring process should be automated to provide continuous
feedback;Continuous delivery (CD);is the next logical step from CI. Code changes are automatically built,
tested, and packaged for release into production. The goal is to release updates to the users rapidly and
sustainably;Continuous Deployment;For the seasoned DevOps organization, continuous deployment may be
the better option over CD. Continuous deployment is the fully automated version of CD with no human (i.e.,
manual) intervention necessary.

Continuous delivery;is an approach where teams release quality products frequently and predictably from
source code repository to production in an automated [Link] organizations release products manually
by handing them off from one team to the next, which is illustrated in the diagram below;Typically, developers
are at the left end of this spectrum and operations personnel are at the receiving end. This creates delays at
every hand-off that leads to frustrated teams and dissatisfied customers. The product eventually goes live
through a tedious and error-prone process that delays revenue generation.

Release management;is the process of overseeing the planning, scheduling, and controlling of software builds
throughout each stage of development and across various environments. Release management typically
included the testing and deployment of software
releases as well;Release management has had an
important role in the software development lifecycle
since before it was known as release management.
Deciding when and how to release updates was its own
unique problem even when software saw physical disc
releases with updates occurring as seldom as every few
years;Now that most software has moved from hard
and fast release dates to the software as a
service (SaaS) business model, release management has
become a constant process that works alongside
development. This is especially true for businesses that
have converted to utilizing continuous delivery
pipelines that see new releases occurring at blistering rates. DevOps now plays a large role in many of the
duties that were originally considered to be under the purview of release management roles;Advantages;
Deployment duties have shifted onto the shoulders of the DevOps teams;This doesn’t remove the need for
release management;It modifies the data points that matter most to the new role release management
performs;It acts as a method for filling the data gap in DevOps;The planning of implementation and rollback
safety nets is part of the DevOps world.
Scrum;is a framework used by teams to manage work and solve problems collaboratively in short cycles.
Scrum implements the principles of Agile as a concrete set of artifacts, practices, and roles;Scrum lifecycle;The
entire lifecycle is completed in fixed time periods called sprints. A sprint is typically one-to-four weeks long;
There are three key roles in Scrum;the product owner, the Scrum master, and the Scrum team;Product
owner;The product owner is responsible for what the team builds, and why they build it. The product owner is
responsible for keeping the backlog of work up to date and in priority order;Scrum master;The Scrum master
ensures that the Scrum
process is followed by the
team. Scrum masters are
continually on the lookout for
how the team can improve,
while also resolving
impediments and other
blocking issues that arise
during the sprint. Scrum
masters are part coach, part
team member, and part
cheerleader;Scrum team;The
members of the Scrum team
actually build the product.
The team owns the
engineering of the product,
and the quality that goes with it;product backlog;is a prioritized list of work the team can deliver. The product
owner is responsible for adding, changing, and reprioritizing the backlog as needed;sprint planning;the team
chooses backlog items to work on in the upcoming sprint. The team chooses backlog items based on priority
and what they believe they can complete in the sprint;Execute the sprint;Once the sprint starts, the team
executes on the sprint backlog;The team decides how to manage its own work;Scrum defines a practice called
a daily Scrum, often called the daily standup;The daily Scrum is a daily meeting limited to fifteen minutes.
Kanban;is a Japanese term that means signboard or billboard. An industrial engineer named Taiichi Ohno
developed Kanban at Toyota Motor Corporation to improve manufacturing efficiency; Principle;Adopting
Kanban requires adherence to some fundamental practices that might vary from teams previous methods;
Working;Understanding development team status and work progress can be challenging;Work progress and
current state is easier to understand when presented visually rather than as a list of work items or a
document;Visualization of work is a key principle that Kanban addresses primarily through Kanban
boards;These boards use cards organized by progress to communicate overall status;Visualizing work as cards
in different states on a board helps to easily see the big picture of where a project currently stands;as well as
identify potential bottlenecks that could affect productivity.

Delivery Pipeline;A DevOps pipeline is a set of automated processes and tools that allows both developers
and operations professionals to work cohesively to build and deploy code to a production environment.
While a DevOps pipeline can differ by organization, it typically includes build automation/continuous
integration, automation testing, validation, and reporting. It may also include one or more manual gates that
require human intervention before code is allowed to proceed;Continuous is a differentiated characteristic of
a DevOps pipeline. This includes continuous integration, continuous delivery/deployment (CI/CD), continuous
feedback, and continuous operations. Instead of one-off tests or scheduled deployments, each function occurs
on an ongoing basis;Considerations for building a DevOps pipeline;Since there isn’t one standard DevOps
pipeline, an
organization’s
design and
implementation of
a DevOps pipeline
depends on its
technology stack,
a DevOps
engineer’s level of
experience,
budget, and more.
A DevOps
engineer should
have a wide-
ranging knowledge
of both
development and
operations, including coding, infrastructure management, system administration, and DevOps toolchains;
Plus,each organization has a different technology stack that can impact the process.

You might also like