0% found this document useful (0 votes)
17 views

Techknowledge DevOps Unit 1

Uploaded by

sandeshdandgem67
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views

Techknowledge DevOps Unit 1

Uploaded by

sandeshdandgem67
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 15

Intro duc tion to DevOps

~ -:-;:;:" :p1~~ S!t'r:ii':!ii,:l-il :. , · ··· · - ,


t What is De~?' R~1~, of~Q-~ Qpl.:'E~l{ ( ,___ -_: -· - · ,; ~po~~lbi!itYi ,fntr:~duction to Continuous
f . . ' ' ' . •' -',:--,' ·~{-••':- .~\, '--~\.
i Integration an~ Conti~,~ :t;)e)i,, ·- mlo.n·of oarriers in JT departments,
f Process aut~mati~,,~tti?~,~~t "':, (~: -ia'~~j :w-ho
Are ln'volved in
Chqtng~:thi:,;,C~~
~-[)evOps? ,_ < >i~i~t;is· _; Defining the
; De~n t Pip~in~t- ~;Jiii~~~, '. ·Ses:~,Piacti~es for
:t 1
,

t Operation~ . . . -\.--:-.:,:·: S,~2~~~~;~~:~{~:t} :.>- • - . -

1.1 What is DevOps?

• DevOps is the combinatio n of Development (Dev) and operations (Ops) which is an umbrella
term that describes the operation of a team collaborating throughout an entire programmi ng
production process - from the desig~ through t~e development' stages. It's a combination of
tools and philosophies that increase a team's capability to produce results at high efficiency.

• Devops allows a single team to handle the entire application lifecycle, from developme nt to
testing, deployment, and operations . DevOps helps you to reduce the disconnection between
software developers, quality assurance (QA) engineers, and system administra tors.

• Devops helps organizatio ns to increase the speed of delivering the software or applications
and services. It also allows organizations to serve their customers better and compete more
strongly in the market DevOps has become one of the most valuable business disciplines for
enterprises or organizations. With the help of ~evOps, quality, and speed of the application
delivery has improved to a great extent
WhyDevOps?

_We need to l!_nderstand w~y we need DevOps over the other method~ .
• The development (Dev) and operations (Ops) team worked in complete isolation.
lntroducncn to Ot,'1);.,
1·2
Introduction to orvop$ l ·l
are spending a large amoun t of t:nt o,i lntrorl11l"t1on t g D!!vOps
D vO s. the team members
Wirhout the use of e p . d fbulldlng the project.
In C~i:irs. there Is mor-e s,~1pe for frl.'qu,nt
ch.ini,;t•s In the cod!!, whkh lnd odl'" contin
d uous
designing. testing, an dep loylng instea o ,utun1at1ng. .ind deploymtonr. Ifs not e'\'.pect
ed to write th e coJt rlghr from scra t, h
. and d~ploymen t are performed respectively. That's "'t." hut
Aller the design-build, the testing . 1 , ctu:-..,s;ni the right co mbm.lt1on or c<>d1111
t how ii.> lntt'. gr:ite iCV<!r.d "lcm<'nls uf SQL
r . time than actual build cyc cs. .,., \:"Httn
data Is
they c.onsume d mo t 1 t .1s .1 p.irt ('If OevOps tng,nt er rQlt!
ent leads to hum an errors In production,
Manual code drploym A O-!'v0ps engmt t-r hds to a'Ssod .ite with
lines iilnd are not m synch, CiilJSl~ • tl1e tt.tm hl luntlll' th f! challrn&"s arblng
In the
Coding .ind operJtion reams h·ave their separate time ~ , ,)ling or srrirtrnjt p.trt wh i...-h mdudc>s libr.in
l'\ ,nd softwa re developmtnt ki ts to run
s1,ftware on ,·..iril>us OS and for dt>ph, ymtnt the
further dd;1ys.
D,e~1.1 r s en!Iln ~r ha~ to h.mdle ro<lto
1.2 Role of O'!vOps Engineer which h,n to flt .1cro:.s multl •ten,rnt rnviro
nmcnt s
md11d1ng cloud. Henre a Dt1vOps inttlne
.
er role Is more nr a crt>~s funtUonal rol~ which
DrvOps culture Is lntroduu!d to bulid hetter communication, tmprovtd collah-Or,H1;-,n, .l~ rn o1nAl(I'~ .a!'d hAnJll's sonw., r, th.it's huilt
,1nd deploy.-d aero.,, challenv,init appllrat'lons.
a •llc rdation h<'twccn the software . d elnpment te.m .nd Oprrat ions tea:n Tnma
cv . lly. t!-t
g t ' l .3_ _ D_e_ve_l_o.:..~- r _R_es-'po
'-·- n_s_ib
_i_li_ty,.___ _ _ _ _ _ _ _ _ _ _ _
n.ilc of 3 DcvOps eni;lnt•l'r Is no as ca,y as It appt,1rs. It Involve, lookinji: into seal"l.e<;1 _ _ __
tntcgrat1,H1.inwng the tC'ams. ~ucccs.~ fullY 3 nd contlnuou\ly dep1oyin1,: the code
DevOp'i tn~i ne,rs nred to be able to multlt
A OevOps englnrtr introduces ptoc .e~~cs, t isk, dcmonstrall! f1<'xlbility, and deal with
too § , and mcthodnlc,giu to b.alantf nf"-15 d1ffl'rent rnu.mons at a time. Spefific.1lly . .i
many
throughout the softw,ire devclopmrnt hfe cyclt!. o..vOpq ,nglnt er's re~pnM lh1lltlfS Include:
from cod mg and dcp!ov mtnt to m.1mt,n,H1ct
Docume nt..1tio n : Write'i ,peciflc.Hlons ;ind
and upd,11rs. docum,nt,Hion for the !.erver-sldr ftature s.
OevOps t'nstneer ls ont of th<' most challenging Systems analysis : An.ilYLes the technology
roles and often org,mt7Jt~ons find it d:t:f.cul curren tly bf'iOI( used and developi plans and
t
to find an rflklcnt [)t-vOp s engint tr. A Or.vOp proces'ieS for improvement and expan~ion.
s tongmttr must h,l\'e a strong p.sston The DevOp, engineer provid es support for
for urgent
stripting and coding. has experti~I' in handlin analytlc nef'ds
g drplo)ment aJtoman~1n. mfnstructure
JUtomanon and ability to handle the ve~ion control
. Develo pment : Develop<;, codes, builds, Install
s. configllres. and maintains IT solutio ns.
DtvOps 1:ngmct'rs mu.st to h,wc a knowledgr
about serYt'r less compunng such as version Projec t planni ng : Part1cipate'i in projec
contr..il , testing, lntrgrJtion and dtploymtont method t planning mt'etlngs to share their knowledge
s. A Dt'\-Ops t'npn ttr 1s sub:ect to fact of
system options, ris k. impact, and cost~
ct'lnonuous challtng,..s when it comes tn sel"\·tr vs. benefits. In addition, DevOps engine
less mtegr.anon, depklyment. te<:h:1ology .a~d ers
Incident management They need to hani excelle communicate operational requirements and
nt comple~ soh·:n g skills must have d'e development forecasts.
.ibili:y to :hrnk out of the box, and cunous . Testing : Tests code. processe1. and deploy
ments to Identify ways to streamline
and
It's tmµomm to undersi-and that a DevOps engme minimize errors.
er 1s formed out of the gro\,in g ntt<! 5 of
rhe business to get a hetter hold of the cloud Dep loyme nt : Uses configuration man.gement
infrastructure in a hybrid environment software to automatically deploy updates and
Org.rni2.itlons implementing Oe\.'{)ps skills yield
better a<l,•antages such as spend re!art,·e1' fLxes into the production enviro nment
spend less time on configuration management.
deploy application faster and freque:irly. Maintenance and troubl eshoo ting :
D~vOps Engineer is responsible fur handling Performs routi ne appl.ication ma intenance
the IT infrastructure as per the business neecs to ensure
the produc tion enviro nment runs smoot
of the code which ran be deployed in .;i hybrid hly. Develops maintenance requirements
multi-tenant emiro nmen t wh ich needS and
}>rocedures.
continuous monitoring of the performance.
Dt-vOps engine er must be av..u-e or
&.t Perfor mance manag ement : Recommends
development tools which write the new code performance enhancements by performing
or enhanc e the existing code. gap
analysis, identifying alterna tive solutions, and
assi sting with modifications.

,..........
PuDHC ~tlOJIS
_ Introduction to Devops
14 1-5 Introduction to DevOps
Introduction to Devops f on and Continues Delivery
Introduction to Continues lntegra I 8 . Getting started with continuous integration
1.4 ----------- The fou nd ational dependency of CI is a version control system (VCS. Som,e popular VCSs
Policies -----
. are Git, Mercurial, and Subversion.
d rvery (CD) are the processes that are used to
. . f (CI) and continuous e 1 .
continuous mtegra ion . . lly it lays out some practices to follow in Ord Once version control is in place, finding a version control hosting platform is the next
dd I our application. Bas1ca , er
build, package, an ep oy Y . d f get to your users and ultimately generate value. move. MoS t modern version control hosting tools have support and features built in
for the code you write to more qmckly an sa eIy for
Cl. Some popular version control hosting platforms .are Bitbucket, Github, and Gitlab.
·
1_4 _1 Continuous Integration
After version control has been established on the project, integration approval steps
.. th s of automating the integration of code changes frorn
Continuous integration is e proces should be added. The most valuable integration approval step to have in place
is
. . ftw proi·ect This extends beyond development teams to the
multiple contributors m a so are automated tests. Adding automated tests to a project can have an initial cost overhead.
A
rest of the organization. testing framework has to be installed, then test code and test .cases must be written
by
coordinate when to sequentially launch features and fixes and developers.
For examp1e, pro duc t teams
which team members will be responsible. It's a primary DevOps best practice, allowing
Some ideas for other, less expensive CI approval mechanisms to add are syntax checkers,
developers to frequently merge code changes into a central repository where builds and tests
code style formatters, or dependency vuln~rability scans.
then run. Automated tools are used to assert the new code's correctness before integration.
1.4.2 Continues Delivery
A. The importance of continuous integration

In order to understand the importance of CI, it's helpful to first discuss some pain points Continuous delivery is an organizational methodology that brings together engineering
• and
that often arise due to the absence of Cl. Without CI, developers must manually non-engineer ing teams like design, product, and marketing to deliver a product
coordinate and communicate when they are contributing code to the end product This Environments without CD encourage "over the wall" behavior where developers focus
on the
coordination extends beyond the development teams to operations and the rest of the QA team as the primary user experience. It means the "trunk" branch of your repository
is in
organization. Product teams must coordinate -when to sequentially launch features and a "deployable" state at all times.

fixes and which team members will be responsible. Continuous deployment allows code changes to be automatically deployed into production

• The communication overhead of a non-CI environment can become a complex and when they are made, either hidden behind a feature flag, deployed to a small percentage
of
entangled synchronization chore, which adds unnecessary bureaucratic cost to projects. customers, and/or easily rolled back. This gives teams greater flexibility to respond
to
This causes slower code releases with higher rates of failure, as it requires developers to changing markets and customer demands since teams can react to customer feedback
and
be sensitive and thoughtful towan:ls the integrations. These risks grow exponentially as rapidly deploy and validate new features. They can also easily rollback features, allowing

the engineering team and codebase sizes 1ncrease. teams not to be hampered by breaking the build.

Wi th out a robuSt CI pipeline, a disconnect between the engineering team and the re 5t of Continuous deployment, is embraced and promoted by such large organizations as Netflix
but
the organization can form · c ommumcat1on
· • between product and engineering not commonly adopt~d (or required) in most smaller companies. This is because
. can be
cumbersome. Engineering becomes a black box which the rest of the team inputs continuously deploying new features into a production environment requires a high degree
of
requirements and features and maybe gets expected results back. It will make it harder confidence that new code has been thoroughly tested and can be deployed safely (e;g,
behind°
for engineering to estim t ti a feature togglel: So, unless your organization deploys many times a day it may not be
a e me Of dehvery
• on requests because the time to integrate worth
new changes becomes an unknown risk. investing in the processes that support this approach. ·

TtcllKJlOlll~! TtdlKn1wld1t
pub II cat I PU b II Cat IO n S
Introduction to Devops Introduction to Devops
1-6 1-7 Introduction to DevOps
(ntrodus'ti00 to Devops • in IT Departments
. o·tution
1 of Barriers --- • Autonomous teams are another important aspect of DevOps. For the development and
l.S oevOps Culture •
operations teams to collaborate effectively, they need to make decisions and implement
. . change that seeks to bridge traditional, siloed
. h to orgamzationa 1 . changes without a cumbersome and lengthy approval process. This involves handing over
DevOps is an agile approac s es that facilitate greater collaboration
. . between teams and establish new proce s . . . trust to teams and establishing an environment where there is no fear of failure. These teams
d1v1des . t ls and agile engineering practices, these are not
. ade possible by new oo should have the right processes and tools in place to make decisions faster and easier, for
While DevOps is m · Without the right mindset, rituals, and culture, it's
enough to gain the benefits of DevOps. each level of risk to the customer.
hard to realize the full promise of DevOps.
For example, a typical development workflow might require engagement from several
What is DevOps Culture? contributors on different teams to deploy code changes. The developer makes a code change
1.5.1
involves closer collaboration and a shared responsibility and pushes it to a source control repository, a build engineer builds and deploys the code to a
At its essence, a DevOps cu!tu re . . .
tions for the products they create and mamtam. This helps test environment, a product owner updates the status of the work in an issue tracking tool,
between development an d opera
. • th • I rocesses and tools toward a more unified customer focus. etc. An autonomous team will take advantage of tools that automate these processes, so that
companies align eir peop e, P •
pushing new code triggers the building and deployment of a new feature into a test
It involves cultivating multidisciplinary teams who take accountability for the entire lifecycle
environment and the issue tracking tool is updated automatically.
of a product DevOps teams work autonomously and embrace a software engineering culture,
workflow, and toolset that elevates operational requirements to the same level of importance • A DevOps team culture values fast feedback that can help with continuous improvement of a
as architecture, design and development. The understanding that developers who build i~ unified development and operations team. In an environment where the development and
also run it, brings developers closer to the user, with a greater understanding of user operations teams are in isolated. silos, feedback about the performance and stability of
requirements and needs. With operations teams more involved in the development process, application software in production is often slow to make it back to the development team, if it
they can add maintenance requirements and customer needs for a better product makes it at all.
At the heart of DevOps culture is increased transparency, communication, and •
DevOps ensures that developers get the fast feedback they need to rapidly iterate and
collaboration between teams that traditionally worked in siloes. But there are important
improve on application code by requiring collaboration between operations folks in
culrural shifts that need to happen to bring these teams closer ·together. DevOps is an
designing and implementing application monitoring and reporting strategies. For example,
organizational culture shift that emphasizes continuous learning and continuous
any sufficiently capable continuous integration t_ool will enable automated bulld and testing
improvement, especially through team autonom;, fast feedback, high empathy and trust, and -
cross-team collaboration. of new code pushes and provide the developer with immediate feedback on the quality of •
their code.
DevOps entails shared responsibilities. Development and operations staff should both be
responsible for the success or failure of a product Developers are expected to do more than • Automation is essential to DevOps culture, since it allows great collaboration and frees up
just build and hand off to operations - they are expected to share the responsibility of resources. Automating and integrating the processes between software development and IT
overseeing a product through the entire course of its lifetime, adopting a "you build it, you teams helps them to build, test, and release software faster and more reliably.
run it" mentality. They test and operate software and collaborate more with QA and IT Ops. 1.S.
2 Benefits of DevOps
When they understand the challenges faced by operations, they are more likely to simplify
deployment and maintenance. Likewise, when operations understand the system's business • The value of DevOps ls big. Nearly all (99%) of respondents said DevOps has had a positive
goals, they can work with developers to help define the operational needs of a system and Impact on their organization. Teams that practice DevOps ship better work faster, streamline
adopt automation tools.
incident responses, and improve collaboration and communication across teams.

Ted1Kn••1~ THIIKae■lff.11
publl ·CatlDn PU b II ca 11 o ftS
1-8
1-9
. -oces work smarter and fa ster, and deliver bett

~
m who fullv embr.ice De\'Ops pr J, , er
Tr.a 5 - Th incre,,sed use of automation a nd cross-functJo
u;.ltt:Y to the:r cu~tomers. e . na1
q · - , d errors, which in tum improves th e Mea n Tirne DlSCOver al r,cale "\
call.ibor,rnon rMUCtS comp,ex1ty an to throv~t- •
, proc-e'>s rw1,,.g \
Reco\·ery (MTIR) when inddents and outa_ges occur.
. d t • Building 3 culture of shared res ponsibility, transparency and
(ollaboratlon an tl'\IS • ' \
, .n•., k . th• 'oundation of every high-perfo rming DevOps team. In fact

)
faster fe.?,w,c ts " 1' ,
collabor.non and problem-solving ranked as the most important elements of a successful

[)e-v{)ps culture,
Release faster and work smarter: Speed is everything. Teams that practice DevOps release
deliverables more frequently, with higher quality and stability
Accelerate time-to- resolution : The team wi th the fastest feedback loop is the team that
thrives.. Full transparency and seamless communication enable DevOps teams to minimize
Fig.1.6.1
dow:ln::ne a:id resolve isS'Jes faster.
Think about a car wash. The process, which is full y automated, looks something like this :
Better manage un planned work : Unplanned work is a reality that ever; team faces-a
o The customer chooses which wash type they want
reaLty that most ofte n impacts team productivity. With established processes and clear
pnor.::i.zacon. develo pment and operations teams can better manage unplanned work while o System requests payment from the customer

~on!::nuir.g to focus on planned work. Transitioning and prioritizing unplanned work across o Takes payment from the customer
d.F.erent :e.a:ns and systems is inefficient and distracts from work at hand. However, through o Approves transaction and advises customer to drive into the carwash
ra,;5ed vis.b.l;ry a:>d proactive retrospection, teams can better anticipate and share unplanned o Identifies when the car is in the right position using a sensor and advi ses the driver to
',\'Orie: stop
o Uses a range of sensors to identify the car's height and size
1.6 Process Automation
o Runs the pre-selected and paid program. This includes a number of variables, including
ri nsing, washing with soap and brushes, wax application and blow-dr;i ng the car
Process automation uses technolog-J to automate com plex business processes. It typically
o When complete, advises the customer to exit the carwash.
has thr~ fl..nccons· au:oma:ing processes, centralizing informa tion, and reducing the
r~q.. ;re-r.ent for inp,; t from people. It i.s designed to remove bottlenecks, reduce errors and • While a very simple automation, this process is one that most people are fam iliar ~i th, and
Ion of data ii.fl wh 1e mcr,...,s;.ng trans part ncy, communication across departments, and spec,,
' ·• ' -Q
.J sea ml essly integrates a digital transaction and input from the customer and turns it into a
of process,ng,. mechanica l series of automatio ns usi ng software, hardware, and communication to an
accoun ting system.
Bctsiness pr".><:"-S\ automat.k"n (BPAJ .is th e use of software to autQmate
repeata bl e, multl 5!t p •
bu.s.n~s transa,:t;on, Process automation streamli nes a system by removing human inputs, which decreases errors,
- · Jn con t.ra\t to m.h er types of aummatlon, BPA solut ions tend to bt
increases speed of delivery, boosts quality, minimizes costs, and simplifies the business
Cf.i:n;.,lez. conne,:r..ed to mulr1pl" ~ ,
technology (IT) systems, and tail 0 rte
, •
- .nc.erpn~ ,
Informa tion process. It incorporates software tools, people, and processes to create a completely
s~.dlcally r.o the ne~ds '>fan orga nization
automated workflow.
~~~~~=~--------
~troduction to Devops
2l~-l~O~-:::.::::::::::::l:n~t-r:o~d-u:c:ti:·_o:n_.:to~:D!..,.._~v~ops
----
ll~n~tr~o~du;c;.;;ti;;o;n.to•D-ev.o.,p•s---------.;1~-1;,;1;__ _ _ _ _ _ _ _..:.;'n;.;tro;,;;d;,;;u;,ctl;,o;;,;n,;.t;;o..;D;.e;.v.o...
some agile best practices for Scrum implementation are :
ps

1.7
1 , creating Product Backlog and Product Vision Together
A. What is Agile? ent and software development that heip A product backlog is an ordered list of items that are required to be added to product
. ach to project managem s
Agile is an iterative appro , d with fewer headaches. Instea_d of bettin development. A good practice for scrum implementation is to create the product backlog and
their customers faster an . g
teams deliver value to . am delivers work in small, but consumable, product vision together so that both the development team and stakeholders are on the same
"b" bang" launch, an ag11e te page. This ensures mutual understanding and helps in aligning the vision in a better way.
everything on a ig Its are evaluated continuously so teams have a
ts Requirements, plans, and resu
lncremen · · kly 2, use Bum down Charts for Sprints
natural mechanism for responding to change qmc .
A daily burn down chart is a great way of monitoring the progress of Sprints. Burn down
B. Agile Best Practices
charts graphically show the work that has been done and the total work remaining against
1. lteraUve Development time. It's a useful tool to inform the team about project scope and make them aware of scope
. . creep that might occur. These charts also help in identifying the risks associated with
Through agile Iterative deve Iopmen t, bigger projects are broken
.
down Into smaller chunks
. .
and continuous tests are done in repetitive cycles. Through this pracuce, agile teams get a undelivered work.
perspective on new features tha·t need to be added to th_e final product or service and J. Setting communicatio n guidelines for teams
contribute towards more flexible product development
Uninterrupted communication is key for the Scrum framework and can· become a bottleneck
2. Dally Meetings if not tackled efficiently. An effective way to ensure seamless communication is to formulate a
communication strategy with all the essential guidelines for teams. This particular practice
Regular meetings are key to aglle implementation. These meetings should be short and
can really come in handy for remote teams as it will make team goals transparent
concise, with each member of the team explicitly stating the progress of tasks and what needs
to be done. This practice Is a great way to monitor the performance of the team and check if 4. Practicing Stand-Ups
there are any obstacles In the way of product development
Also known as the 'Dally Scrum', stand-ups are short meetings held with the team members
3. Using Professional Tools on a daily basis. These meetings are typically for a maximum of 15 minutes to keep their
duration short Practicing Stand-ups for product or project development are a great way to
Using project management tools for the Implementation of agile methodology helps the team
monitor the progress of work and helps In keeping everyone In the loop with the project
to better structure their workflows and improve team collaboration. For proper
updates. These meetings also assist the team in tracking the dos and don'ts of product
documentation and meetings management, professional project management software can development
greatly reduce the effort It takes to manage your tasks otherwise.
1.8 Reason for Adopting DevOps
C. Agile Best Practices : Scrum Project Management

Scrum is considered to be a dominant agile framework, with stats showing that 58% of the DevOps, a portmanteau of "Development" and "Operations", is a ·set of tools, processes, and
, organizations implement this for their products' development and 18% of organizations use practices that combine software development and IT operations to improve software
it In combination with other frameworks. delivery.
Due to the tendency for development and operations teams to work ln silos, DevOps acu as
the go-between to Improve collaboration efficiency.

T1cllK11.-l~ TICII.......... .
Publlta 110 PdllClt la n,s
Introduction to D~vOps
Introduction to Devops
1-12
...... Introduction to Oevops 1-13 Introduction to DevOp1
f
Following are main reasons or a
dopting DevOps 4• Improves Customer Experiences
.
d D loyment Planning . A major benefit to adopting DevOps practices is it lowers the failure rates of new features
1. Efficient Development an ep
ontinuous Improvement and Software Delivery while improving recovery time. The continuous deployment, testing, and feedback loop
2. C
en~ure faster service delivery and happier customers. By automating the software pipeline,
3. Improves Software Security
the development teams focus on creating superior products while the operations team can
. 4. Improves Customer Experiences improve business delivery.
5. Better Collaboration Among Teams s. Better Collaboration Among Teams
6. DevOps Practices Create More Time to Innovate
DevOps practices dismantle silos between teams and improve collaboration. By adopting
7. OevOps Enhances Decision-Making methods such as Scrum and Kanban, teams collaborate more efficiently, friction among
8. OevOps Encourages Higher Trust and Better Collaboration colleagues is dealt with quickly, and communication flows seamlessly across the organisation.
1. Efficient Development and Deployment Planning Since DevOps discourages hierarchies among teams, everyone is responsible for software
quality and speedy delivery. This approach reduces cases of low-effort contributors and
. hea d h
One of the biggest ac es of any IT Manager is managing cross-functional teams to blame games.
develop an d dep Ioy so ftware in good· time · DevOps practices help you plan in advance
6. DevOps Practices Create More Time to Innovate
how both teams will work cohesively to deliver products, meet customer needs and stay
competitive. Dev0ps automates repetitive tasks, improves service delivery, and reduces the software
development cycle. The methodology frees up time for teams to develop new products
OevOps methods such as Scrum and Kanban provide practices t~~t define how teams
and better features. Unfortunately, inefficient teamwork leads to time wasted fixing
work together. For example, Scrum practices include working in sprints, holding Scrum
errors rather than innovating. Building better products and services leads to a
meetings, and designating time boxes.
competitive advantage.
2. Continuous Improvement and Software Delivery
Companies that innovate continuously are also better able to react to market changes
Adopting DevOps practices improves the quality of your software when deploying new and take advantage of new opportunities.
features and allows you to make changes rapidly. Continuous Integration and Continuous 7. DevOps Enhances Decision-Making
Deployment (Cl/CD) is the practice where you make incremental changes to your code and
DevOps helps you leverage data to make better decisions and removes hierarchies that
quickly merge to the source code. This DevOps practice delivers your software to the market
require layers of approvals. In addition, DevOps practices reduce time spent between
faster while addressing customer issues rapidly.
design and execution. Scrum and the Kanban approach address blockers as they come,
3. Improves Software Security manage workflows efficiently, and tackle project$ in sprints.

A subset of DevOps is DevSecOps which combines development, security, and operations. Fast decision-making based on accurate data is a competitive advantage. Slow decision-
Adopting DevOps practices allows you to build security Into your software continuously. The making delays go-to-market plans and throttles the implementation of new ideas.
IT security team Is involved In the software development cycle from the start rather than at 8. DevOps Encourages Higher Trust and Better Collaboration
th e deployment stage. Outdated security practices Integrate
Infrastructure security features Due to Improved collabbration across development and IT operations, teams trUst each
independently. With DevOps, software security Is a collaborative practice and ls considered other more and produce higher quality work. Higher trust leads to improved morale and
the foundation before any product development. better productivity.

T1ct1Kn1w1'4~
pub I It at Io P
Introdu ction to DevOps
1-14 Introduction to Devops 1-15 Introduction to De-,Ops
Introduction to Dl.'vops •
. t ach other's new suggestions and Ideas. A
. - kin in silos m1strus e . Continuous delivery : Continuous delivery expands upon continuous Integration by
Conversely. team~ wor g t sparency in workflows and gives visibility
d llaboration creates ran automatically deploying code changes to a testing/production environment. It follows a
culture of trust an co b development and deployment planning. The
. roach leads to etter continuous delivery pipeline, where automated builds, tests, and deployme nts are
into projects. This app . h t works in unity, solves problems faster, anct orchestrated as one release workflow.
net effect is a collaborative environment t a
deli\•ers superior products to the market Situational awareness : It is vital for every member of the organization to have access
to the data they need to do their job as effectively and quickly as possible. Team
A. How to adopt OevOps
members need to be alerted of failures in the deployment pipeline - whether systemic
• t to evaluating and possibly changing or
Adopting DevOps first requires a comm1tmen . . . or due to failed tests - and receive timely updates on the health and performance of
our organization currently uses. It means building
removing any teams, tools, or processes Y . applications running in production. Metrics, logs, traces, monitoring, and alerts are all
. · t g·ve teams the autonomy to build, deploy, and manage their
the necessary mfrascructure o 1 essential sources of feedback teams need to inform their work.
products without having to rely too heavily on external teams.
Automation : Automation is one of the most important OevOps practices because it
DevOps culture : A OevOps culture is where teams embrace new ways of working that enables teams to move much more quickly through the process of developing and
involve greater collaboration and communication. It's an alignment of pe?ple, processes, deploying high-quality software. With automation the simple act of pushing code changes
and tools tov,ard a more unified customer focus. Multidisciplinary teams take to a source code repository can trigger a build, test, and deployment process that
accountability for the entire lifecycle of a product significantly reduces the time these steps take.

Continuous learning : Organizations that do DevOps well are places where Infrastructure as Code : Whether your organization has an on-premise data center or is
experimentation and some amount of risk-taking. are encouraged: Where thinking completely in the cloud, having the ability to quickly and consistently provision,
outside the box is the norm, and failure is understood to be a natural part of learning and configure, and manage infrastr~cture is key to successful DevOps adoption.

improving. Infrastructure as Code (laC) goes beyond simply scripting infrastructure configuration to
treating your infrastructure definitions as actual code : using source control, code
Aglle : Agile methodologies are immensely popular in the software industry since they
reviews, tests, etc.
empower teams to be inherently flexible, well-organized, and capable of responding to
change. DevOps is a cultural shift that fosters collaboration between those who build and Mlcroservices: Microservices is an architectural technique where an application is built
maintain software. When used together, agile and DevOps result in high efficiency and as a collection of smaller services that can be deployed and operated independently from

reliability. each other. Each service has its own processes and communicates with other services
through an interface. This separation of concerns and decoupled independent function
8. DevOps practices
allows for DevOps practices like continuous delivery and continuous integration.

Continuous Integration : Continuous integration ls the practice of automating th e Monitoring : OevOps teams monitor the entire development lifecycle - from planning.
integration of code changes Into a software project It allows developers to frequently development, integration and testing, deployment, and operations. This allows teams to
merge code changes into a central repository where builds a_nd tests are executed. This respond to any degradation in the customer experience, quickly and automatically. More
helps DevOps teams address bugs quicker, improve software quality, and reduce the time Importantly, it allows teams to "shift left" to earlier stages In development and minimize
it takes to validate and release new software updates. broken production changes.

Ted._....
,Ullltllllll
Introduction to DevOps
t,16 Introduction to Devops 1-17

-
Introduction to Devoµs '¾ Introduction to De-vO;:,s
What and Who Are Involved in OevOps7 1. oevOps Engineer
1.9
A OevOps engineer is responsible for designing the right infrastructu re required
for teams to
continuousl y build and deliver products. The engineer identifies project
requiremen ts an d
KPls and customizes the tool stack. He is well versed with automation tools
and security
technologies. Right from the build, test, deployment, and monitori ng of
a product, the
engineer integrates all resources and functions required at every stage
of the product
lifecycle while protecting the cloud architecture from hacking attacks.
In addition, the
engineer is involved in team composition, project activities, defining
and se tting the
processes for CI/CD pipelines and external interfaces.

2. Release Manager

When it comes to the DevOps team structure, the release manager holds
one of the mos t
demanding and stressful roles. The release manager is responsible for the
entire release
lifecycle, right from planning, scheduling, automating, and managing corttinuous
delivery
environmen ts. Release managers are mostly Ops-focused wherein they design
an automation
Fig.1.9.1 pipeline for a smooth progression .of code to production, monitor feedback,
reports, and plan
DevOps' advent has transformed the software development_ landscape, bringing the next release, working in an endless loop.
cross·
functional teams of developers, operations, and QA to seamlessly collaborate
and deliver 3. DevOps/CloudOps architect
quality in an automated continuous delivery environmen t In a DevOps-driv
en continuous
delivery environment. developers and operations teams jointly think about how The responsibili ty of a DevOps architect is to analyse existing software
a feature will developmen t
respond in a production environment, resulting in reduced errors, faster time
to market, processes and create an optimized DevOps CI/CD pipeline to rapidly build
and deliver
better quality, and efficiencies. With Quality Engineering and Quality Assurance
going hand in software. The architect analyses existing processes and implement best
hand, QA teams are happier now as quality is not just their job, but it turns into practices to
DevOps Team streamline and automate processes using the right tools and technologie
responsibilities. s. In addition, he
monitors and manages technical operations, collaborates with dev and
o'J)s, and offers
DevOps teams comprise professionals from development, quality, security,
and the support when required. He also acts as a leader as required.
operations segment. As the core responsibility of the team would be on the person
who owns
the DevOps team, a senior person from the organization would be an ideal person 4. Security and Compliance Engineer
to lead the
team, referred to as a DevOps Evangelist The DevOps evangelist will ensure
that the The Security and Compliance Engineer (SCE) is responsible for the overall
responsibilities of DevOps processes are assigned to the right people. The smallest security of the
DevOps DevOps environmen t The SCE closely works with the developmen t teams
team should comprise the following people; A software developer/t ester, t.o design and
automation integrate security into the Cl/CD pipeline, ensuring data integrity and
engineer/automation expert, quality assurance professional, security engineer, security are not
and release
compromise d at every stage of the product lifecycle. In addition, the SCE
manager. The granularity of the team ultimately depends on the size of the organizatio ensures that the
n.
products being developed are adhering to governing regulations and compliance
• Here are a few common roles In a DevOps team. standards.

T1dlK•1wlttl..
Pu O II CI t IO n I
1-18
Introduction to DevOps

--
Introduction to Devops ~
Introduction to Devops
1-19
Introduction to Dev0Jl1
5. Software Developer/Tester DevOps system changes follow a h d
P ase process to ensure the changes do not disturb the
. the code to build a product, the DevOps software current DevOps operation. Examples f · I
While a regular software developer wntes . . o imp ementation phases include : proof of concept (POC)
. .. .
th product lifecycle. Respons1b1ht1es of DevOps phase m a teS t environment, limited production and deployment to all live environmen
developer/tester is Involved across e . ts.
..
developers include tasks sue h as up da ti ng the code, adding new features,
..
and resolving bugs • Key performanc e indicators (KPls) are set and monitored by the entire team
to validate the
.
while ensunng t hat t he app 1tea
- ti·on meets business objectives. In addition, the developer runs performanc e of th e end-to-end DevOps pipeline, always. KP!s Include the
. time for a new
unit tests, pushes the code to production, and monitors its performance. change to be deployed, the frequency of deliveries and the number of times
changes fail to
pass the tests for any stage in the DevOps pipeline.
6. OevOps evangelist
For an organization to fully leverage DevOps, it should go through a complete 111 Introduction to DevOps Pipeline Phases
cultural shift A -·------ --,----- ---"-~! ..__.... .....::... .:..::== =.----- --------
DevOps evangelist is the on~ who acts as this change agent, inspiring,
educating, and •
DevOps is visualized as an infinite loop comprising the steps : plan, code, build,
motivating people across the organization to embark on the DevOps journey. test, release,
The evangelist deploy, operate, monitor, then back to plan, and so on.
removes silos between different teams, brings them onto a common platform,
determines the
All of these components of the DevOps lifecycle are necessary to take the maximum

:},~:'· ,· . ~,,.-_,-,~
roles and responsibilities of DevOps members, and ensures everyone is trained leverage
on the job of the DevOps methodology.
they are assigned. Overall, the evangelist leads the DevOps journey, ensuring
that a cultural
shift is happening across the organization, everyone is aware of their
responsibilities, finds ways to optimize processes and ensures that best
Implemented in an end-to-end product developmen t lifecycle.
roles and
practices are {f ~ ·,,,~

.
:--

",_

~..
.
(

. •-.
,
-~

,.
'

,.,._.
;o '
r
.
·:, t

! Y
\
0,

~\ . .
1.10 Changing the Coordination ~ -~
'.-~.- .;.;,- ' ..'il~..·.. -..·.' ;... ~ ' .
' ~ --~
"',;,

It's best to understand DevOps as a business drive to improve communica DovOps lifecycle diagram
tion and
collaboration among development and operations teams, in order to increase Fig. 1.11.1 : DevOps Lifecycle Diagram
the speed and
quality of software deployment It's a new way of working that has profound Following are some important components in devops lifecycle.
implications for
teams and the organizations they work for. 1) Continuous Development :
The _culture encourages cross-functional collaboration and shared responsibili
ties and avoids With continuous development, every change to your software is may be integrated,
silos between Dev, Ops and QA. tested,
and verified. This helps to ensure that your team is able to release a safe, secure,
reliable, and
The culture encourages learning from failures and cooperation between department high-quality product on time. This practice spans the planning and coding
s. phases of the
Communication flows fluidly across the end-to-end cross-functional team using DevOps lifecycle. Version-control mechanisms might be involved.
collaboration
tools where approprfate (for example Slack, HipCI:tat, Yammer). 2
) Continuous Integration :
The DevOps system ls created by an expert team, and reviewed by a coalition
of stakeholders This software engineering practice develops software by frequently
including Dev, Ops and QA. integrating Its
components. It helps to ensure that changes in the source code do not break
the build or
Changes to end-to-end DevOps workflows are led by an expert team, and cause other problems. The key goals of continuous integration are to find and
reviewed by a address bugs
coalition of stakeholder s including Dev, Ops and QA. quicker, lmprove software quality, and reduce the time it takes to validate
and release new
software updates.

TtcU11wl"t'
Publlta!I0" 1
~:!::~:.!:~::~--------;1-~2~0---------------.;;:~• Introduction to Devop, Devops
1-21 Introduction to DevOps
~
Introduction to Devops
3) Continuous Testing :
~
A,
Introduction to
components of a DE!VOps Pipeline
. that involves testing at even stage
of softWare testing . There are several different approaches and tools that organizations can use to create
. testing in DevOps is a type . t sting is to evaluate the quality of the a
Continuous 1of continuous e customized DevOps pipeline. Common pipeline components facilitate continuous delivery
f the development life cycle. The goa by testing early and often. to
o rt of a continuous delivery process, ensure that code moves seamlessly from one stage to the next, automating the entire process
softWare as pa
and minimizing manual work.
4) Continuous Deployment : . development where code changes to an
. a strategy m softWare . . Continuous integration and continuous delivery (Cl/CD) - CI/CD, which allows for
Continuous deployment is d f n environment This automation is
tically into the pro uc io the rapid integration of new code, is one of the cornerstones of DevOps pipelines.Cl
application are released automa dates pass those tests, the system pushes
driven by a series of predefined tests. Once new up allows for the rapid fntegratlon of small chunks of new code from multiple developers
the updates directly to the softWare's users. into a shared repository. CI also allows you to automatically test the code for errors
to
5) Continuous Monitoring : identify bugs early on, making them easier to fix. CD is an extension of Cl, enabling
.
developers to perform additional tests such as UI tests, which helps ensure bug-free
th' h developers collect data, mom't or each function, and spot errors hke low
During is p ase, k F ample when users log in, they should access deployment. CD also helps the DevOps team deliver bug fixes, increase the frequency
memo or server connection are bro en. or ex ' . . of
ry . th
their account, and a failure to do so means er e's a problem with your apphcat1on. new feature releases, and automate the entire software release. These features reduce
the overall time and cost of a project
6) Continuous Feedback :
Continuous feedback is like a progress report. In this DevOps s~ge, the software Continuous Testing (CT) - CT allows companies to perform automated testing at every
. II stage of the development process. A CT strategy allows for quick evaluations of the
automattca Y sends out information about performance and issues experienced .
by the end-
user. It's also an opportunity for customers to share their experiences and provide feedback. release risks of code integrations. Tests begin to run automatically once code
is
integrated.
7) Continuous Operations :

It involves automating the application's release and all these updates that help you keep Continuous Depfoyment - Continuous deployment is often confused with continuous
cycles short and give developers and provide more time to focus on developing. delivery, but there's a substantial difference between the two. At the Continuous
deployment stage, the entire release cycle is automated and code updates go directly
to
1.12 Defining the Development Pipeline the end user without manual interventions. The downside to these automated
deployments is that if bugs have not been detected along the way, they will be released
A DevOps pipeline is a set of tools and automated processes utilized by the software
and can cause the, app to fail. Continuous deployments are only recommende d for minor
engineering team to compile, build, and deploy code. Building an effective DevOps pipeline
code updates. In the worst-case scenario, you can roll back the changes. The upside
enables companies to rapidly develop, test, and deploy new code on an ongoing basis. is
that continuous d1eployment enables frequent deployments in a single day.
One of the key objectives of a DevOps pipeline is to automate the software delivery process,
Continuous Moniitoring - Continuous monitoring enables rapid detection of compliance
eliminating the need for manual changes through every step of the pipeline. Manual work
is
issues and securi.ty risks, empowering SecOps (a word that blends of "security" and
time-consuming and introduces the pot~ntial for human error, often pushing back
deployments. "operations") teams with real-time information from across a company's
IT
infrastructur e as well ~s supporting critical security processes like threat intelligence,
The shift from manual changes to automated changes not only results in fewer errors,
but forensics, root cause analysis, and incident response.
also allows developers to push out high.er-quality code faster than ever before.

T1chKno11le•gt
Publ l catlDn s
.,........
PUDIICitlans
lntroctuction to DevOp1
1-22 Introduction to Oevops 1-23
10
1n1roduct__1on [)evo;>$
d is successfully dep IO yed ' continuous fee dba c:R shows • Like oth er tools me ntioned above, companies can choose from ma ny build se rvers, ea,;-h
~-: ~h
Continuous feedb1,1ck - Once co e tomatlnf! feedback, the company gets
end users. 8Y au • . different features. Jenkins Is one of the most popular solution s fo r creating build
the impact of the release on s Cdier
.
. how users are reacting to th e new build. If critical Issues are solutions Include TeamCity, Travis-Cl, and go.cd.
Insights and information on . d . d a n Immediately start working on Step 4 :
teams will get notifie an c Setup or Build Automation Tools for Testing
discovered, development
once code Is configured on the build server, it is time to test it! In the testing
bug fixes. f . ous opera tions is to reduce or eliminate phase.
ti The goal o contmu developers run automated tests to ensure that only error-free code con tinues down
Continuous Opera ons - . inimal Interruption to the end users. the
I d d wntlme which resu 1ts 1n m pipeline to the deployment stage. Several automated tests are performed at the testi
ng stage
the need for p anne o . • . I endeavor, but it may be worth the extra cost
Setting up continuous operations IS a cost y including unit, functional, integration, and regression tests. Most tests are run through
Cl and
considering its advantages. run one after the other.

How to Build a DevOps Pipeline To start running tests, Test Complete is a good option. It has a Jenkins plugin that e nables
B. you
·es use a d1·verse set of tools and approaches to build unique and effective De_ vO.ps to run tests in a Jenkins Pipeline project with added features such as storing the test
Comp anl history
bl h and enabling you to see the results directly from Jenkins.
pipelines customized for the needs of their organization. Commo~ steps include. esta
•: •~: Step 5 : Deploy to Production
I sourcin a control environment, setting up a bmld server, setting up Ul
a Cl/CD too ' g . d ti ·
ation tools for testing, and deployrng to pro uc on. The final stage of your pipeline is the deploy stage where your software is ready to be
pushed
autom
Ste t . Establish Cl/CD Tool to production. The easiest way to deploy the code is by configuring your build server,
such as
p · . . h fi d fbusiness is to Jenkins, to run a script to deploy your application. This can be set up .
· · tarted building a DevOps p1pelme, t e 1rst or er o to run automatically or you
For companies 1ust getting s
. LE h has different needs and requirements , so not every t oo 1 WI.11 be can do it manually. Automatic deployment should only be used if you are fully confident that bad
pick a CJ/CD too ac company . bl J . .
right for every situation. While there are many Cl/CD tools availa e, en k.ms IS .
one o
f the most code won't end up in production. You can link this to your test builds, so that
the scnpt only runs if
II th h b d
commonly used tools. Jenkins features hundreds of community-c ontn.b ute d P1ugms . and tools so it a e tests ave een passe .
,
can easily be customized to work well for many different applications.
1.13 Centralizing the Building Server
Step 2 : Source a Control Environment
Companies worki ng with large development teams need a dedicated place to store and Jenkins is one of the most popular and flexible open-source orchestration tools out
share • there. No
the ever-changing code, avoid merge conflicts, and easily create different versions of
the app or matter if you working on a legacy monolith or micro-service s, on-premise or in
the cloud,
software. Source control management tools such as Git allow for effective_collaboration
with team Jenkins can help.
members from anywhere in the world, storing code from each developer in a separate
shared • You can install Jenkins in numerous ways, each of them fitting a different platform
repository. BitBucket and GitLab are two other popular source control management tools. and use
· case. the easiest way to install Jenkins is with a package manager.
Step 3 : Set up a Build Server
Once you have installed Jenkins, you can access it right from your web browser. On
Setting up a build server, which is also called a continuous Integration (Cl) server is a Windows,
crucial you likely use Chocolatey, on MacOS Homebrew, and on Linux it depends
next step before your project can make Its way down the rest of the pipeline. A build server on which
is distribution of Linux you are using.
a centralized, stable and reliable environment for building distributed development projects,•
Open your browser and navigate to [localhost:808 0](http://loc alhost8080) . and
Build servers retrieve Integrated code from source code repositories, acts as an Integration you SN!
Jenkins starting or waiting for an initial password .
point for all developers, and provides an untainted environment to make sure that
the code
11
actua lly works. Jenkins is now Installed and running on Windows, and you are ready to start buildin&
your
CI/CD pipeline.

T1c:1lll11011l~
Publ\C I IIOfl
!:!~=-~=~--------~l~- 4;_-:-.-~. .
~troduction to Devops
2~ ~-:•ln•tr~o•d:u~c~ti:on~to:D~e•~:O~ps .,:;ln~tr~o;;,;;d;.u.cti.,·o•n•t•o""D""e•v•op"'s..,....,=..,.""""=---..,;;.1·.;;2.;;.S....."""'"""'====i===,.,;l,;,;ntr;;;.;;,od;.u;.c;;;ti;.;;o;,;.n.;.to;..
, ., - . e, X •, . Define your need to log and monitor
D=ev.o.,.p1111s
0 1
* ,i . t Determining why the organization wants a Jogging solution will help define what you

iHH+FANJ need to log. The following are some of the reasons an organization might want such as
solution :

0 Compliance requirements

0 Local laws and regulations


Welcome to Jenkins!
o Incident response requirements
Thli p11ge ,s w~rt your Jti,ki1'.t.S pOJ w,n bfl dtt,~'W lo get !tart~ yvu CcW'I ~ up di.WltJu~J
~ 9u1tdHktOfY builds G\r statt building a; :iOftl'J:fi p!"Cjf'Cl
Discussing these factors with your organization's security governance team, legal
Start building your &<>ftware projed department, and other stakeholders will help define the goals for logging and monitoring.
~ 1,1,Vlfws

( to te•)Ob 2. List what needs to be logged and how it needs to be monitored
""LoWbleRflOUTC.S

Set up a distributed build Based on your goals, determine what metadata needs to be captured and what events
Ill NtwVltw

➔ need to be logged. Some examples of metadata and events to be logged. Infrastructure


s,-::,p an ,l(_J•tl\\
administrators and security teams should collaborate to build an effective logging and
Coof>g\ll'fl .a <loud
monitoring program that collects traditional operational metrics and can analyze them to
MutJdl!tSM\rtrStatUI wm nl01'8 aboo, diSUibutlld bulldt. mitigate attacks.

Alerts on certain events, such as multiple failed login attempts or weekly notifications on
commands executed on a server, can be set up to monitor these events. It is also
important to work with application teams to understand what the different attributes of
1.14 Monitoring Best Practices
a log entry mean. Once you have a baseline for normal operations, you can configure

Monitoring is the process of gathering and analyzing data related to a critical system, service correlation rules, aggregations, thresholds, and alerts to be triggered for any anomaly

or application's performance. Monitoring helps ensure systems and services are running al based on the security risk profile for the application

intended and helps teams keep a pulse on the performance and availability o f any interna101 3• Identify assets and events that need to be monitored
external application, system, or service. If a disruption or outage occurs, teams an Log data is a huge volume of datasets that impact performance and costs. When determining
immediately aware via the monitoring system and can take action towards a resolutioi what data you should monitor start by not leaving anything out. You need to identify which
immediately. systems/applicatio ns should be monitored and what level of monitoring is required. You

Monitoring Is proactive approach of collecting and analyzing information can heir should also classify your data and systems according to the organization's statutory,

developers, sysadmins and security teams in many ways such as detecting issues in their codi regulatory, or contractual requirements. Keep in mind that this classification may differ from
your security system classification or your business data classification.
via "application-level logging." identifying anomalies in network traffic via "infrastructurt
logs like AWS/Azure," and detect as well as prevent security incidents by using advanCi 4. Determine the right solution for logging and monitoring

Security Information and Event Management capabilities. You can address these challenge There are a many solutions-both commercial products and open source projects-to
by employing these logging and monitoring best practices. choose f~om when you want to build a scalable and resilient logging and monitoring
program.

T1cl1Knowte4f T1dtl(nowl1q1
Publlcat1° ' Pub I I Cit IO n s
~::;~:!!~.:!!.-----~~-=~l~-Z~6:::::-::::~l:nt:r:od:u:c:ti:o:n~to~O:e:v~o:P: ,:;In~tr;;o;,;d;..u,.cn.·o•n•t•o•D•e""v""op...s.....________. ;.1•.;2.;.7. . ,_______.,..;.In;,;;tr;;.o;;.;d;;.;u;c.;;.tio;.;n~to.;D;..e.v.o...
ps
Introduction to oevops
! d monitoring architecture can ht 1.15 Best Practice:; for Implementing DevOps
. olo ies for a logging an
Choosing the nght techn g d to keep in mind are :
overwhelming. A few key points that you nee . Agile project management
f the monitoring process as possible
Automate as muc h 0
Agile is an iterative approach to project management and software development that helps
0
o Constantly tune your alerts and log sources as threats evolve teams deliver value to their customers faster and with fewer headaches. Agile teams focus on
o Ensure that log and alerts are generated in a standardized format delivering work in smaller increments, instead of waiting for a single massive release date.
Requirements, plans, and results are evaluated continuously, allowing teams to respond to
5. Design logging and monitoring systems with security in mind
feedback and pivot as necessary.
. . b 'ts If is an asset to the organization because it
A logging and momtonng program y I e . Shift left with CJ/CD
. . 'd activities and may contain sensitive information. Here art
looks into organization w1 e
When teams •shift !left", they bring testing Into their code development processes early.
few points to consider to secure it :
Instead of sending multiple changes to a separate test or QA team, a variety of tests are performed
o Redact/mask/anonymize sensitive information from event logs beforehand, tc
throughout the coding process so that developers can fix bugs or improve code quality while they
prevent sensitive information from being logged in plain text (e.g., PHI/Pl:
work on the relevant s:ection of the codebase. The practice of continuous integration and
information) continuous delivery (Cl/CD), and deployment underpins the ability to shift le~
0 Enforce role-based access controls Build with the right tools
0
Perform log integrity checks to ensure that logs are not tampered with
A DevOps tool chain requires the right tools for each phase of the DevOps lifecycle, with key
0 Apply encryption at rest and transit capabilities to improve software quality and speed of delivery
0
Follow the principle of least privilege when configuring log sources Implement automation1
0 Sanitize logs before storing and processing
Continuous integration and delivery allows developers to merge code regularly into the main
0 Include capabilities for high availability and redundancy repository. Instead of manually checking code, Cl/CD automates this process, from batching in a
6. Adopt organization wide logging and monitoring policies specified window to frequent commits. In addition to Cl/CD, automated testing is essential to
successful DevOps practices. Automated tests might include end-to-end testing, unit tests,
Work with security teams to enforce companywide policies and procedures that defim
integration tests, and performance tests.
logging requirements in detail for all systems. This ensures consistency and that protocoh
and procedures are followed in logging. Policies with a strong mandate and corporate backin! Monitor the DevOps pipeline and applications
ensure that logging and monitoring practices are followed. It's important to monitor the DevOps pipeline so a broken build or failed test doesn't cause
7. Establish active monitoring, alerting and incident response plan unnecessary delays. Automation improves the speed of development tremendously, but if there is
a failure in an automated process and nobody knows about it, you're better off doing the work
Without strong logging mechanisms, an organization is truly in the dark before, during
manually. it's important to monitor production applications in order to identify failures or
and after any incident Attacks on sophisticated systems are often carried out for month!
performance deficiencies;, before you hear about them from your customers.
or even years. The following steps are vital to prevent such a scenario :
Obseivability
0 Establish an incident response plan and rehearse it at regular intervals
0 Trigger alerts in an adequate amount of time As the industry moved away from monolithic, on-premise systems and applications to cloud-
native, microservice-based applications, monitoring is now considerably more complex. As a
0 Take active automated actions on the alerts
result, there is an increasing interest in observability.

T1d1Kn1wl~ TecH11wlHII
10 1 Pub II Cat IQ n s
Pub11cat
1-2!! lntrodu,:1lon lo Devop, 1-29
b __ b litv i.lre logs, traces, autl metrics. LoRs art
11 i~ often ~;11d that the three p1U..1rs o f o ,-,:rva ' . . a. 8 Explain Agile proce ss in detail?
. d appllc itlo ns .l nd con:-is t of tirne -se r1 cs dat~
gent-r.1tf'd by nwst sy~tt"ms wm1)u11r11ts an ' f lo •le withi Q. 9 Write and explain reasons tor adopting the devops.
.itK>ut the funrtionmg of the sysMn or appl11.:ation. Tr,u·es tr.11.'. k th e flow o 8 n tht
u I. ·I· d., CPU1' RAM l't!!>t!rvatlo n or usage, dbk s pace, network Q. 10 Whal and who are Involved in devops?
.a•·•ph,-ation. ... etr l"S UK u "'
c:llnecti.-itV, .inJ more. Ob~erv.ibihty simp ly means usi ng all three of these sources of a. 11 What ls Devops Pipeline? Explain phases of devops p1pelme.
iniom1atm~ m .aggregate to nw.ke d1scoverit's an d predictions about the functioning of a
a. 12 Explain Development pipeline In detail.
complex systl!m, which would otherwise be diflicult to achieve.
a. 13 What Is centralizing the building server.
G•th« continuous feedb•ck
Q.14 What do you mean by monitoring best practices.
Continuous feedback ensures team members have all the Information needed' to do their Jobs
Q, 15 What are the best practices for Implementing devops.
on a. timelv bJsi's. From the- development perspective this entails that the team Is alerted to any
pip.dine (~ilures 1mmed1atdy. It also means that clear, thorough code test results are made
avJJl~ble to the developers as quickly as possible. From the product management perspective the
te.am is made ;i,w-.ire or a_ny productio n failures or performance deficiencies, or reported bugs.
Continuous feedback is one of the elements of DevOps that makes it possible to have both.

Ch.I~ the cultun


DevOps requires collaboration. tra nsparency, trust, and empathy. If your organization ls one
of the rare ones where these qualities are already established, it should be fairly easy for your
teams to adopt DevOps practices. If not, some effort will be required to d~velop these qualities.
The most common organizational structures are siloed, meaning different teams have separate
areas of ownership and respo ns ibility and there is minimal cross-team communication or
collaboratlon. For OevOps to succeed, these barriers must be eliminated by adopting the "you
build it, you run 1t• practice.

RMEW QUESTIONS

Q. 1 What is Devops?

0. 2 Wri!e and Explain ttie role of devops engineer.

Q. 3 What are !he respoM,ibd1ties of developer Aesponslblllty?

Q. 4 What do Y~ mean by continuous Integration and continuos Delivery? Explain II

Q. 5 What IS Devops culture?

0.6 What are the benefits of Devops?


Q. 7 Write and explain Pro,-..es1 automation in detail.

T1dllh11•1t4tl1
Pu~ I I l t II on

You might also like