© IBM Corporation1
Presented by:
Death to Manual Deployments
Eric Minick
Senior Offering Manager,
and DevOps Evangelist
© IBM Corporation2
Death to manual deployments
Kill manual deployments before they kill you
SEC Findings
© IBM Corporation3
Who’s that guy?
Eric Minick
Senior Offering Manager, IBM
UrbanCode & DevOps Services
Helping clients implement build,
deploy & release tooling for the
past 10 years
eminck@us.ibm.com
@EricMinick
© IBM Corporation4© IBM Corporation4
Confession:
I hate manual
deployments
• They’re slow
• They aren’t consistent
across environments
• You fail in production
• You don’t know who
deployed what, where or
when
© IBM Corporation5© IBM Corporation5
Why do people like
manual
deployments?
?
• I feel more in control from
the command line
• It’s how I’ve always done it
• I know what I did and see
the output of the
commands I ran
• When something goes
wrong, I can be the hero
and fix it
© IBM Corporation6
text
Scripts to the rescue?
• I don’t have a manual deployment: I have scripts!
o How many scripts?
o What order?
o Who has permissions to run them?
o Are they the same across environments?
o What else do you need to do?
• Scripts are only part of a fully automated deployment.
© IBM Corporation7
I love automated
deployments! • They’re not slow
• They are consistent across
environments
• You don’t fail in production
• You do know who
deployed what, where or
when
© IBM Corporation8
text
Automated deployments provide benefits
Provide a platform you can build on
• continuous deploys, smoke tests, other goodies
Empower people while increasing control
• stop waiting on other people;
stop being harassed by other people
Better, faster, cheaper
• (pick any 3)
© IBM Corporation9
The Program
• Today’s Manual
Deployments
• Elementsof an Automated
Solutions
• Trends in Deployment
Automation
© IBM Corporation10© IBM Corporation10
Today’s Manual Deployments
© IBM Corporation11
… you might have a
manual deployment • Hand-offs are through email (or
file shares)
• Developers, QA, and Ops
deploy differently
• Tweaks communicated on an
as-broken basis
• Deployments steps are a huge
document
• The term “deployment
weekend” is used
• Developers have production
passwords
© IBM Corporation12
text
Hand-offs are through email (or file shares)
• They’re slow
• They aren’t consistent across environments
• You fail in production
• You don’t know who deployed what, where or when
?
© IBM Corporation13
text
Developers, QA, and Ops deploy differently
• They’re slow
• They aren’t consistent across environments
• You fail in production
• You don’t know who deployed what, where or when
© IBM Corporation14
text
Tweaks communicated on as-broken basis
• They’re slow
• They aren’t consistent across environments
• You fail in production
• You don’t know who deployed what, where or when
The main page won’t load?
Oh… Right, you needed to
add another data source.
© IBM Corporation15
text
Deployment steps are a huge document
• They’re slow
• They aren’t consistent across environments
• You fail in production
• You don’t know who deployed what, where or when
© IBM Corporation16
text
The term “deployment weekend” is used
• They’re slow
• They aren’t consistent across environments
• You fail in production
• You don’t know who deployed what, where or when
That’s ok, I
don’t really
like my kids
anyway
© IBM Corporation17
text
Developers have productionpasswords
• They’re slow
• They aren’t consistent across environments
• You fail in production
• You don’t know who deployed what, where or when
© IBM Corporation18
If only people were
more disciplined...
• Deployment docs
• could capture everything
• always be updated
• could be followed them,
perfectly, every time.
• Audit spreadsheets
• could capture everything
• could update them
© IBM Corporation19
text
People aren’t machines
Automated deployments leverage the strengths of
people and machines.
Creative Consistent
Alistair Cockburn, “Characterizing People as Non-Linear, First-Order
Components in Software Development”
© IBM Corporation20© IBM Corporation20
Elements of an Automated Solution
© IBM Corporation21
Elements of an
automated solution
• Automated process
• Coordinating tiers
• Environment definitions
• Artifact repository
• Access control
• Audit trail
© IBM Corporation22
Automated process
Fast, consistent and
repeatable
© IBM Corporation23
Coordinating Tiers / Components
Move all tiers, services, config, etc… together
What we need
• A model for whole systems
• Standard deployment based
on changes to all pieces and
parts
• Actual deployment runs the
needed subset.
© IBM Corporation24
text
Transitions of a Snapshot
Snapshot
Snapshots
Transitions of Components
Dev ProdQA
?
?
Snapshot Snapshot
QADev Prod
© IBM Corporation25
Environmentdefinitions:
Per-environment configuration and passwords
© IBM Corporation26
Artifact repository: Know what you’regetting
Where do the bits you
deploy come from?
© IBM Corporation27
Access control: Whocan deploy to which environment
Status Quo
• Controlled by who can log
onto the machine
• Access tends to grow over
time in response to crisis
• Access control distributed
across machines
What we need
• Role-based access control
• Access control by
environment
• Single source of access
control
• LDAP / Active Directory
authentication (or
authorization)
© IBM Corporation28
Audit trail: Know what happened
Status Quo
• What audit trail?
• I have the spreadsheet
• Our Change Management
System has what we think
we did
• Audit trail starts at PROD
What we need
• Win at Clue:
oWho
oWhat
oWhere
oWhen / How (better thanClue!)
• Require no additional work
• End-to-end traceability
© IBM Corporation29
SolutionBenefits
• We have confidence that our
productiondeployments will
succeed
• QA can take new builds faster
• DEV deployments fast enough to
keep up with our rate of change
• We have an audit trail from day one
• We have separation of duties
© IBM Corporation30© IBM Corporation30
Trends in Deployment Automation
© IBM Corporation31
Deployingall the stuff
Just what do we
include?
© IBM Corporation32
All the stuff is “a build”for about 12% of teams
© IBM Corporation33
All the stuff is “a build”for about 12% of teams
Pipeline tools
Release Automation
(UC Deploy)
Release Management
(UC Release)
© IBM Corporation34
Beyond the web app
Mobile App
Team
Middleware
team
Backend Systems of
Record
Managed as part of app:
• Mobile bits
• Database Changes
• Middleware &
• Middleware Config
• Mainframe Code
• Infrastructure
© IBM Corporation35
And down into the infrastructure
© IBM Corporation36
Deployingall the stuff
Boxes =
Web Services,
databases,
compute, network
mainframe, mobile,
etc, etc, etc
© IBM Corporation37© IBM Corporation37
Summary • Manual deployments are slow and
broken because they require
people to act like machines
• Computers make good machines
• Automate changes to anything that
can break your business app
• Test and promote all the things
together
© IBM Corporation38© IBM Corporation38
Tools Mentioned
© IBM Corporation39
IBM UrbanCode software solves…
Environment Provisioning
• blueprint deployments
• provision environment
• install OS / middleware
Application Deployment
• configure middleware
• deploy application
• deploy data
Release Management
• manage release plans
• manage change impact
• manage release pipeline
• schedule releases
IBM UrbanCode Deploy
IBM UrbanCode Release
+
© IBM Corporation40
Push Button Deployments
Role based security & gates
Scalable Architecture
1.2.3
System of Record
Everything is versioned & auditable
Easy to use process designer
Re-useable / Extensible
Integrations & Workflows
Continuous Delivery
Across Environments
Browser
Load Balancer
UrbanCode Deploy Master Servers
in Active/Active Config
Clustered
Meta-data DB
Flat file (SAN)
Storage for
Artifact Repo
Local Agents Agents in
Remote Data-
Center
Firewall
Agent Relay
IBM UrbanCode Deploy: App Deploy Automation
© IBM Corporation41
Cloud Blueprints for Deploy Self-Serve Environments
© IBM Corporation42
• Facilitate Release Planning
• Track application changes
• Manage release dependencies
• Enforce quality gates
• Accelerate delivery
• Increase visibility
• Better governance and control
• Improve stakeholder
engagement
Collaborate and govern with IBM UrbanCode Release
Rapidly manage complex releases of multi-interdependent applications
© IBM Corporation43© IBM Corporation43
It actually works
© IBM Corporation44
Achieving Application Delivery Velocity with a 482% ROI
The Total Economic ImpactTM
Of IBM UrbanCode
“The cost benefit to us
of implementing
UrbanCode was a
reduction of 97% in the
cost of a release. From
an average of eight
people working for 3
hours for every
release, it’s now one
person working 10 to
15 minutes.” ~ Enterprise
architect, global specialist
insurer
Forrester Consulting interviewed four IBM UrbanCode Deploy customers,gathered
and analyzed the data, and created a “composite organization” based on the insight.
Investment
$633,427
Savings & Benefits
$3,687,066
5X Payback
Download the commissioned
study conducted
by Forrester Consulting
https://ibm.biz/urbancodeTEI
3 Year Benefits:
• IT operations resource savings – $430k in allocated resource
headcount
• Faster time-to-market with improved productivity – $2.65m in
savings over 3 years
• Reduction in risk of failed deployments – $608k in savings from
reduced failed deployments
• Reduced cost per release by 97%
• Improved employee satisfaction by eliminating repetitive manual
processes and easing the workload
• Improved scalability and increased transparency into the release
process
© IBM Corporation45© IBM Corporation45
Thank you!
© IBM Corporation46
Your speaker
Eric Minick
Senior Offering Manager, IBM
UrbanCode & DevOps Services
Helping clients implement build,
deploy & release tooling for the
past 10 years
eminck@us.ibm.com
@EricMinick
© IBM Corporation47© IBM Corporation47
http://ibm.biz/learnurbancode
© IBM Corporation48© IBM Corporation48
Accelerating Digital Business

Death to Manual Deployments

  • 1.
    © IBM Corporation1 Presentedby: Death to Manual Deployments Eric Minick Senior Offering Manager, and DevOps Evangelist
  • 2.
    © IBM Corporation2 Deathto manual deployments Kill manual deployments before they kill you SEC Findings
  • 3.
    © IBM Corporation3 Who’sthat guy? Eric Minick Senior Offering Manager, IBM UrbanCode & DevOps Services Helping clients implement build, deploy & release tooling for the past 10 years eminck@us.ibm.com @EricMinick
  • 4.
    © IBM Corporation4©IBM Corporation4 Confession: I hate manual deployments • They’re slow • They aren’t consistent across environments • You fail in production • You don’t know who deployed what, where or when
  • 5.
    © IBM Corporation5©IBM Corporation5 Why do people like manual deployments? ? • I feel more in control from the command line • It’s how I’ve always done it • I know what I did and see the output of the commands I ran • When something goes wrong, I can be the hero and fix it
  • 6.
    © IBM Corporation6 text Scriptsto the rescue? • I don’t have a manual deployment: I have scripts! o How many scripts? o What order? o Who has permissions to run them? o Are they the same across environments? o What else do you need to do? • Scripts are only part of a fully automated deployment.
  • 7.
    © IBM Corporation7 Ilove automated deployments! • They’re not slow • They are consistent across environments • You don’t fail in production • You do know who deployed what, where or when
  • 8.
    © IBM Corporation8 text Automateddeployments provide benefits Provide a platform you can build on • continuous deploys, smoke tests, other goodies Empower people while increasing control • stop waiting on other people; stop being harassed by other people Better, faster, cheaper • (pick any 3)
  • 9.
    © IBM Corporation9 TheProgram • Today’s Manual Deployments • Elementsof an Automated Solutions • Trends in Deployment Automation
  • 10.
    © IBM Corporation10©IBM Corporation10 Today’s Manual Deployments
  • 11.
    © IBM Corporation11 …you might have a manual deployment • Hand-offs are through email (or file shares) • Developers, QA, and Ops deploy differently • Tweaks communicated on an as-broken basis • Deployments steps are a huge document • The term “deployment weekend” is used • Developers have production passwords
  • 12.
    © IBM Corporation12 text Hand-offsare through email (or file shares) • They’re slow • They aren’t consistent across environments • You fail in production • You don’t know who deployed what, where or when ?
  • 13.
    © IBM Corporation13 text Developers,QA, and Ops deploy differently • They’re slow • They aren’t consistent across environments • You fail in production • You don’t know who deployed what, where or when
  • 14.
    © IBM Corporation14 text Tweakscommunicated on as-broken basis • They’re slow • They aren’t consistent across environments • You fail in production • You don’t know who deployed what, where or when The main page won’t load? Oh… Right, you needed to add another data source.
  • 15.
    © IBM Corporation15 text Deploymentsteps are a huge document • They’re slow • They aren’t consistent across environments • You fail in production • You don’t know who deployed what, where or when
  • 16.
    © IBM Corporation16 text Theterm “deployment weekend” is used • They’re slow • They aren’t consistent across environments • You fail in production • You don’t know who deployed what, where or when That’s ok, I don’t really like my kids anyway
  • 17.
    © IBM Corporation17 text Developershave productionpasswords • They’re slow • They aren’t consistent across environments • You fail in production • You don’t know who deployed what, where or when
  • 18.
    © IBM Corporation18 Ifonly people were more disciplined... • Deployment docs • could capture everything • always be updated • could be followed them, perfectly, every time. • Audit spreadsheets • could capture everything • could update them
  • 19.
    © IBM Corporation19 text Peoplearen’t machines Automated deployments leverage the strengths of people and machines. Creative Consistent Alistair Cockburn, “Characterizing People as Non-Linear, First-Order Components in Software Development”
  • 20.
    © IBM Corporation20©IBM Corporation20 Elements of an Automated Solution
  • 21.
    © IBM Corporation21 Elementsof an automated solution • Automated process • Coordinating tiers • Environment definitions • Artifact repository • Access control • Audit trail
  • 22.
    © IBM Corporation22 Automatedprocess Fast, consistent and repeatable
  • 23.
    © IBM Corporation23 CoordinatingTiers / Components Move all tiers, services, config, etc… together What we need • A model for whole systems • Standard deployment based on changes to all pieces and parts • Actual deployment runs the needed subset.
  • 24.
    © IBM Corporation24 text Transitionsof a Snapshot Snapshot Snapshots Transitions of Components Dev ProdQA ? ? Snapshot Snapshot QADev Prod
  • 25.
  • 26.
    © IBM Corporation26 Artifactrepository: Know what you’regetting Where do the bits you deploy come from?
  • 27.
    © IBM Corporation27 Accesscontrol: Whocan deploy to which environment Status Quo • Controlled by who can log onto the machine • Access tends to grow over time in response to crisis • Access control distributed across machines What we need • Role-based access control • Access control by environment • Single source of access control • LDAP / Active Directory authentication (or authorization)
  • 28.
    © IBM Corporation28 Audittrail: Know what happened Status Quo • What audit trail? • I have the spreadsheet • Our Change Management System has what we think we did • Audit trail starts at PROD What we need • Win at Clue: oWho oWhat oWhere oWhen / How (better thanClue!) • Require no additional work • End-to-end traceability
  • 29.
    © IBM Corporation29 SolutionBenefits •We have confidence that our productiondeployments will succeed • QA can take new builds faster • DEV deployments fast enough to keep up with our rate of change • We have an audit trail from day one • We have separation of duties
  • 30.
    © IBM Corporation30©IBM Corporation30 Trends in Deployment Automation
  • 31.
    © IBM Corporation31 Deployingallthe stuff Just what do we include?
  • 32.
    © IBM Corporation32 Allthe stuff is “a build”for about 12% of teams
  • 33.
    © IBM Corporation33 Allthe stuff is “a build”for about 12% of teams Pipeline tools Release Automation (UC Deploy) Release Management (UC Release)
  • 34.
    © IBM Corporation34 Beyondthe web app Mobile App Team Middleware team Backend Systems of Record Managed as part of app: • Mobile bits • Database Changes • Middleware & • Middleware Config • Mainframe Code • Infrastructure
  • 35.
    © IBM Corporation35 Anddown into the infrastructure
  • 36.
    © IBM Corporation36 Deployingallthe stuff Boxes = Web Services, databases, compute, network mainframe, mobile, etc, etc, etc
  • 37.
    © IBM Corporation37©IBM Corporation37 Summary • Manual deployments are slow and broken because they require people to act like machines • Computers make good machines • Automate changes to anything that can break your business app • Test and promote all the things together
  • 38.
    © IBM Corporation38©IBM Corporation38 Tools Mentioned
  • 39.
    © IBM Corporation39 IBMUrbanCode software solves… Environment Provisioning • blueprint deployments • provision environment • install OS / middleware Application Deployment • configure middleware • deploy application • deploy data Release Management • manage release plans • manage change impact • manage release pipeline • schedule releases IBM UrbanCode Deploy IBM UrbanCode Release +
  • 40.
    © IBM Corporation40 PushButton Deployments Role based security & gates Scalable Architecture 1.2.3 System of Record Everything is versioned & auditable Easy to use process designer Re-useable / Extensible Integrations & Workflows Continuous Delivery Across Environments Browser Load Balancer UrbanCode Deploy Master Servers in Active/Active Config Clustered Meta-data DB Flat file (SAN) Storage for Artifact Repo Local Agents Agents in Remote Data- Center Firewall Agent Relay IBM UrbanCode Deploy: App Deploy Automation
  • 41.
    © IBM Corporation41 CloudBlueprints for Deploy Self-Serve Environments
  • 42.
    © IBM Corporation42 •Facilitate Release Planning • Track application changes • Manage release dependencies • Enforce quality gates • Accelerate delivery • Increase visibility • Better governance and control • Improve stakeholder engagement Collaborate and govern with IBM UrbanCode Release Rapidly manage complex releases of multi-interdependent applications
  • 43.
    © IBM Corporation43©IBM Corporation43 It actually works
  • 44.
    © IBM Corporation44 AchievingApplication Delivery Velocity with a 482% ROI The Total Economic ImpactTM Of IBM UrbanCode “The cost benefit to us of implementing UrbanCode was a reduction of 97% in the cost of a release. From an average of eight people working for 3 hours for every release, it’s now one person working 10 to 15 minutes.” ~ Enterprise architect, global specialist insurer Forrester Consulting interviewed four IBM UrbanCode Deploy customers,gathered and analyzed the data, and created a “composite organization” based on the insight. Investment $633,427 Savings & Benefits $3,687,066 5X Payback Download the commissioned study conducted by Forrester Consulting https://ibm.biz/urbancodeTEI 3 Year Benefits: • IT operations resource savings – $430k in allocated resource headcount • Faster time-to-market with improved productivity – $2.65m in savings over 3 years • Reduction in risk of failed deployments – $608k in savings from reduced failed deployments • Reduced cost per release by 97% • Improved employee satisfaction by eliminating repetitive manual processes and easing the workload • Improved scalability and increased transparency into the release process
  • 45.
    © IBM Corporation45©IBM Corporation45 Thank you!
  • 46.
    © IBM Corporation46 Yourspeaker Eric Minick Senior Offering Manager, IBM UrbanCode & DevOps Services Helping clients implement build, deploy & release tooling for the past 10 years eminck@us.ibm.com @EricMinick
  • 47.
    © IBM Corporation47©IBM Corporation47 http://ibm.biz/learnurbancode
  • 48.
    © IBM Corporation48©IBM Corporation48 Accelerating Digital Business