Is Your Porsche Cayenne Radio On The Fritz Here's What It Could Mean
519225492-DevOps-Version-2-4.pptx xxxxxx
1. 1 TCS Confidential
Click to edit Master title style
109
207
246
Dark 1
255
255
255
Light 1
131
56
155
Dark 2
0
99
190
Light 2
85
165
28
Accent 1
214
73
42
Accent 2
185
175
164
Accent 3
151
75
7
Accent 4
193
187
0
Accent 5
255
221
62
Accent 6
255
255
255
Hyperlink
236
137
29
Followed Hyperlink
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
205
186
Brown 50 %
248
241
235
Brown 25 %
180
213
154
Green 50 %
214
231
200
Green 25 %
241
240
202
Light Green 50%
251
251
241
Light Green 25%
Title and Content
DevOps Culture
2. 2 TCS Confidential
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
4. 4 TCS Confidential
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.
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.
1. Automated Infrastructure
2. Shared Version Control
3. One Step Build and Deploy
4. Feature Flags
5. Shared Metrics
6. IRC and IMrobots
18 February 2024
1. Respect
2. Trust
3. Healthy Attitude about
failure
4. Avoiding Blame
5. 5 TCS Confidential
TCS Confidential
Agile Principles applicable to DevOps
01
Highest priority is to satisfy the customer through early and continuous
delivery of software
Working software is the primary measure of progress
Business and developers must work together daily throughout the
project
Deliver working software frequently, from a couple of weeks to a
couple of months, with a preference to the shorter timescale
03
04
07
6. 6 TCS Confidential
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 Lead Time
Change Failure Rate
Mean Time to Recover (MTTR)
8. 8 TCS Confidential
TCS Confidential
Deployment Pipeline
Build
Static Code Analysis
Unit Test
• Regression Suit
• Function Tests
IDE
Local Clone
Repository
Version
Control
CI & CD
Server
DEV
Environment
Test
Environment
PROD
Environment
Checkout
Commit
Pull Push
Promote
Promote
Develop Manage Build & Test Host
9. 9 TCS Confidential
Click to edit Master title style
109
207
246
Dark 1
255
255
255
Light 1
131
56
155
Dark 2
0
99
190
Light 2
85
165
28
Accent 1
214
73
42
Accent 2
185
175
164
Accent 3
151
75
7
Accent 4
193
187
0
Accent 5
255
221
62
Accent 6
255
255
255
Hyperlink
236
137
29
Followed Hyperlink
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
205
186
Brown 50 %
248
241
235
Brown 25 %
180
213
154
Green 50 %
214
231
200
Green 25 %
241
240
202
Light Green 50%
251
251
241
Light Green 25%
Title and Content
Source Control and Automation
14 March 2018
10. 10 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)
11. 11 TCS Confidential
Click to edit Master title style
109
207
246
Dark 1
255
255
255
Light 1
131
56
155
Dark 2
0
99
190
Light 2
85
165
28
Accent 1
214
73
42
Accent 2
185
175
164
Accent 3
151
75
7
Accent 4
193
187
0
Accent 5
255
221
62
Accent 6
255
255
255
Hyperlink
236
137
29
Followed Hyperlink
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
205
186
Brown 50 %
248
241
235
Brown 25 %
180
213
154
Green 50 %
214
231
200
Green 25 %
241
240
202
Light Green 50%
251
251
241
Light Green 25%
Title and Content
Continuous Integration - Continuous Delivery –Continuous Deployment
18 February 2024
12. 12 TCS Confidential
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
14. 14 TCS Confidential
TCS Confidential
Benefits of Continuous Integration (CI)
Address bugs and issues at
very early stage
Improve productivity of
developers
Faster delivery of software
updates
Increased confidence in code
long before production
15. 15 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
16. 16 TCS Confidential
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
17. 17 TCS Confidential
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.
18. 18 TCS Confidential
TCS Confidential
Continuous Deployment
Feature flags are
commonly used to
ensure code deployed
to product environment
is not necessarily
released to all end users
• 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
19. 19 TCS Confidential
TCS Confidential
Continuous Integration vs Continuous Delivery vs Continuous Deployment
20. 20 TCS Confidential
Click to edit Master title style
109
207
246
Dark 1
255
255
255
Light 1
131
56
155
Dark 2
0
99
190
Light 2
85
165
28
Accent 1
214
73
42
Accent 2
185
175
164
Accent 3
151
75
7
Accent 4
193
187
0
Accent 5
255
221
62
Accent 6
255
255
255
Hyperlink
236
137
29
Followed Hyperlink
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
205
186
Brown 50 %
248
241
235
Brown 25 %
180
213
154
Green 50 %
214
231
200
Green 25 %
241
240
202
Light Green 50%
251
251
241
Light Green 25%
Title and Content
Infrastructure as Code
18 February 2024
21. 21 TCS Confidential
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
• In the form of executable scripts (not documentation of manual setup steps)
• And have version control of these scripts (becomes versions of environments)
• 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
Configurations or
Environments as
code
22. 22 TCS Confidential
TCS Confidential
DevOps Implementation
Tools Fully Configured
People
Team Models:
Embedded: Dev (Change Activity) + Ops (Run Activity)
Collaborative Model: Can we shared team
Dev+Ops
Dev Ops
23. 23 TCS Confidential
Click to edit Master title style
109
207
246
Dark 1
255
255
255
Light 1
131
56
155
Dark 2
0
99
190
Light 2
85
165
28
Accent 1
214
73
42
Accent 2
185
175
164
Accent 3
151
75
7
Accent 4
193
187
0
Accent 5
255
221
62
Accent 6
255
255
255
Hyperlink
236
137
29
Followed Hyperlink
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
205
186
Brown 50 %
248
241
235
Brown 25 %
180
213
154
Green 50 %
214
231
200
Green 25 %
241
240
202
Light Green 50%
251
251
241
Light Green 25%
Title and Content
Thank you