IBM Continuous Delivery with UrbanCode Deploy & UrbanCode Release

IBM Continuous Delivery with
UrbanCode Deploy & UrbanCode Release
Agenda
 Introductions
 DevOps Overview
 Introducing UrbanCode
 UrbanCode Deploy
 UrbanCode Release
 IBM Integrations
IBM DevOps
Enterprise capability for continuous software delivery that enables clients to seize
market opportunities and reduce time to customer feedback
Continuous
Business Planning
Accelerate
software delivery
faster time to value
Plan
& Measure
Continuous
Monitoring
Balance speed, cost,
quality and risk
increased capacity to
innovate
Reduce time to customer
feedback
improved customer
experience
Monitor
& Optimize
Continuous
Customer
Feedback and
Optimization
Continuous
innovation,
feedback and
improvements
Collaborative
Development
Develop
& Test
Release
& Deploy
Continuous Release
and Deployment
Continuous
Testing
Enabling a DevOps approach
Enterprise capability for continuous software delivery that enables the
business to seize market opportunities and reduce time to customer feedback
DevOps Lifecycle
Customers
Business Owners
Development/Test
Operations/Production
Plan and Measure
Develop and Test
Release and Deploy
Monitor and Optimize
DevOps Foundation
Open Lifecycle and Service Management Integration Platform
OSLC
Best Practices
Ecosystem
Continuous Innovation, Feedback and Improvements
Continuous Delivery Adoption Maturity
 Common Source Control
 Automated Builds (Build Definitions)
 Continuous Integration (CI)
 Automated Delivery
 Continuous Delivery to Test (CD)
 Continuous Delivery to Production-like
Systems (Infrastructure as Code)
 Continuous Delivery thru Prod
Agile Initiative: Heatmap based roadmap
DevOps Maturity Model
Agile
Agile
Initiative
Initiative
Quality
Improvement
Level of importance:
Continuous
Delivery
Market
Experimentation
Critical
Important
Mobile
Transformation
Nice to Have
SW-Defined
Environments
Not Necessary
Plan /
Measure
Develop /
Test
Release /
Deploy
Monitor /
Optimize
Strategy
Code
Deployment
Monitoring
Requirements
Test
Provisioning
Customer
Feedback
Dashboards/
Analytics
Change
Management
Legacy
Systems
DevOps and Cloud adoption
Automating for faster delivery with DevOps and cloud
UC Deploy
Traditional
On-Premises
Infrastructure
as a Service
Applications
Applications
Data
UC Deploy
Mid Config
Man/Auto
Data
Platform
as a Service
JazzHub
(SaaS)
Applications
Data
Mid Config
Mid Config
Middleware
Middleware
O/S
O/S
O/S
Virtualization
Virtualization
Virtualization
Servers
Servers
Storage
Storage
Networking
Networking
Middleware
Man/Auto
Manual
PureApplication
System
SmartCloud
Orchestrator
SoftLayer
Codename:
BlueMix
Servers
Storage
Networking
Customization; higher costs; slower time to value
Standardization; lower costs; faster time to value
Investing in Release Automation …
Introducing UrbanCode
Enabling clients to more rapidly deliver mobile, cloud, big data and traditional applications with high
quality and low risk
Drive down cost
Remove manual effort and wasted resource time
with push button deployment processes
IBM UrbanCode Deploy automates the deployment of applications,
databases and configurations into development, test and production
environments, helping to drive down cost, speed time to market with
reduced risk.
Speed time to market
Reduce risk
IBM UrbanCode Release is an intelligent collaboration release
management solution that replaces error-prone manual spreadsheets
and streamlines release activities for application and infrastructure
changes.
Robust configuration management, coordinated
release processes, audits, and traceability
https://www.ibmdw.net/urbancode/
Simple, graphical process designer, with built-in
actions to quickly create deployment automation
Continuous Delivery Pipeline
IBM DevOps Solution
IBM’s DevOps solution is built on an open standards based platform and a set of
services which enable clients to leverage open source and third party tools
Rational Focal Point
Rational Requirements Composer
Line of
Busine
ss
Rational Team Concert
11
IBM UrbanCode
Release
IBM UrbanCode
Deploy
Jenkins
SmartCloud Orchestrator
IBM Pure Application System
Rational Build Forge
Rational Asset Manager
Rational Quality Manager
Rational Test Workbench
Rational Test Virtualization Server
Rational Development and Test
Environment for System z
InforSphere Optim Test Data Mgmt
SmartCloud Application
Performance Management
IBM UrbanCode Release
IBM UrbanCode Deploy
UrbanCode solutions deliver business results
International Investment Firm
Online Retailer
Driving Down Costs
Speeding Time-to-Market
Release process required considerable effort
and delayed by manually-introduced errors
Significant delays getting application
changes to production
 Solution: Automated release process
 Solution: Scaled up continuous deployment
 Results: Cost avoidance of over $2.3M/year,
reduced release time from 2-3 days to
1-2 hours and virtually eliminated test team
“down-time”
 Results: Deployment time reduced by
over 95% with easy scale and deploying
to over 250 servers within 2 months
of implementation
Higher Education
SaaS Software Provider
Speeding Time-to-Market
Reducing Risk
Agile development teams constrained by
slow deployment to dev and test environments
Difficulty managing multiple customer
configurations and versions of software
deployed across servers
 Solution: Accelerate deployment by enabling
development teams to self deploy with
automation
 Results: Deployment cut from hours to
minutes, to a greater number of servers, with
fewer resources
 Solution: Automate managing configuration
and version deployment
 Results: Execute customer specific releases,
reduced deployment outages by over 90%
IBM Release and Deploy Value Proposition
UrbanCode compliments IBM DevOps solution enabling clients to more rapidly deliver software
IBM DevOps solution helps clients:
 Reduce errors: Automated software release and
deployment
 Improve productivity: Push-button deployments for
developer and operations
Application Blueprint
 Faster time-to-market: Automated release and
deployment with built-in best practices provides
 Compliance and auditability: Enforced Security and
traceability
Versioned
Artifacts
UrbanCode Deploy orchestrates and automates the
deployment of applications, middleware configuration,
and database changes into development, test and
production environments, accelerating time to market,
driving down cost while reducing risk.
UrbanCode Release transforms error-prone and
chaotic release planning into streamlined release
events, replacing spreadsheets with a collaborative
solution that eliminates breakdowns in communication
enabling more frequent releases at lower risk.
Artifacts
Development
Release
Artifacts
QA
Release
Artifacts
Product
Release
Execute Against
Execute Against
Execute Against
Development
Environment
QA
Environment
Production
Environment
IBM UrbanCode Deploy
Application Deployment Automation
Deployment of Applications across Environments
 Manage application components
and versions
 Compliance: audit trails quality gates
 Easy to use visual process designer
 Manage environment configuration
 Inventory: what is where
from dev/test through production
IBM UrbanCode Deploy
Application – Component Model
 Components
– Tiers or services
 Environments
– Target servers
– Servers have roles
– Environment Specific Configuration
 Processes
– Coordinates Component processes
IBM UrbanCode Deploy
UrbanCode Deploy process designer
Versioned Processes
Navigation
View
Drag and Drop
Interface
Extensible pallet
of Available
Actions
IBM UrbanCode Deploy
Snapshots – A Version of the App
Snapshot Deployment
Creating a Snapshot
Component Versions
Snapshot
Web
1
2
3
3
Mid. Code
1
2
3
2
ENV
Snapshot
3
3
2
2
2
1
WEB HOST
MID HOST
Mid. Config
1
2
3
3
3
3
1
DB
1
2
3
1
1
X
1
• Contents of environments that pass tests
• contain deployables and config
• Deployments are based on deltas
• They help with:
 Automation, Audit, and Visibility
DB HOST
IBM UrbanCode Deploy – Plug-ins
•
•
•
59 plug-ins from15 different vendors and open source organizations
Broad range of plugins supported:
• Application servers
• Databases
• Messaging platforms
• Test automation
• Issue tracking systems
• Operating system services
• Cloud platforms
• Issue tracking
• Even more…
Plug-ins can be downloaded for free from
https://www.ibmdw.net/urbancode/plugins/
Recent UrbanCode Release Improvements
v6.0 and v6.0.1
 Rational Team Concert
Integration
– Change Management
– OSCL Integration
– Mapping
– RTC Delegated UI Dialogs
– Release Progression
 Release Impact Analyses
 Pipeline View
 Federated Deployment
Dashboard
IBM UrbanCode Release
Release planning and orchestration
 Qualify with one question:
 Do you have large monthly or quarterly releases that take hours/days and
require dozens or that hundreds of people to get on a call?
 UrbanCode Release delivers
 Plan the release day
 Execute the release
 Communicate what’s going on
 Allocate environments to
releases
 Tie release back to
development
IBM UrbanCode Release
Visualizing your Release Trains
IBM UrbanCode Release
IBM UrbanCode Deploy
Automation & Management
uDeploy
uRelease
Application Release Automation
Automate deployments

Visual process designer

Plug-in actions for application containers, web servers,
network devices, database deployment, etc.

Model environments & deployment targets

Release Management
Enforce quality gates for environments


Orchestrate changes across multiple applications

Manage infrastructure in addition to application changes

Real-time status for long production releases

Track the allocation of environments to releases

Build
 UrbanCode uBuild
 Rational Build Forge
 Jenkins/Hudson
 Other generic integrations via udclient or API
Reliable management of middleware configuration across
environments
Middleware
Administrator
-orApplication
Developer
Deployment
Automation
Developer
2 - Plugin
Artifact Library
3 - Import
4 - Assemble
6 – Define
Deployment
Process
5 - Publish
EAR
7 - Deploy
WAS
Configuration
Template
7 - Deploy
Exemplar
WAS Cell
7 - Deploy
WAR
Cluster
template
DB
Application
Application Deployment Automation
WAS Configuration Template Creation
Dev
QA
Prod
Application Environments
Improve Delivery Lifecycle with Software Defined
Environments
Build Automation
SCM
Pull
changes
Publish build
IBM PureApplication System
SmartCloud Orchestrator
Execute application
deployment and
manage settings
across environments
Environments
Provision platform
DEV
DEV
DEV
DEV
QA
PROD
Patch/update
Platform Config Management
IBM Endpoint
Manager
Deploy early and
often to ensure
higher quality and
faster releases
using repeatable,
reliable, and
managed
automation
DevOps: Continuous
Combining Testing
continuous testing with
Deployment automation and service virtualization for reducing time to
market and improving quality
Test Environments
IBM UrbanCode
Deploy

integrated with
IBM Rational Test
Virtualization
Server
Deploy what is ready,
virtualize the rest
IBM Rational
Test Workbench
Continuously test in
production-like env.
SHUNRA Network
n
Virtualization
Test using real world
network conditions
virtual components
Databases
Dev
Internal
Messages
QA
Third-party
Services
Simultaneously
test across
multiple test
stages
Dynamic Infrastructure
RAF short-term convergence
Middleware
Administrator
-orApplication
Developer
Deployment
Automation
Developer
2 - Plugin
CodeStation
3 - Import
6 – Define
Deployment
Process
4 - Assemble
5 - Deploy
• App 1
• App 2
• EAR
• DB Scripts
• WAS Cell Cfg
•…
7 - Deploy
Applications
7 - Deploy
WAS
Configuration
Template
7 - Deploy
Exemplar
WAS Cell
• EAR
• WAR
• DB Scripts
• WAS Cell Cfg
• WAS Cluster Cfg
•…
• Dev Cell • QA Cell
• Cluster1
• Cluster2
•…
Resources
WAS Configuration Template Creation
43
Dev QA
Prod 1 – Auto Discover
Application Environments
• Prod Cell
• Cluster1
• Cluster2
•…
• Cluster1
• Cluster2
•…
www.ibm.com/software/rational
44
Demo