Date post: | 15-Apr-2017 |
Category: |
Software |
Upload: | steve-poole |
View: | 496 times |
Download: | 2 times |
DevOps & the Dark Side
10 ways to convince your team
DevOps is a force for good
Important Disclaimers
THE INFORMATION CONTAINED IN THIS PRESENTATION IS PROVIDED FOR INFORMATIONAL PURPOSES ONLY.
WHILST EFFORTS WERE MADE TO VERIFY THE COMPLETENESS AND ACCURACY OF THE INFORMATION CONTAINED IN THIS
PRESENTATION, IT IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED.
ALL PERFORMANCE DATA INCLUDED IN THIS PRESENTATION HAVE BEEN GATHERED IN A CONTROLLED ENVIRONMENT. YOUR
OWN TEST RESULTS MAY VARY BASED ON HARDWARE, SOFTWARE OR INFRASTRUCTURE DIFFERENCES.
ALL DATA INCLUDED IN THIS PRESENTATION ARE MEANT TO BE USED ONLY AS A GUIDE.
IN ADDITION, THE INFORMATION CONTAINED IN THIS PRESENTATION IS BASED ON IBM’S CURRENT PRODUCT PLANS AND
STRATEGY, WHICH ARE SUBJECT TO CHANGE BY IBM, WITHOUT NOTICE.
IBM AND ITS AFFILIATED COMPANIES SHALL NOT BE RESPONSIBLE FOR ANY DAMAGES ARISING OUT OF THE USE OF, OR
OTHERWISE RELATED TO, THIS PRESENTATION OR ANY OTHER DOCUMENTATION.
NOTHING CONTAINED IN THIS PRESENTATION IS INTENDED TO, OR SHALL HAVE THE EFFECT OF:
- CREATING ANY WARRANT OR REPRESENTATION FROM IBM, ITS AFFILIATED COMPANIES OR ITS OR THEIR SUPPLIERS AND/OR
LICENSORS3
Your Guide for Today’s Journey
4
Steve PooleIBM Developer
Making Java Real Since Version 0.9Open Source Advocate DevOps Practitioner (whatever that
means!)
Driving Change
My Goals
You should be able to leave today knowing
How to explain what DevOps is and what it is not
How to explain the benefits of DevOps and the Cloud to developers, ‘suits’ and IT specialists’
Your next step in promoting DevOps
Is ‘DevOps’ considered harmful?
There are some who assert that DevOps is just a fashion
That it’s not needed and mightbe counter-productive
Is that true?
Let’s start by looking at what’shappening in our industry
http
s://w
ww.fl
ickr.c
om/p
hoto
s/wh
atle
ydud
e/
CloudCloudCloud
https://www.flickr.com/photos/28581681@N04/
Cloud Technologies. It’s a new world
The surge of Cloud technologies that offer compute ‘on tap’ are making businesses think differently about how to buy and use computing power
http
s://w
ww.fl
ickr.c
om/p
hoto
s/al
exbr
n/
Compute power = money
http
s://w
ww.fl
ickr.c
om/p
hoto
s/ep
sos/
Easier than ever beforea business can hire a CPU
Just for how long they need it.
No long term capital investment.
Just expense.
Immediate consequences?
1/1/13 1/1/14 1/1/15 1/1/16 1/1/170
5
10
15
20
25
30
35
TraditionalCloud
Does investment just move from one place to to the other?
Will cloud capacity justpick up the slack?
Immediate consequences?
1/1/13 1/1/14 1/1/15 1/1/16 1/1/170
5
10
15
20
25
30
35
TraditionalCloud
Will ‘cloud’ capacity justpick up the slack?
If I can buy X amount of CPU over a year…
Immediate consequences?
1/1/13 1/1/14 1/1/15 1/1/16 1/1/170
5
10
15
20
25
30
35
TraditionalCloud
I can buy 4X over ¼ the time…
And deliver much earlier!
Immediate consequences?
1/1/13 1/1/14 1/1/15 1/1/16 1/1/170
5
10
15
20
25
30
35
TraditionalCloud
Repeatedly…
cloud capacity is changing the way software needs to be developed
It’s a new tidal world
http
s://w
ww.fl
ickr.c
om/p
hoto
s/m
emeb
inge
/
Means you can start small andadd what you need when you need it..
and take it away when you’re done
Like carriages on a train
The ability to ‘just’ grow capacity
http
s://w
ww.fl
ickr.c
om/p
hoto
s/44
5342
36@
N00/
Service also means something new now…
http
s://w
ww.fl
ickr.c
om/p
hoto
s/de
reks
key/
“Software as a Service”profoundly changes the way software is designed anddelivered
No more delivering parts that someone else puts together
No more handing your code off to others to use in production.
Service means something new now…
http
s://w
ww.fl
ickr.c
om/p
hoto
s/pm
iaki
/
If you offer Software as a Service…
Your software could go into production immediately
Like changing the teeth on a tunnel boring machine while it’s still cutting
Ready for that?
Your software
http
s://w
ww.fl
ickr.c
om/p
hoto
s/m
taph
otos
/
Cloud computing: power = money
Businesses see the opportunities here
Improved value for money, decreased time-to-market, shorter time to value
“I can now get my ideas into production in hours,days or weeks. I can get immediate feedback AND then I can improve the idea and repeat”
Compute power = money
Money changes everything
With a measureable and direct relationship between $ and CPU/RAM The financial success or failure of a project is even easier to see
And that means…
Even more focus on value for money.
$
Cloud based applications work differently
“Everything fails all the time [in the cloud]”
Werner Volgels, CTO, Amazon
Your application has to work in a new way, in a new place.
Where strange behaviors happen all the time
It needs to be ‘anti-fragile’ht
tps:
//www
.flick
r.com
/pho
tos/
firefl
ythe
grea
t/
In the software industry? You’re affected
Whatever you do – your world is changing.
Old ways of developing and delivering software are being replaced with new, faster, easier and more powerful ,alternatives
A different analogy
https://www.flickr.com/photos/stawarz/ https://www.flickr.com/photos/dominicspics/
Scared yet?
You will be
is it really that bad?
http
s://w
ww.fl
ickr.c
om/p
hoto
s/tm
-tm/
Re-quirements
Design Code Dev QA Ops020406080
100120140160
1 5 10 20
50
150
Bug fix cost
You’ve all seen this sortof chart
Think about it differently..
It’s “time” & “delay” but also “fitness for purpose” & “hard to rectify”
Quality
Re-quirements
Design Code Dev QA Ops020406080
100120140160
1 5 10 20
50
150
Bug fix cost
You’ve all seen this sortof chart
Think about it differently..
It’s “time” & “delay” but also “fitness for purpose” & “hard to rectify”
Ops problems can kill your business. How much do you know about Ops?
Quality
Too often we hear aboutfailures in systems that come about due a simple bug or vulnerability occurring in a complex situation or in a more organic environment than expected
Design / Feedback
Delivery Times
Case Study: A large bank uses agile techniques to create ‘complete’ solutions in < 3 weeks.
But It takes the Ops team about 15 months elapsed before the deployment process starts and It take about 3 months to complete
deployment
why?
3 weeks to develop vs 3 months to make deployable = continuous backlog
Continuous backlog = some projects never see the light of day
AND Ops talk to Dev 15 months after completion -> you can guess how that turns out….
Our Dev teams and Ops teams do not communicate properly
but we know what to do…
It’s a problem baked into our processes
http://www.comicvine.com/images/1300-3387749
Who here ‘does’ Agile?
Once upon a time the universe was not agile
Design, Code Unit testDe
v
Functional TestSystem test
QA
Stage ConfigureOp
s
Fix bugsFix bugsHelplineSu
ppor
t
Monitor, backupupgrade, support,
repairsecurity, compliance
UsesClie
n t
reality chasm
This was called “Waterfall”
Reinforced team separation
Long feedback cycles Long time-to-market
Tended to increase ‘Release Panic’
BIGRealityChasmDEV OPS
Waterfall - more a roller-coaster ride…
Time
# of
bu
gs
Start to panichere Really
panichere
DEV OPS
QAClient
£Value here
If you fell into the reality chasm…
Time
# of
bu
gs
Start to panichere Really
panichere
DEV OPS
QAClient
NoValue here
Agile helps reduce the chasm
Time
# of
bu
gs
Feedback here
OPS
Client
DEV
Feedback here
Feedback here
QA$
Value here
Time
# of
bu
gs
OPS
Client
DEVQA
$
I want valuehere
And here
Now the business says..
The new challenge – we can’t afford the gap
Time
# of
bu
gs
OPS
Client
DEVQA
$Move Left
We need EVERYONE working together
Time
# of
bu
gs
OPSDEV
QA
$ $ $Client
Agile drives automation: baking knowledge into tools
Continuous Integration
JUnitSCM BuildBuild
OrchestrationUnitTest
Continuous Feedback
Got automated QA and delivery?
Continuous Integration
JUnit
Continuous Delivery
Repository
Performance & QA
Deployment tools
Continuous Feedback
How about automated deployment?
Continuous Integration
JUnit
Continuous DeliveryHosting Continuous Feedback
New challenge: automating provisioning and deployment
Continuous Integration
JUnit
Continuous DeliveryContinuous Feedback
Continuous Deployment
Continuous Feedback
Hosting
How fast do we need to be?
Continuous Integration
JUnit
Continuous DeliveryContinuous Feedback Hosting
Days? Weeks? Months?
How quickly do you need to get good code into production?
Would you believe < 1hr?Case Study: A fashion retailer can show measureable increase in
sales if a item similar to that seen in the media can be placed on their on-line store landing page within 1 hr of it appearing in public.
Each product placement is different so they need a fast, agile, approach that does not jeopardize their on-line stores availability
and quality.
We know how to do this..
Open Stack
Cloud technologies enable even greater opportunities
Continuous Deployment Pipeline
External CloudOn premises cloud
Clou
dDe
ploy
men
tOr
ches
trato
rJUnit
JUnit
Building a continuous deployment system
Continuous Deployment
Continuous Feedback
Dev and OpsNeed to share the challenges and using their relevantskills across the process.
We can’t afford not to
The imperative of DevOpsStartups through to big businesses are demanding the value that DevOps & Cloud Technologies can offer
1. Production deployment pipeline up and running in days
2. Updates published in hours or minutes – continuously
DevOps helps transition an organization into this new world…
The imperative of DevOps
The cost?
1. Standardized pipelines2. Dev and Ops teams working together3. Greatly expanding your horizons and your technical skills4. Leaving your comfort zone
Let’s see. What we need is
10 Ways to convince your team DevOps is a force for good
DevOps is the next evolution of Agile
#1 DevOps is not a technology it’s a movement
It’s about the next stage in workingtogether to deliver software
It’s about reducing delivery friction through knowledge sharing
It’s about applying Agile ideas to Ops
It’s about collaboration and sharing
It’s about changing the culture
Manifesto for Agile Software
Development
Individuals and interactions over
processes and tools
Working software over comprehensive
documentation
Customer collaboration over contract
negotiation
Responding to change over following a
plan
DevOps enables effective use of cloud technologies #2 Working together and exploiting “Infrastructure as Code’
approaches and technologies such as Docker, PaaS’s etc enable Ops teams to bake in their requirements and Dev & QA teams to run in modes much more like production
#3 Using virtualisation solutions like IaaS and PaaS makes deployment easier and more ‘self-service’. This reduces the overhead on the Ops team and hence improves delivery time
#4 It works the other way too – getting Dev team monitoring and diagnostics baked-in means less back and forth and no need to access that production server..
DevOps and the Cloud is now a business agility goal
The demonstrable benefits of using DevOps and Cloud tech are self evident enough now that everyone wants to do it
Bringing Development & IT together to solve deployment problems through sharing and
learning creates an organization with
“Strong IT performance”
This is becoming a major competitiveadvantage
.
#5 - 30x deliveries
#6 - 50% reduction in deployment failures
#7 2x likely to exceed important business goals
Sour
ce: p
uppe
t lab
s 20
14
#8 And – by getting devops adopted you’re also more likely to get other more modern ideas happening too
“Using version control for scripts”“Automating testing”“Using TDD or BDD” “we need to adopt Micro-services
design”Why can’t we get our systems
proactively monitored?”“How about Pair-programming –
even for ops
“Lets be honest – developers are lazy. If you have to do it twice you’ll write a script. Ops teams worry about everything the lazy developer didn’t do. - like security,”
“low-friction organizations are good at recognizing and removing obstacles – got an HR system that gets in the way. Hate that corporate expense tool? Wish you had a corporate expense tool instead of the paperwork?”
“Since DevOps (and Agile) is about failing early and failing fast that approach can spill over into the day to day culture – let it happen! Make it safe to fail..And what about security – how about getting security ‘baked-in’ right at the design time?”
Last 2…
#9 – DevOps increases Job SatisfactionIT Companies with high levels of job satisfaction are mostly likely
to be able to deliver consistently and with high quality. (Hint – who get chosen 1st?)
#10 Adopting DevOps & the Cloud successfully make your
organisation well positioned for exploiting new capabilities – like Analystics, BigData or even something like IBM’s Watson
SummaryBusinesses need to be able to react faster…
…DevOps and the Cloud are key enablers
DevOps is as much a game changer as Agile was……this is a Developer, QA and Ops “renaissance”
Don’t be afraid to learn and experiment……you’ll benefit even if the tech doesn’t survive
Agile moved you closer to the customer……DevOps moves you closer to the IT team
What do to next..1 – Lean and present Docker and PaaS style options to your peers. Whether Ops or Dev you’ll see the value
2 – Find a buddy in the other camp.
3 – Get ‘real’ monitoring going across your infrastructure and applications what ever you can monitor do so. And graph it, put up dashboards.
Look for and learn the warning signs of a failing system and get your peers and detractors to see the value
(BTW – don’t monitor a system when you need to monitor the app!)
4 – Start to tackle automation look for the places where others are challenged. And fix it for them. Introduce Chef, Puppet, Bash, Groovy – the goal is automation 1st – cool tech 2nd
What to do next
Ask your organisation some difficult questions:
Deployment frequency?
Speed of deployment?
Deployment success rate?
How quickly service can be restored after a failed deployment?
Time from 1 line of code until in hands of the customer?
Maybe DevOps isnot all bad?
Thank You!
http
s://w
ww.fl
ickr.c
om/p
hoto
s/le
ns-c
ap/