0% found this document useful (0 votes)
13 views16 pages

Devop S

Uploaded by

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

Devop S

Uploaded by

Fikirini Akbar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 16

What is DevOps ?

As the technology landscape continues to shift, the demand for


quicker and more reliable software delivery becomes even more
imminent.
Enter DevOps: an innovation designed to bridge the gap between
software development and IT operations.
What is DevOps, and why is this term being tossed around so
excitedly in IT?
Table of Content

 What is DevOps?
 DevOps Model Defined
 How DevOps Works?
 Why DevOps Matters?
 How to Adopt a DevOps Model?
 DevOps Life Cycle
 7 Cs of DevOps
 DevOps Engineer Job Description
 Why DevOps?
 How DevOps Different From Traditional IT?
 10 Best DevOps Tools
 Benefits of DevOps
 Challenges While Adopting DevOps

Imagine developers and operations teams working together,


merging efforts to deliver high-quality software at breakneck
speed.
That is the promise of DevOps: a set of practices applied in the
real world to break down silos that have for long separated
development from operations.
Through a culture of collaboration and automation,

DevOps seeks to smooth processes, boost productivity, and


result in the speediest time to market.
What is DevOps?

DevOps is a transformative culture and practice that unites


software development (Dev) and IT operations (Ops) teams.
By fostering collaboration and leveraging automation
technologies, DevOps enables faster, more reliable code
deployment to production in an efficient and repeatable manner.

DevOps Model Defined

DevOps is a software development approach that emphasizes


collaboration and communication between development (Dev)
and operations (Ops) teams. It aims to shorten the software
development lifecycle and improve the quality and reliability of
software releases.
Delivery Pipeline

The pipeline represents the different stages that software goes


through before it is released to production. These stages might
typically include:
 Build: The stage where the software code is compiled and
packaged into a deployable unit.
 Test: The stage where the software is rigorously tested to
ensure it functions as expected and identifies any bugs.
 Release: The stage where the software is deployed to
production for end users.
Feedback Loop
The loop indicates that information and learnings from the
production environment are fed back into the earlier stages of the
pipeline. This feedback can be used to improve the software
development process and future releases.

How DevOps Works?

DevOps will remove the “gap” between the development team


and operations team. In many cases these two teams will work
together for the entire application lifecycle, from development and
test to deployment to operations, and develop a range of skills not
limited to a single function.
Teams in charge of security and quality assurance may also
integrate more closely with development and operations over the
course of an application’s lifecycle under various DevOps models.
DevSecOps is the term used when security is a top priority for all
members of a DevOps team.
These teams employ procedures to automate labor-intensive,
manual processes that were slow in the past. They employ a
technological stack and tooling that facilitate the swift and
dependable operation and evolution of apps. A team’s velocity is
further increased by these technologies, which also assist
engineers in independently completing activities (such
provisioning infrastructure or delivering code) that ordinarily would
have needed assistance from other teams.
Why DevOps Matters?

The world has undergone a massive transformation thanks to


software and the Internet. It’s not just about businesses using
software as a tool anymore; it’s about software being at the core
of everything they do. Whether it’s interacting with customers
through online platforms or optimizing internal processes like
logistics and operations, software is the driving force behind it all.
Just as companies in the past revolutionized manufacturing with
automation, today’s companies need to revolutionize how they
create and deliver software to stay competitive.

How to Adopt a DevOps Model?

1. DevOps Cultural Philosophy

Transitioning to DevOps means changing how people work


together. Basically, DevOps is about breaking down the walls
between two different groups: developers and operations.
Sometimes, these groups even become one. In DevOps, they
work together to make developers better at their jobs and
operations more reliable. They focus on talking a lot, making
processes better, and giving customers better service. They take
full responsibility for what they do, often doing more than their
usual jobs to help customers. This often means working closely
with quality assurance and security teams. In companies that
embrace DevOps, they see the whole process of making software
and keeping it running as their job, no matter what their job titles
are.

2. DevOps Practices Explained

DevOps enhances software development and IT operations


through automation and efficient processes. Key practices include
frequent, small updates that reduce deployment risks and allow
quick bug fixes, and using a microservices architecture to
increase flexibility. Continuous Integration and Continuous
Delivery (CI/CD) automate testing and deployment, ensuring
reliable updates. Infrastructure automation tools and continuous
monitoring keep systems responsive and maintain performance.
These practices enable faster, more reliable updates, driving
innovation and customer satisfaction.

DevOps Life Cycle

DevOps is a practice that enables a single team to handle the


whole application lifecycle, including development, testing,
release, deployment, operation, display, and planning. It is a mix
of the terms “Dev” (for development) and “Ops” (for operations).
We can speed up the delivery of applications and services by a
business with the aid of DevOps. Amazon, Netflix, and other
businesses have all effectively embraced DevOps to improve their
customer experience.
DevOps Lifecycle is the set of phases that includes DevOps for
taking part in Development and Operation group duties for quicker
software program delivery. DevOps follows positive techniques
that consist of code, building, testing, releasing, deploying,
operating, displaying, and planning. DevOps lifecycle follows
a range of phases such as non-stop development, non-stop
integration, non-stop testing, non-stop monitoring, and non-stop
feedback. Each segment of the DevOps lifecycle is related to
some equipment and applied sciences to obtain the process.
Some of the frequently used tools are open source and are
carried out primarily based on commercial enterprise
requirements. DevOps lifecycle is effortless to manipulate and it
helps satisfactory delivery.
7 Cs of DevOps

1. Continuous Development
1. Continuous Integration
1. Continuous Testing
1. Continuous Deployment/Continuous Delivery
1. Continuous Monitoring
1. Continuous Feedback
1. Continuous Operations
DevOps Engineer Job Description
Overview
A DevOps Engineer combines software development and IT
operations to improve how software is built and deployed. This
role involves creating and managing systems that help teams
work together more efficiently, ensuring that updates and new
features are released quickly and reliably.

Responsibilities
 Build and Maintain Tools: Create and manage tools that
automate software development and deployment processes.
 Collaborate with Teams: Work closely with software
developers and IT staff to ensure smooth and fast delivery of
applications.
 Monitor Systems: Keep an eye on system performance and fix
any issues that arise to ensure everything runs smoothly.
 Improve Processes: Continuously look for ways to make the
software development and deployment processes more
efficient.
 Ensure Security: Implement practices to keep systems secure
from potential threats.

Why DevOps?

The goal of DevOps is to increase an organization’s speed when


it comes to delivering applications and services. Many companies
have successfully implemented DevOps to enhance their user
experience including Amazon, Netflix, etc.
Facebook’s mobile app which is updated every two weeks
effectively tells users you can have what you want and you can
have it. Now ever wondered how Facebook was able to do social
smoothing? It’s the DevOps philosophy that helps Facebook
ensure that apps aren’t outdated and that users get the best
experience on Facebook. Facebook accomplishes this true code
ownership model that makes its developers responsible that
includes testing and supporting through production and delivery
for each kernel of code. They write and update their true policies
like this but Facebook has developed a DevOps culture and has
successfully accelerated its development lifecycle.
Industries have started to gear up for digital transformation by
shifting their means to weeks and months instead of years while
maintaining high quality as a result. The solution to all this is-
DevOps.

How DevOps Different From Traditional IT?

Traditional IT has 1000s lines of code and is created by different


teams with different standards whereas DevOps is created by one
team with intimate knowledge of the product. Traditional IT is
complex to understand and DevOps is easily understandable.

10 Best DevOps Tools

1. Jenkins
 Purpose: Continuous Integration and Continuous Delivery
(CI/CD)
 Features: Extensive plugin ecosystem, automation of build and
deployment processes, and scalability.
2. Docker
 Purpose: Containerization
 Features: Simplifies application deployment, ensures
consistency across environments, and supports microservices
architecture.
3. Kubernetes
 Purpose: Container Orchestration
 Features: Automates deployment, scaling, and management of
containerized applications.
4. Terraform
 Purpose: Infrastructure as Code (IaC)
 Features: Manages infrastructure across multiple cloud
providers, ensures reproducibility, and supports version control.
5. Ansible
 Purpose: Configuration Management and Automation
 Features: Simple syntax (YAML), agentless architecture, and
scalability.
6. Prometheus
 Purpose: Monitoring and Alerting
 Features: Collects and stores metrics, powerful querying
language (PromQL), and integration with Grafana for
visualization.
7. GitLab
 Purpose: Source Code Management and CI/CD
 Features: Integrated DevOps platform, supports code
versioning, CI/CD pipelines, and project management tools.
8. ELK Stack (Elasticsearch, Logstash, Kibana)
 Purpose: Logging and Analytics
 Features: Real-time data search and analysis, log aggregation,
and powerful visualization capabilities.
9. Azure DevOps
 Purpose: End-to-End DevOps Solution
 Features: Supports CI/CD, project management, and integrates
with various development and monitoring tools.
10. Nagios
 Purpose: Infrastructure Monitoring
 Features: Monitors network services, server resources, and
provides alerts for potential issues.
Benefits of DevOps

1. Faster Delivery: DevOps enables organizations to release new


products and updates faster and more frequently, which can
lead to a competitive advantage.
1. Improved Collaboration: DevOps promotes collaboration
between development and operations teams, resulting in better
communication, increased efficiency, and reduced friction.
1. Improved Quality: DevOps emphasizes automated testing and
continuous integration, which helps to catch bugs early in the
development process and improve the overall quality of
software.
1. Increased Automation: DevOps enables organizations to
automate many manual processes, freeing up time for more
strategic work and reducing the risk of human error.
1. Better Scalability: DevOps enables organizations to quickly
and efficiently scale their infrastructure to meet changing
demands, improving the ability to respond to business needs.
1. Increased Customer Satisfaction: DevOps helps
organizations to deliver new features and updates more quickly,
which can result in increased customer satisfaction and loyalty.
1. Improved Security: DevOps promotes security best practices,
such as continuous testing and monitoring, which can help to
reduce the risk of security breaches and improve the overall
security of an organization’s systems.
1. Better Resource Utilization: DevOps enables organizations to
optimize their use of resources, including hardware, software,
and personnel, which can result in cost savings and improved
efficiency.
Challenges While Adopting DevOps

 High Initial Investment: Implementing DevOps can be a


complex and costly process, requiring significant investment in
technology, infrastructure, and personnel.
 Skills Shortage: Finding qualified DevOps professionals can be
a challenge, and organizations may need to invest in training
and development programs to build the necessary skills within
their teams.
 Resistance to Change: Some employees may resist the cultural
and organizational changes required for successful DevOps
adoption, which can result in resistance, resistance to
collaboration, and reduced efficiency.
 Lack of Standardization: DevOps is still a relatively new field,
and there is a lack of standardization in terms of methodologies,
tools, and processes. This can make it difficult for organizations
to determine the best approach for their specific needs.
 Increased Complexity: DevOps can increase the complexity of
software delivery, requiring organizations to manage a larger
number of moving parts and integrate multiple systems and
tools.
 Dependency on Technology: DevOps relies heavily on
technology, and organizations may need to invest in a variety of
tools and platforms to support the DevOps process.
 Need for Continuous Improvement: DevOps requires ongoing
improvement and adaptation, as new technologies and best
practices emerge. Organizations must be prepared to
continuously adapt and evolve their DevOps practices to remain
competitive.
What is DevOps – FAQs

Is DevOps need coding?

DevOps doesn’t necessarily require extensive coding for all


professionals within the field. However, some level of coding
ability is generally beneficial. Here’s a breakdown:

 Not Primarily Coding: DevOps focuses on improving


processes, collaboration, and automation in software
development and IT operations. While automation often
involves scripting, it’s not the sole emphasis.

 Coding Advantages: Understanding coding languages like


Python, Bash, or YAML allows DevOps engineers to:
o Create automation scripts for repetitive tasks.
o Integrate different DevOps tools.
o Interact with APIs and manage infrastructure on the
cloud.
o Troubleshoot issues by understanding code.

You might also like