Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 23

Title and Content

109 255 131 0 85 214


207 255 56 99 165 73
246 255 155 190 28 42

Dark 1 Light 1 Dark 2 Light 2 Accent 1 Accent 2

185 151 193 255 255 236


175 75 187 221 255 137
164 7 0 62 255 29

Accent 3 Accent 4 Accent 5 Accent 6 Hyperlink Followed Hyperlink

Click to edit Master title style


DevOps Culture
127
175
221

Tata Blue 50%


203
215
238

Tata Blue 25%


179
149
197

Purple 50 %
212
195
223

Purple 25 %
255
242
171

Yellow 50 %
255
249
213

Yellow 25 %

229 248 180 214 241 251


205 241 213 231 240 251
186 235 154 200 202 241

Brown 50 % Brown 25 % Green 50 % Green 25 % Light Green 50% Light Green 25%

1 TCS Confidential
DevOps – Introduction

Definition: DevOps is the union of people, process, and products to


enable continuous delivery of value to end users
- Donavan Brown , Microsoft Devops PM

Value of DevOps: DevOps culture nurtures better communication


and collaboration between teams, thus breaking the silos formed among
teams

DevOps aims at:

 Developing high quality software


 Deploying in frequent cycles
 Reducing time to move from idea to implementation

2 TCS Confidential
DevOps - Introduction

Identify Build Release Monitor Sustain

3 TCS Confidential
DevOps History
 2007 While consulting on a data center migration for the Belgium government system administrator Patric Debois become
frustrated by conflict between developers and system admin. He ponders solutions.
 Andrew Shafer a software developer organize a agile conference and post notice of a “birds of a feather” session entitled “Agile
infrastructure”
And only one person attend : Patric Debois and even Andrew Shafer skip his session thinking no one has interest in his session ,
Later Debois track Shafer and they form a Agile system administration group.
 June 2009 At Oreilly Velocity 09 Conference , John Allspaw and Paul Hammond give their now-famous talk entitled “ 10 Deploys a
day: Dev and Ops Cooperation at Flickr” Watching remotely Debois laments on Twitter that is is unable to attend in person. Paul
Nasrat replied why not organize your own velocity event in Belgium. 10 Deploys are mention below.
1. Automated Infrastructure
2. Shared Version Control 1. Respect
3. One Step Build and Deploy 2. Trust
4. Feature Flags
5. Shared Metrics 3. Healthy Attitude about failure
6. IRC and IMrobots 4. Avoiding Blame
Saturday, August 07, 2021
 October 2009 Debois decided to go exactly that – But first he needed a name . He take first three letters of development and
operations , add the word “days” and called it DevOpsDays. The conference of developer ,system administrators toolsmiths and
other held on 30th Oct. This ongoing discussion was move to twitter after conference end. To Create a memorable hashtag ,Debois
shorten the name to #DevOps.

4 TCS Confidential
Agile Principles applicable to DevOps

Highest priority is to satisfy the customer through early and continuous


01 delivery of software

Deliver working software frequently, from a couple of weeks to a couple of


03
months, with a preference to the shorter timescale

Business and developers must work together daily throughout the project


04

07 Working software is the primary measure of progress

5 TCS Confidential
DevOps KPIs and Metrics

Dev wants Change (Agility) and Ops wants stability (Reliability)


Hence DevOps Metrics should address both Agility and Reliability

Agility Measures Reliability Measures

Deployment Frequency Change Failure Rate

Change Lead Time Mean Time to Recover (MTTR)

6 TCS Confidential
7 DevOps Practices

                                                                                                                                                                 

7 TCS Confidential
Deployment Pipeline

Develop Manage Build & Test Host


• Regression Suit
• Function Tests

DEV
Version Control CI & CD Server
Environment

Promote
 Build
Checkout

 Static Code Analysis


Pull Push  Unit Test Test
Environment

Local Clone Promote


IDE
Repository
Commit

PROD
Environment

8 TCS Confidential
Title and Content

109 255 131 0 85 214


207 255 56 99 165 73
246 255 155 190 28 42

Dark 1 Light 1 Dark 2 Light 2 Accent 1 Accent 2

185 151 193 255 255 236


175 75 187 221 255 137
164 7 0 62 255 29

Accent 3 Accent 4 Accent 5 Accent 6 Hyperlink Followed Hyperlink

Source Control
127
and Automation
Click to edit Master title style
203 179 212 255 255
175 215 149 195 242 249
221 238 197 223 171 213

Tata Blue 50% Tata Blue 25% Purple 50 % Purple 25 % Yellow 50 % Yellow 25 %

14 March 2018
229 248 180 214 241 251
205 241 213 231 240 251
186 235 154 200 202 241

Brown 50 % Brown 25 % Green 50 % Green 25 % Light Green 50% Light Green 25%

9 TCS Confidential
Source Control in DevOps
What is Version Control?
The management of changes to source code and documents achieved through the use of tools, that provide an ability to
 See differences between versions
 Support parallel development ( through Branches and merges)

It is considered one of the foundational elements of Software development

What should be version controlled?


 Source code
 Environment definition
 Infrastructure configuration
 Deployment scripts
 Documentation

In short Everything
Why version control?
 Predictor of performance( as per state of DevOps report 2014)
Gene Kim’s Hypothesis
 A very high number of failures are due to misconfiguration and not bad code
 Allows anyone to recreate environments solely from what is in source control (As opposed to knowledge of individuals)

10 TCS Confidential
Title and Content

109 255 131 0 85 214


207 255 56 99 165 73
246 255 155 190 28 42

Dark 1 Light 1 Dark 2 Light 2 Accent 1 Accent 2

185 151 193 255 255 236


175 75 187 221 255 137
164 7 0 62 255 29

Accent 3 Accent 4 Accent 5 Accent 6 Hyperlink Followed Hyperlink

Continuous Integration - Continuous Delivery –Continuous Deployment


Click to edit Master title style
127
175
203
215
179
149
212
195
255
242
255
249
221 238 197 223 171 213

Tata Blue 50% Tata Blue 25% Purple 50 % Purple 25 % Yellow 50 % Yellow 25 %

Saturday, August
229
07, 2021 248 180 214 241 251
205 241 213 231 240 251
186 235 154 200 202 241

Brown 50 % Brown 25 % Green 50 % Green 25 % Light Green 50% Light Green 25%

11 TCS Confidential
Continuous Integration (CI)
• Traditionally, developers work in their local branch and merge the code when the integration
is planned
• This results in sudden surprises in terms of breaking others code and panic situation
• Greater chances of schedule slippages, team confrontations and decrease in team motivation
level

• In CI, developers merge their code changes to the main branch as often as possible(daily) 
• The changes are then validated by creating a build and running automated tests against the
build to ensure if their code isn’t breaking others
• This avoids integration issues

Continuous integration puts a great emphasis on testing automation to check that the
application is not broken whenever new commits are integrated into the main branch
12 TCS Confidential
Continuous Integration (CI)

13 TCS Confidential
Benefits of Continuous Integration (CI)

Address bugs and issues at Improve productivity of


very early stage developers

Faster delivery of software Increased confidence in code


updates long before production

14 TCS Confidential
Best Practices in Continuous Integration…..
 Maintain a code repository − Everything is kept in the code repository.
 Automate the build − This is a key step in the continuous Integration process.
 Make the build self-testing − Test the build by keeping unit test cases in place. These test cases should
be run by the Continuous Integration server.
 Everyone commits to the baseline every day − This is a key principle of Continuous Integration. There is
no point staying till the end of the entire process to see who breaks the build.
 Every commit (to baseline) should be built − Every commit made to the application, needs to be
successfully built. If the build fails for whatever reason, then the code needs to be changed to ensure the
build passes.
 Keep the build fast − If the build is slow, then it would indicate a problem in the entire Continuous
Integration process. Ensure that the builds are always limited to a duration, preferably should never go
beyond 10 minutes.
 Everyone can see the results of the latest build − Dashboard gives everyone a view of all the builds,
which have either passed or failed. This gives a good insight to all the people who are involved in the
Continuous Integration process.
 Never Go Home on a Broken Build
 Don’t Check In on a Broken Build
15 TCS Confidential
Continuous Delivery (CD)
• Continuous delivery is an extension of continuous integration
• It will make sure that the code can release new changes to the customers quickly in a sustainable way 
• This means that on top of having automated the testing, it also automated release process and can deploy application at any point of time

16 TCS Confidential
Benefits of Continuous Delivery (CD)

 Deliver software with fewer bugs and lower risk.


 Release new features to market more frequently — and learn.
 Provides fast feedback cycles
 Enables Automated testing throughout the delivery pipeline
 Encourage Infrastructure as Code
 Respond to marketing conditions more quickly.
 Life is saner for everyone: IT operations, software development, QA, product

owners and business line owners.


17 TCS Confidential
Continuous Deployment

• Continuous deployment goes one step further than continuous delivery


• With this practice, every change that passes all stages of production pipeline is released to
the customers automatically
• There's no human intervention, and only a failed test will prevent a new change to be
deployed to production
• Continuous deployment is an excellent way to accelerate the feedback loop with the
customers

Feature flags are


commonly used to ensure
code deployed to product
environment is not
necessarily released to all
end users
18 TCS Confidential
Continuous Integration vs Continuous Delivery vs Continuous Deployment

19 TCS Confidential
Title and Content

109 255 131 0 85 214


207 255 56 99 165 73
246 255 155 190 28 42

Dark 1 Light 1 Dark 2 Light 2 Accent 1 Accent 2

185 151 193 255 255 236


175 75 187 221 255 137
164 7 0 62 255 29

Accent 3 Accent 4 Accent 5 Accent 6 Hyperlink Followed Hyperlink

Infrastructure as Code
Click to edit Master title style
127 203 179 212 255 255
175 215 149 195 242 249
221 238 197 223 171 213

Tata Blue 50% Tata Blue 25% Purple 50 % Purple 25 % Yellow 50 % Yellow 25 %

Saturday, August
229
07, 2021 248 180 214 241 251
205 241 213 231 240 251
186 235 154 200 202 241

Brown 50 % Brown 25 % Green 50 % Green 25 % Light Green 50% Light Green 25%

20 TCS Confidential
Infrastructure as a Code

1. Configuration Management of Infrastructure

• Problem Statement:
• Infrastructure configurations keep changing. If done manually, changes become difficult to trace. Difficult to replicate and build a new
infrastructure component e.g. server or database.

• Solution: Configuration Management of Infrastructure


• Manage Infrastructure configurations Configurations or
• In the form of executable scripts (not documentation of manual setup steps) Environments as
• And have version control of these scripts (becomes versions of environments) code

• Benefits
• Can replicate/ build environments easily, without defects
• Foundation for automation of environment setup
• Enables consistent environments
• e.g. Can detect configuration drifts and rollback to a previous version

2. Release Management through code

• Maintaining Release Management activities as a code – Maintaining


• What : What components are to be released,
• Where: In what environment
• How: Steps to setup environment and deploy code
as a code

21 TCS Confidential
DevOps Implementation

Tools Fully Configured


People

Team Models:
Embedded: Dev (Change Activity) + Ops (Run Activity)

Dev+Ops
Collaborative Model: Can we shared team

Dev Ops

22 TCS Confidential
Title and Content

109 255 131 0 85 214


207 255 56 99 165 73
246 255 155 190 28 42

Dark 1 Light 1 Dark 2 Light 2 Accent 1 Accent 2

185 151 193 255 255 236


175 75 187 221 255 137
164 7 0 62 255 29

Accent 3 Accent 4 Accent 5 Accent 6 Hyperlink Followed Hyperlink

Thank
Click you
to edit Master title style
127
175
203
215
179
149
212
195
255
242
255
249
221 238 197 223 171 213

Tata Blue 50% Tata Blue 25% Purple 50 % Purple 25 % Yellow 50 % Yellow 25 %

229 248 180 214 241 251


205 241 213 231 240 251
186 235 154 200 202 241

Brown 50 % Brown 25 % Green 50 % Green 25 % Light Green 50% Light Green 25%

23 TCS Confidential

You might also like