SlideShare une entreprise Scribd logo
1  sur  43
The Tricky Bits of Deployment Automation:
Mainframe Code, WAS Configuration,
Databases
Eric Minick
IBM DevOps Evangelist
IBM Software, Rational
eminick@us.ibm.com
@ericminick
Robert Reeves
Chief Technology Officer
Datical, Inc.
r2@datical.com
@robertreeves
Agenda
 What makes something hard to deploy?
 Why do it anyway?
 Three examples:
–Database schema updates
–Mainframe code changes
–WebSphere Application Server configuration changes
 Q&A
What makes something hard to deploy?
Where “Something” = Component of an app
Easy things to deploy fit the classic pipeline
Code turned into a
package by a build
A version of the thing
can be stored on the
file system
The stuff in the
environment is
what is in the repo
Rolling back is just
redeploying the old
version
Hard things break the build promotion model
Not source controlled
Changes are incremental
Not owned by development
Deploy process is inconsistent
Agenda
 What makes something hard to deploy?
 Why do it anyway?
 Three examples:
–Database schema updates
–WebSphere Application Server configuration changes
–Mainframe code changes
 Q&A
Why Automate the Hard Stuff?
Because that stuff is part
of our application.
♫ Without Automation:
• We make mistakes
• We forget things
• We schedule based on
engineer availability
Agenda
 What makes something hard to deploy?
 Why do it anyway?
 Three examples:
–Database schema updates
–WebSphere Application Server configuration changes
–Mainframe code changes
 Q&A
Database Change Management Challenges
Test
Development
Build
Code
Database Change Management Challenges
Test
Release
Test
Development
Build
Code
Database Change Management Challenges
ProductionTest
Release
Test
Development
Build
Code
Database Change Management Challenges
Production
SQL Script 1
SQL Script 3
SQL Script 2
Test
Release
Test
Development
Build
Code
Database Change Management Challenges
Production
SQL Script 1
SQL Script 3
SQL Script 2
Test
Release
Test
Development
Build
Code
Database Change Management Challenges
Production
SQL Script 1
SQL Script 3
SQL Script 2
Test
Release
Test
Development
Build
Code
Database Change Management Challenges
Production
SQL Script 1
SQL Script 3
SQL Script 2
Test
Release
Test
Development
Build
Code
Database Change Management Challenges
Production
SQL Script 1
SQL Script 3
SQL Script 2
Test
Release
Test
Development
Build
Code
Database Change Management Challenges
Production
Manual Change Manual Change
SQL Script 1
SQL Script 3
SQL Script 2
Test
Release
Test
Development
Build
Code
Database Change Management w/Datical DB
Test
Development
Build
Test Production
Release
CodeCode DaticalDB
Database Change Management w/Datical DB
Test
Development
Build
Test Production
Release
CodeCode DaticalDB
Model
Easily create and
model database
changes across your
software release
stages.
Database Change Management w/Datical DB
Test
Development
Build
Test Production
Release
CodeCode DaticalDB
Model
Easily create and
model database
changes across your
software release
stages.
Forecast
Proactively scrutinize
the impact of
database changes in
production – or any
other environment –
before you deploy.
Database Change Management w/Datical DB
Test
Development
Build
Test Production
Release
CodeCode DaticalDB
Model
Easily create and
model database
changes across your
software release
stages.
Forecast
Proactively scrutinize
the impact of
database changes in
production – or any
other environment –
before you deploy.
Deploy
Deploys database
schema changes to
multiple databases
and mixed
environments
simultaneously.
Database Change Management w/Datical DB
Test
Development
Build
Test Production
Release
CodeCode DaticalDB
Model
Easily create and
model database
changes across your
software release
stages.
Forecast
Proactively scrutinize
the impact of
database changes in
production – or any
other environment –
before you deploy.
Deploy
Deploys database
schema changes to
multiple databases
and mixed
environments
simultaneously.
Manage
Confidently know the
current state of the
database and how it
got there across the
application release
lifecycle.
Datical Product Overview
Deploy Plan
DEV
QA
PROD
Datical Product Overview
Deploy Plan
DEV
QA
PROD
Datical DB Engine
Datical Product Overview
Deploy Plan
DEV
QA
PROD
ChangeSet 1
ChangeSet 2
ChangeSet 3
ChangeLog
Datical DB Engine
Datical Product Overview
Baseline
Captures the
current state
of the
database
Compare
Provides
schema
differences
between
environments
Forecast
Impacts
analysis of
proposed
changes
Deploy
Executes
changes to the
database
Rollback
Undo select
database
changes
Audit
Provides
visibility into
database
changes
Deploy Plan
DEV
QA
PROD
ChangeSet 1
ChangeSet 2
ChangeSet 3
ChangeLog
Datical DB Engine
Datical Product Overview
Baseline
Captures the
current state
of the
database
Compare
Provides
schema
differences
between
environments
Forecast
Impacts
analysis of
proposed
changes
Deploy
Executes
changes to the
database
Rollback
Undo select
database
changes
Audit
Provides
visibility into
database
changes
C:datialdb.exe
user@host:~$./daticaldb
Datical DB UI Datical DB CLI Integrations
Deploy Plan
DEV
QA
PROD
ChangeSet 1
ChangeSet 2
ChangeSet 3
ChangeLog
Datical DB Engine
Datical Product Overview
Baseline
Captures the
current state
of the
database
Compare
Provides
schema
differences
between
environments
Forecast
Impacts
analysis of
proposed
changes
Deploy
Executes
changes to the
database
Rollback
Undo select
database
changes
Audit
Provides
visibility into
database
changes
C:datialdb.exe
user@host:~$./daticaldb
Datical DB UI Datical DB CLI Integrations
Deploy Plan
DEV
QA
PROD
ChangeSet 1
ChangeSet 2
ChangeSet 3
ChangeLog
Datical DB Engine
Agenda
 What makes something hard to deploy?
 Why do it anyway?
 Three examples:
–Database schema updates
–WebSphere Application Server configuration changes
–Mainframe code changes
 Q&A
WebSphere Config – What are we deploying?
Let’s see… The app needs:
• More memory
• Longer timeout setting on the JDBC connector
• Subscription to a new message queue
WebSphere Config – Why it’s hard
Not source controlled
Changes are incremental
Not owned by development
Deploy process is inconsistent




Strategy: Infrastructure as Code
 Represent Configuration as Files
–Have a “build” than can be versioned
–Can compare versions to see what changed
 Requirements for Automation
–Tokenize / Replace per environment settings
–Extract configuration from a known good target
–Apply to other servers
Reliable Middleware Configuration
Management
Artifact Library
Application
EAR
WAR
DB
Cluster
template
Exemplar
WAS Cell
Plugin
Import
configuration
WAS Configuration Template Creation
+ Template
Assembled
PROD
QA
Dev
Deploy and promote application and
configuration across environments
Agenda
 What makes something hard to deploy?
 Why do it anyway?
 Three examples:
–Database schema updates
–WebSphere Application Server configuration changes
–Mainframe code changes
 Q&A
Mainframe changes – Why it’s hard
Not source controlled
Changes are incremental
Not owned by development
Deploy process is inconsistent
relies on tribal knowledge



Mainframe changes – Why it’s hard
Worse yet…
• We want to keep the files on the box
• Test environments are precious
Strategy: Embrace Incremental
 Capture builds
 Categorize the content
 Apply changes incrementally, tracking order.
Build
System
Post build
script
z/OS DeployToolkit
Create new version
z/OS
CodeStation
in USS
Server
Agent
Download
artifacts
Review PDS in
version and
request deploy
process
Pre-processing
steps TSO,
REXX, SHELL
Deploy
data sets
PDS
PDS/E
Update Inventory
status
High Level Overview of UrbanCode’s z Deployment Capabilities
z/OS LPAR, Build system z/OS LPAR
Note: LPARs can be the same or different LPARs
Store meta data
Store version artifacts
Fetch artifacts
via copy or FTP
Post-processing
steps TSO,
REXX, SHELL
deploy
1
2
3
4
5
6
Summary
 Incremental, non-code changes are hard
 Two strategies for managing
–Smart incremental updates
–Model full versions, incrementally bring into compliance
 Tools exist that help
For more information
IBM UrbanCode Deploy Datical , Inc
IBM developerWorks
https://developer.ibm.com/urbancode
www.ibm.com
Eric Minick
eminick@us.ibm.com
@ericminick
Questions
ucinfo@us.ibm.com
DaticalDB4UDeploy
datical.com/ibm
Bring Agile Development to
the Database
datical.com/agile
info@datical.com
(949) DATICAL (328-4225)
@datical
fb.com/datical
42
© Copyright IBM Corporation 2013. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of
any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to,
nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing
the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release
dates and/or capabilities referenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment
to future product or feature availability in any way. IBM, the IBM logo, Rational, the Rational logo, Telelogic, the Telelogic logo, and other IBM products and services are trademarks of the
International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others.
www.ibm.com/software
TheTricky Bits of Deployment Automation

Contenu connexe

Tendances

Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps
Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps
Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps
IBM UrbanCode Products
 
Product Overview: The New IBM UrbanCode Deploy 6.0
Product Overview: The New IBM UrbanCode Deploy 6.0Product Overview: The New IBM UrbanCode Deploy 6.0
Product Overview: The New IBM UrbanCode Deploy 6.0
IBM UrbanCode Products
 
Mobile to Mainframe - the Challenges of Enterprise DevOps Adoption
Mobile to Mainframe - the Challenges of Enterprise DevOps AdoptionMobile to Mainframe - the Challenges of Enterprise DevOps Adoption
Mobile to Mainframe - the Challenges of Enterprise DevOps Adoption
Sanjeev Sharma
 

Tendances (20)

Adopting DevOps for 2-Speed IT
Adopting DevOps for 2-Speed ITAdopting DevOps for 2-Speed IT
Adopting DevOps for 2-Speed IT
 
DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...
DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...
DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...
 
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode Deploy
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode DeployContinuous Delivery with Jenkins Enterprise and IBM UrbanCode Deploy
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode Deploy
 
Avoiding the Release Weekend
Avoiding the Release Weekend Avoiding the Release Weekend
Avoiding the Release Weekend
 
Adopting DevOps in a Hybrid Cloud Featuring UrbanCode Deploy with Bluemix
Adopting DevOps in a Hybrid Cloud Featuring UrbanCode Deploy with BluemixAdopting DevOps in a Hybrid Cloud Featuring UrbanCode Deploy with Bluemix
Adopting DevOps in a Hybrid Cloud Featuring UrbanCode Deploy with Bluemix
 
Shift Happens - Rapidly Rolling Forward During Production Failure
Shift Happens - Rapidly Rolling Forward During Production FailureShift Happens - Rapidly Rolling Forward During Production Failure
Shift Happens - Rapidly Rolling Forward During Production Failure
 
DevOps for Enterprise Systems - Rosalind Radcliffe
DevOps for Enterprise Systems - Rosalind RadcliffeDevOps for Enterprise Systems - Rosalind Radcliffe
DevOps for Enterprise Systems - Rosalind Radcliffe
 
Challenges and best practices of database continuous delivery
Challenges and best practices of database continuous deliveryChallenges and best practices of database continuous delivery
Challenges and best practices of database continuous delivery
 
Securing the Automation of Application Deployment with UrbanCode Deploy
Securing the Automation of Application Deployment with UrbanCode DeploySecuring the Automation of Application Deployment with UrbanCode Deploy
Securing the Automation of Application Deployment with UrbanCode Deploy
 
DevOps: From Adoption to Performance
DevOps: From Adoption to PerformanceDevOps: From Adoption to Performance
DevOps: From Adoption to Performance
 
Helping Organizations Realize the Value of DevOps with Continuous Software De...
Helping Organizations Realize the Value of DevOps with Continuous Software De...Helping Organizations Realize the Value of DevOps with Continuous Software De...
Helping Organizations Realize the Value of DevOps with Continuous Software De...
 
Using Blueprints to Overcome Multi-speed IT Challenges
Using Blueprints to Overcome Multi-speed IT ChallengesUsing Blueprints to Overcome Multi-speed IT Challenges
Using Blueprints to Overcome Multi-speed IT Challenges
 
Introduction to IBM UrbanCode Deploy and Release
Introduction to IBM UrbanCode Deploy and ReleaseIntroduction to IBM UrbanCode Deploy and Release
Introduction to IBM UrbanCode Deploy and Release
 
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, ReleaseEnterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
 
Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps
Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps
Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps
 
Product Overview: The New IBM UrbanCode Deploy 6.0
Product Overview: The New IBM UrbanCode Deploy 6.0Product Overview: The New IBM UrbanCode Deploy 6.0
Product Overview: The New IBM UrbanCode Deploy 6.0
 
Mobile to Mainframe - the Challenges of Enterprise DevOps Adoption
Mobile to Mainframe - the Challenges of Enterprise DevOps AdoptionMobile to Mainframe - the Challenges of Enterprise DevOps Adoption
Mobile to Mainframe - the Challenges of Enterprise DevOps Adoption
 
Continuous delivery for databases
Continuous delivery for databasesContinuous delivery for databases
Continuous delivery for databases
 
Using Lean Thinking to identify and address Delivery Pipeline bottlenecks
Using Lean Thinking to identify and address Delivery Pipeline bottlenecksUsing Lean Thinking to identify and address Delivery Pipeline bottlenecks
Using Lean Thinking to identify and address Delivery Pipeline bottlenecks
 
DevOps for Enterprise Systems : Innovate like a Startup
DevOps for Enterprise Systems : Innovate like a StartupDevOps for Enterprise Systems : Innovate like a Startup
DevOps for Enterprise Systems : Innovate like a Startup
 

Similaire à TheTricky Bits of Deployment Automation

Борис Трофимов. Continuous Database migration-это просто!
Борис Трофимов. Continuous Database migration-это просто!Борис Трофимов. Continuous Database migration-это просто!
Борис Трофимов. Continuous Database migration-это просто!
Volha Banadyseva
 
Dops 1033 dev-ops_review_final
Dops 1033 dev-ops_review_finalDops 1033 dev-ops_review_final
Dops 1033 dev-ops_review_final
Daniel Berg
 
IBM Innovate 2013 Session: DevOps 101
IBM Innovate 2013 Session: DevOps 101IBM Innovate 2013 Session: DevOps 101
IBM Innovate 2013 Session: DevOps 101
Sanjeev Sharma
 
Was l iberty for java batch and jsr352
Was l iberty for java batch and jsr352Was l iberty for java batch and jsr352
Was l iberty for java batch and jsr352
sflynn073
 

Similaire à TheTricky Bits of Deployment Automation (20)

What Is Slowing My Application Releases?
What Is Slowing My Application Releases?What Is Slowing My Application Releases?
What Is Slowing My Application Releases?
 
Continuous DB migration based on carbon5 framework
Continuous DB migration based on carbon5 frameworkContinuous DB migration based on carbon5 framework
Continuous DB migration based on carbon5 framework
 
Борис Трофимов. Continuous Database migration-это просто!
Борис Трофимов. Continuous Database migration-это просто!Борис Трофимов. Continuous Database migration-это просто!
Борис Трофимов. Continuous Database migration-это просто!
 
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCode
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCodeContinuous Application Delivery to WebSphere - Featuring IBM UrbanCode
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCode
 
Continuous Delivery to the cloud - Innovate 2014
Continuous Delivery to the cloud - Innovate 2014Continuous Delivery to the cloud - Innovate 2014
Continuous Delivery to the cloud - Innovate 2014
 
Relational Database CI/CD
Relational Database CI/CDRelational Database CI/CD
Relational Database CI/CD
 
The Science of database CICD - UKOUG Breakthrough
The Science of database CICD - UKOUG BreakthroughThe Science of database CICD - UKOUG Breakthrough
The Science of database CICD - UKOUG Breakthrough
 
DBD 2414 - Iterative Web-Based Designer for Software Defined Environments (In...
DBD 2414 - Iterative Web-Based Designer for Software Defined Environments (In...DBD 2414 - Iterative Web-Based Designer for Software Defined Environments (In...
DBD 2414 - Iterative Web-Based Designer for Software Defined Environments (In...
 
Horses for Courses: Database Roundtable
Horses for Courses: Database RoundtableHorses for Courses: Database Roundtable
Horses for Courses: Database Roundtable
 
IBM Impact Session 2351 hybrid apps
IBM Impact Session 2351 hybrid appsIBM Impact Session 2351 hybrid apps
IBM Impact Session 2351 hybrid apps
 
Presentation application change management and data masking strategies for ...
Presentation   application change management and data masking strategies for ...Presentation   application change management and data masking strategies for ...
Presentation application change management and data masking strategies for ...
 
DWX 2023 - Datenbank-Schema Deployment im Kubernetes Release
DWX 2023 - Datenbank-Schema Deployment im Kubernetes ReleaseDWX 2023 - Datenbank-Schema Deployment im Kubernetes Release
DWX 2023 - Datenbank-Schema Deployment im Kubernetes Release
 
Java Development on Bluemix
Java Development on BluemixJava Development on Bluemix
Java Development on Bluemix
 
Dops 1033 dev-ops_review_final
Dops 1033 dev-ops_review_finalDops 1033 dev-ops_review_final
Dops 1033 dev-ops_review_final
 
Syncsort and Db2 – How to Get More from Your Db2 Systems
Syncsort and Db2 – How to Get More from Your Db2 SystemsSyncsort and Db2 – How to Get More from Your Db2 Systems
Syncsort and Db2 – How to Get More from Your Db2 Systems
 
IBM Innovate 2013 Session: DevOps 101
IBM Innovate 2013 Session: DevOps 101IBM Innovate 2013 Session: DevOps 101
IBM Innovate 2013 Session: DevOps 101
 
DataOps, DevOps and the Developer: Treating Database Code Just Like App Code
DataOps, DevOps and the Developer: Treating Database Code Just Like App CodeDataOps, DevOps and the Developer: Treating Database Code Just Like App Code
DataOps, DevOps and the Developer: Treating Database Code Just Like App Code
 
Was l iberty for java batch and jsr352
Was l iberty for java batch and jsr352Was l iberty for java batch and jsr352
Was l iberty for java batch and jsr352
 
Continuous Integration for z using Test Data Management and Application D...
Continuous  Integration for z  using  Test Data Management  and Application D...Continuous  Integration for z  using  Test Data Management  and Application D...
Continuous Integration for z using Test Data Management and Application D...
 
Isset Presentation @ EECI2009
Isset Presentation @ EECI2009Isset Presentation @ EECI2009
Isset Presentation @ EECI2009
 

Plus de IBM UrbanCode Products

DevOps and the Case for ROI to Executives
DevOps and the Case for ROI to ExecutivesDevOps and the Case for ROI to Executives
DevOps and the Case for ROI to Executives
IBM UrbanCode Products
 

Plus de IBM UrbanCode Products (17)

Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9
Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9
Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9
 
What's New with IBM UrbanCode Deploy
What's New with IBM UrbanCode DeployWhat's New with IBM UrbanCode Deploy
What's New with IBM UrbanCode Deploy
 
Digital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture OverviewDigital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture Overview
 
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps:  Standardizing Chaotic Culture at NBCUniversalEfficient DevOps:  Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversal
 
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...
 
The Future of DevOps and UrbanCode
The Future of DevOps and UrbanCodeThe Future of DevOps and UrbanCode
The Future of DevOps and UrbanCode
 
Death to Manual Deployments
Death to Manual DeploymentsDeath to Manual Deployments
Death to Manual Deployments
 
Continuous Delivery in the Enterprise - with IBM UrbanCode
Continuous Delivery in the Enterprise - with IBM UrbanCodeContinuous Delivery in the Enterprise - with IBM UrbanCode
Continuous Delivery in the Enterprise - with IBM UrbanCode
 
A True Story of Why QA Loves DevOps
A True Story of Why QA Loves DevOpsA True Story of Why QA Loves DevOps
A True Story of Why QA Loves DevOps
 
Building a DevOps Team that Isn't Evil
Building a DevOps Team that Isn't EvilBuilding a DevOps Team that Isn't Evil
Building a DevOps Team that Isn't Evil
 
DevOps and the Case for ROI to Executives
DevOps and the Case for ROI to ExecutivesDevOps and the Case for ROI to Executives
DevOps and the Case for ROI to Executives
 
Release and Deploy Sessions at IBM InterConnect 2015
Release and Deploy Sessions at IBM InterConnect 2015Release and Deploy Sessions at IBM InterConnect 2015
Release and Deploy Sessions at IBM InterConnect 2015
 
Using Lean Thinking to Identify and Address Delivery Pipeline Bottlenecks
Using Lean Thinking to Identify and Address Delivery Pipeline BottlenecksUsing Lean Thinking to Identify and Address Delivery Pipeline Bottlenecks
Using Lean Thinking to Identify and Address Delivery Pipeline Bottlenecks
 
Deployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform EnvironmentsDeployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform Environments
 
Shift Left - Approach and practices with IBM
Shift Left - Approach and practices with IBMShift Left - Approach and practices with IBM
Shift Left - Approach and practices with IBM
 
Leading DevOps Application Release and Deployment - Best Practices for Organi...
Leading DevOps Application Release and Deployment - Best Practices for Organi...Leading DevOps Application Release and Deployment - Best Practices for Organi...
Leading DevOps Application Release and Deployment - Best Practices for Organi...
 
How to Build a DevOps Toolchain
How to Build a DevOps ToolchainHow to Build a DevOps Toolchain
How to Build a DevOps Toolchain
 

Dernier

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
masabamasaba
 

Dernier (20)

VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions Presentation
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 

TheTricky Bits of Deployment Automation

  • 1. The Tricky Bits of Deployment Automation: Mainframe Code, WAS Configuration, Databases Eric Minick IBM DevOps Evangelist IBM Software, Rational eminick@us.ibm.com @ericminick Robert Reeves Chief Technology Officer Datical, Inc. r2@datical.com @robertreeves
  • 2. Agenda  What makes something hard to deploy?  Why do it anyway?  Three examples: –Database schema updates –Mainframe code changes –WebSphere Application Server configuration changes  Q&A
  • 3. What makes something hard to deploy?
  • 4. Where “Something” = Component of an app
  • 5. Easy things to deploy fit the classic pipeline Code turned into a package by a build A version of the thing can be stored on the file system The stuff in the environment is what is in the repo Rolling back is just redeploying the old version
  • 6. Hard things break the build promotion model Not source controlled Changes are incremental Not owned by development Deploy process is inconsistent
  • 7. Agenda  What makes something hard to deploy?  Why do it anyway?  Three examples: –Database schema updates –WebSphere Application Server configuration changes –Mainframe code changes  Q&A
  • 8. Why Automate the Hard Stuff? Because that stuff is part of our application. ♫ Without Automation: • We make mistakes • We forget things • We schedule based on engineer availability
  • 9. Agenda  What makes something hard to deploy?  Why do it anyway?  Three examples: –Database schema updates –WebSphere Application Server configuration changes –Mainframe code changes  Q&A
  • 10. Database Change Management Challenges Test Development Build Code
  • 11. Database Change Management Challenges Test Release Test Development Build Code
  • 12. Database Change Management Challenges ProductionTest Release Test Development Build Code
  • 13. Database Change Management Challenges Production SQL Script 1 SQL Script 3 SQL Script 2 Test Release Test Development Build Code
  • 14. Database Change Management Challenges Production SQL Script 1 SQL Script 3 SQL Script 2 Test Release Test Development Build Code
  • 15. Database Change Management Challenges Production SQL Script 1 SQL Script 3 SQL Script 2 Test Release Test Development Build Code
  • 16. Database Change Management Challenges Production SQL Script 1 SQL Script 3 SQL Script 2 Test Release Test Development Build Code
  • 17. Database Change Management Challenges Production SQL Script 1 SQL Script 3 SQL Script 2 Test Release Test Development Build Code
  • 18. Database Change Management Challenges Production Manual Change Manual Change SQL Script 1 SQL Script 3 SQL Script 2 Test Release Test Development Build Code
  • 19. Database Change Management w/Datical DB Test Development Build Test Production Release CodeCode DaticalDB
  • 20. Database Change Management w/Datical DB Test Development Build Test Production Release CodeCode DaticalDB Model Easily create and model database changes across your software release stages.
  • 21. Database Change Management w/Datical DB Test Development Build Test Production Release CodeCode DaticalDB Model Easily create and model database changes across your software release stages. Forecast Proactively scrutinize the impact of database changes in production – or any other environment – before you deploy.
  • 22. Database Change Management w/Datical DB Test Development Build Test Production Release CodeCode DaticalDB Model Easily create and model database changes across your software release stages. Forecast Proactively scrutinize the impact of database changes in production – or any other environment – before you deploy. Deploy Deploys database schema changes to multiple databases and mixed environments simultaneously.
  • 23. Database Change Management w/Datical DB Test Development Build Test Production Release CodeCode DaticalDB Model Easily create and model database changes across your software release stages. Forecast Proactively scrutinize the impact of database changes in production – or any other environment – before you deploy. Deploy Deploys database schema changes to multiple databases and mixed environments simultaneously. Manage Confidently know the current state of the database and how it got there across the application release lifecycle.
  • 25. Datical Product Overview Deploy Plan DEV QA PROD Datical DB Engine
  • 26. Datical Product Overview Deploy Plan DEV QA PROD ChangeSet 1 ChangeSet 2 ChangeSet 3 ChangeLog Datical DB Engine
  • 27. Datical Product Overview Baseline Captures the current state of the database Compare Provides schema differences between environments Forecast Impacts analysis of proposed changes Deploy Executes changes to the database Rollback Undo select database changes Audit Provides visibility into database changes Deploy Plan DEV QA PROD ChangeSet 1 ChangeSet 2 ChangeSet 3 ChangeLog Datical DB Engine
  • 28. Datical Product Overview Baseline Captures the current state of the database Compare Provides schema differences between environments Forecast Impacts analysis of proposed changes Deploy Executes changes to the database Rollback Undo select database changes Audit Provides visibility into database changes C:datialdb.exe user@host:~$./daticaldb Datical DB UI Datical DB CLI Integrations Deploy Plan DEV QA PROD ChangeSet 1 ChangeSet 2 ChangeSet 3 ChangeLog Datical DB Engine
  • 29. Datical Product Overview Baseline Captures the current state of the database Compare Provides schema differences between environments Forecast Impacts analysis of proposed changes Deploy Executes changes to the database Rollback Undo select database changes Audit Provides visibility into database changes C:datialdb.exe user@host:~$./daticaldb Datical DB UI Datical DB CLI Integrations Deploy Plan DEV QA PROD ChangeSet 1 ChangeSet 2 ChangeSet 3 ChangeLog Datical DB Engine
  • 30. Agenda  What makes something hard to deploy?  Why do it anyway?  Three examples: –Database schema updates –WebSphere Application Server configuration changes –Mainframe code changes  Q&A
  • 31. WebSphere Config – What are we deploying? Let’s see… The app needs: • More memory • Longer timeout setting on the JDBC connector • Subscription to a new message queue
  • 32. WebSphere Config – Why it’s hard Not source controlled Changes are incremental Not owned by development Deploy process is inconsistent    
  • 33. Strategy: Infrastructure as Code  Represent Configuration as Files –Have a “build” than can be versioned –Can compare versions to see what changed  Requirements for Automation –Tokenize / Replace per environment settings –Extract configuration from a known good target –Apply to other servers
  • 34. Reliable Middleware Configuration Management Artifact Library Application EAR WAR DB Cluster template Exemplar WAS Cell Plugin Import configuration WAS Configuration Template Creation + Template Assembled PROD QA Dev Deploy and promote application and configuration across environments
  • 35. Agenda  What makes something hard to deploy?  Why do it anyway?  Three examples: –Database schema updates –WebSphere Application Server configuration changes –Mainframe code changes  Q&A
  • 36. Mainframe changes – Why it’s hard Not source controlled Changes are incremental Not owned by development Deploy process is inconsistent relies on tribal knowledge   
  • 37. Mainframe changes – Why it’s hard Worse yet… • We want to keep the files on the box • Test environments are precious
  • 38. Strategy: Embrace Incremental  Capture builds  Categorize the content  Apply changes incrementally, tracking order.
  • 39. Build System Post build script z/OS DeployToolkit Create new version z/OS CodeStation in USS Server Agent Download artifacts Review PDS in version and request deploy process Pre-processing steps TSO, REXX, SHELL Deploy data sets PDS PDS/E Update Inventory status High Level Overview of UrbanCode’s z Deployment Capabilities z/OS LPAR, Build system z/OS LPAR Note: LPARs can be the same or different LPARs Store meta data Store version artifacts Fetch artifacts via copy or FTP Post-processing steps TSO, REXX, SHELL deploy 1 2 3 4 5 6
  • 40. Summary  Incremental, non-code changes are hard  Two strategies for managing –Smart incremental updates –Model full versions, incrementally bring into compliance  Tools exist that help
  • 41. For more information IBM UrbanCode Deploy Datical , Inc IBM developerWorks https://developer.ibm.com/urbancode www.ibm.com Eric Minick eminick@us.ibm.com @ericminick Questions ucinfo@us.ibm.com DaticalDB4UDeploy datical.com/ibm Bring Agile Development to the Database datical.com/agile info@datical.com (949) DATICAL (328-4225) @datical fb.com/datical
  • 42. 42 © Copyright IBM Corporation 2013. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. IBM, the IBM logo, Rational, the Rational logo, Telelogic, the Telelogic logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others. www.ibm.com/software