Nothing Special   »   [go: up one dir, main page]

Devops Introduction, Roles and Responsibilities

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 9

Day-1 DevOps Introduction

What is Devops
DevOps is a set of practices that combines software development (Dev) and IT operations
(Ops). It aims to shorten the systems development life cycle and provide continuous delivery
with high software quality.

Devops is not a process it's a prectice to achive and provide faster delivery.

DevOps describes a culture and set of processes that bring development and operations teams
together to complete software development. It allows organizations to create and improve
products at a faster pace than they can with traditional software development approaches. And,
it’s gaining popularity at a rapid rate.

Dev vs DevOps
Why we use Devops

 Quicker Deployment Cycles.


 Increse in product quality.
 Faster Innovation Cycles
 Cost reduction.
Basic requirement as a DevOps

 Programming Concept : Need knowledge for torbleshooting of issue .


 Networking : Network protocols and DNS for connectivity and all software
related part of network.
 Server Administration : all server related knowlege of all type of server windows
and linux like user creation, users and groups, Os installations, Create Partition,
Expert in server managment.
 Web Server : knowledge of all application servers.

Tomcat server
IIS
Ngnix
Wildfly
Apache
JT
Web Logic
Glassfish
 Tools :

Sr no Name Tools
1 Integration Jenkins, Bamboo, Circle-CI, SCM-
CI(Gitlab, Github, Bit bucket)
2 Code Security Sonarqube, Vault, Server Hardning
process(for strong server security)
3 Testing Selenium, JUnit, NUnit, Sonarqube
4 Scripting Python, Windows batch, Shell Script
5 Monitoring Nagios, ELK, Amezon cloud watch, Isinga,
Zabbics

Trending Tools in Devops :


S.No. DevOps Stage DevOps Tools
1. Cloud Technology AWS, Azure, Google Cloud

2. Build Tools Maven , Gradle

3. Unit Testing JUnit, NUnit, Selenium

4. Monitoring Tools Nagios, Isinga, Amezon Cloud Watch, ELK,


App Dynamics.
5. Development Visual Stdio, Visual Stdio Code, Eclipse

6. containerization Docker, Kubernets

What does a devOps engineer do


DevOps is a series of practices and processes that are intended to speed up and
automate aspects of the processes of developing, testing and releasing software,
allowing for the continuous delivery of software and software updates. Whereas
previously software would be developed by developers and then passed onto testers to
test and go back and forth between them, devOps practices aim to simplify this by
integrating these previously separate teams. DevOps engineers are responsible for
facilitating this.

The role of a devOps engineer combines aspects of a technical role and an IT operations
role. While engineers are likely to be involved with coding, and a knowledge of coding
languages and principles is required to find problems and build solutions, this is not the
primary role of a devOps engineer. More senior engineers are likely to be more involved
in the project management and planning side of development.
Roles and responsibilities for devOps engineers
Typical responsibilities for devOps engineers include:

• building and setting up new development tools and infrastructure

• understanding the needs of stakeholders and conveying this to developers

• working on ways to automate and improve development and release processes

• testing and examining code written by others and analysing results.

• ensuring that systems are safe and secure against cybersecurity threats

• identifying technical problems and developing software updates and ‘fixes’

• working with software developers and software engineers to ensure that


development follows established processes and works as intended.

• planning out projects and being involved in project management decisions.

Common DevOps Roles and


Responsibilities
Now that we’ve looked at many of the common principles of DevOps, we can start to see how
they manifest themselves in DevOps roles and responsibilities. Let’s go through a number of
common DevOps duties and break down how these processes benefit engineering and IT
teams.
Application and Infrastructure Planning, Testing and
Development
The entire DevOps team is in charge of application and infrastructure planning, testing and
development. Sharing the responsibility for the development and release pipeline leads to more
reliable services.

Maintaining CI/CD Pipelines


Being part of a DevOps team means we have a responsibility for building a CI/CD pipeline and
optimizing processes.

Automation Implementation
automation is a core principle of DevOps. It’s the responsibility of devops to automate routine
manual task or automate the process.

On-Call, Incident Response and Incident


Management
As a devops prospective our responsibility to provide 24*7 service during any production issue
or major releases. and immediate response to any production issue.

Monitoring
DevOps teams are responsible for the implementation of actionable monitoring solutions. The
organization needs to collect data and know how they can take action with it. The DevOps team
is responsible for provide data like server utilization, major logs and server monitoring.
Monitoring is just one small step into building highly observable systems – but it’s an important
start for building reliable systems.

Provide RCA
DevOps teams are responsible for provide production issue RCA and provide reason for issue
occur on production server.
DevOps lifecycle: -

Plan
Monitor Code

Operate Build

Deploy Test
Integrate

The cycle is divided into 5 stages: -


DevOps Lifecycle
1. Continuous Development: - This stage involves committing
code to version control tools such as Git, BitBucket etc for maintaining the different
versions of the code, the tools like Ant, Maven, Gradle for building/packaging the code into
an executable file that can be forwarded to the QA’s for testing.
2. Continuous Integrating: - The stage is critical point in the whole DevOps
lifecycle. It deals with integrating the different stages of the DevOps lifecycle, and is
therefore plays an important role in automating the whole DevOps process.
3. Continuous Deployment: - In this stage, the code is build, after
build is successful, then the output files in form of war in java or .dlls in .Net are then
deployed on the respective servers on the the application is hosted or on which you want to
host new application.
4. Continuous Testing: - The stage deals with automated testing of the application
pushed by the developer. If there is an error, the message is sent back to the integration
tool, this tool in turn notifies the developer of the error. If the test was a success, the
message is sent to integration tool which pushes the build on the server.
5. Continuous Monitoring: - The stage continuously monitors the deployed
application for bugs or crashes. It can be setup to collect user feedback. The collected data
is then sent to the developers to improve the application.

You might also like