2. Please note
IBM’s statements regarding its plans, directions, and intent are subject to change or
withdrawal without notice at IBM’s sole discretion.
Information regarding potential future products is intended to outline our general
product direction and it should not be relied on in making a purchasing decision.
The information mentioned regarding potential future products is not a commitment,
promise, or legal obligation to deliver any material, code or functionality.
Information about potential future products may not be incorporated into any
contract. The development, release, and timing of any future features or
functionality described for our products remains at our sole discretion.
Performance is based on measurements and projections using standard IBM benchmarks in
a controlled environment. The actual throughput or performance that any user will experience
will vary depending upon many factors, including considerations such as the amount of
multiprogramming in the user’s job stream, the I/O configuration, the storage configuration,
and the workload processed. Therefore, no assurance can be given that an individual user
will achieve results similar to those stated here.
3. Agenda
• DevOps – a Lean approach
• DevOps and Cloud – Cloud Portability
• DevOps with IBM Cloud Platforms
• Full Application Stack support
4. Agenda
• DevOps – a Lean approach
• DevOps and Cloud – Cloud Portability
• DevOps with IBM Cloud Platforms
• Full Application Stack support
5. New Modes of EngagementSystems of Record
Data & Transaction Integrity Smarter Devices & Assets
• Data & Transactions
• App Infrastructure
• Virtualized Resources
• Expanding Interface Modalities
• Big Data and Analytics
• Social Networking
Next
Generation
Architectures
Focus on Speed and AgilityFocus on Operational Costs
We are at an inflection point in the industry
6. DevOps approach: Apply Lean principles accelerate
feedback and improve time to value
Line-of-
business
Customer
1
3
2
1. Get ideas into production fast
2. Get people to use it
3. Get feedback
Change speed must be an asset,
Not an anchor
Non-Value-added waste
Value-added production work
DevOps
Transformation
7. 7
DevOps: Using Lean Thinking to Eliminate
Bottlenecks
Type of Waste Create Feature Deliver Feature
Unnecessary
Overhead
Communicating ideas/knowledge Communicating between development
and operations
Unnecessary
Re-work
Tasks assigned back to developers
from testing and usage
Tasks assigned back to developers from
production rollbacks
Over-production Unnecessary functionality produced Unnecessary hardware, data center,
personnel
Non-Value-added waste
Value-added production work
DevOps
Transformation
8. Agenda
• DevOps – a Lean approach
• DevOps and Cloud – Cloud Portability
• DevOps with IBM Cloud Platforms
• Full Application Stack support
9. Implementing a DevOps toolchain
SCM
Build / CI
Server
Unit testing
Test Automation
Test Stubbing
Delivery
Pipeline
Environment
Configuration
Automated
Monitoring
Asset
Repository
11. DevOps and Cloud adoption
Automating for faster delivery with DevOps and cloud
Networking Networking
Storage Storage
Servers Servers
Virtualization Virtualization
O/S O/S
Middleware Middleware
Mid Config Mid Config
Data Data
Applications Applications
Traditional
On-Premises
Infrastructure
as a Service
Manual
Customization; higher costs; slower time to value
Standardization; lower costs; faster time to value
Man/Auto
UC Deploy UC Deploy
Man/Auto
Networking
Storage
Servers
Virtualization
O/S
Middleware
Mid Config
Data
Applications
Platform
as a Service
Codename:
BlueMixPureApplication
System
SmartCloud
Orchestrator
SoftLayer
JazzHub
(SaaS)
12. Progression of Cloud Adoption: Physical Servers
Physical Servers (DEV - TEST) Physical Servers (PROD)
Environments
QA ... PROD
World-Wide Banking Application
war ddl mq
World-Wide Banking Application
war ddl mq
World-Wide Banking Application
war ddl mq
DEV
UrbanCode Deploy
Application
Component
Tomcat MySQL JMS WebSphere Liberty DB2 WSMB
IBM UrbanCode Deploy
VM
13. Progression of Cloud Adoption: Cloud for DEV-TEST
Cloud Resources (DEV - TEST) Physical Servers (PROD)
Environments
QA ... PROD
World-Wide Banking Application
war ddl mq
World-Wide Banking Application
war ddl mq
World-Wide Banking Application
war ddl mq
DEV
UrbanCode Deploy
Cloud
Application
Component
Tomcat MySQL JMS WebSphere Liberty DB2 WSMB
IBM UrbanCode Deploy
Public Clouds
VM VM VM
14. Progression of Cloud Adoption: Cloud Portability with
Patterns
Cloud Resources (DEV) Cloud Resources (PROD)
Environments
QA ... PROD
World-Wide Banking Application
war ddl mq
World-Wide Banking Application
war ddl mq
IBM Virtual System Patterns
OpenStack HOT templates
World-Wide Banking Application
war ddl mq
DEV
UrbanCode Deploy
Cloud
Application
Component
Tomcat MySQL JMS WebSphere Liberty DB2 WSMB
SmartCloud Orchestrator
IBM PureApplication System
IBM UrbanCode Deploy
Private CloudsHybridPublic Clouds
VM VM VM
15. Agenda
• DevOps – a Lean approach
• DevOps and Cloud – Cloud Portability
• DevOps with IBM Cloud Platforms
• Full Application Stack support
16. Application Blueprints: Resource + Application templates
What to be
deployed
What to be
deployed
Where to be
deployed (On-
prem or Multiple
Cloud Resources)
- Patterns
Where to be
deployed (On-
prem or Multiple
Cloud Resources)
- Patterns
How to be
deployed
How to be
deployed
17. DevOps and Cloud adoption
Automating for faster delivery with DevOps and cloud
Networking Networking
Storage Storage
Servers Servers
Virtualization Virtualization
O/S O/S
Middleware Middleware
Mid Config Mid Config
Data Data
Applications Applications
Traditional
On-Premises
Infrastructure
as a Service
Manual
Customization; higher costs; slower time to value
Standardization; lower costs; faster time to value
Man/Auto
UC Deploy UC Deploy
Man/Auto
Networking
Storage
Servers
Virtualization
O/S
Middleware
Mid Config
Data
Applications
Platform
as a Service
Codename:
BlueMixPureApplication
System
SmartCloud
Orchestrator
SoftLayer
JazzHub
(SaaS)
18. Codename: BlueMix
Delivering a Composable Services
development environment
Run Your
AppsThe developer can chose
any language runtime or
bring their own. Just
upload your code and go.
DevOpsDevelopment, monitoring,
deployment and logging
tools allow the
developer to run the
entire application with
JazzHub and Mobile
Quality Assurance
APIs and
Services
A catalog of open
source, IBM and third
party APIs services
allow a developer to
stitch together an
application in minutes.Cloud
Integra
tion
Build hybrid
environments. Connect
to on-premises systems
of record plus other
public and private
clouds. Expose your
own APIs to your
developers.Extend
SaaS Apps
Drop in SaaS App SDKs
and extend to new use
cases (e.g,. Mobile,
Analytics, Web)
19. DevOps Service (on BlueMix): Delivery pipelines as a
Service
Developer
Running Application
(Dev Space)
Running Application
(Dev Space)
Create
& edit
Running Application
(test)
Running Application
(test) Running Application
(Prod Space)
Running Application
(Prod Space)
Running Application
(Test Space)
Running Application
(Test Space)
Everything is a service in the Cloud
Deploy
& test
Build Publish
build
Deploy
Promote
Test as a ServiceTest as a Service
Test
Monitoring as a ServiceMonitoring as a Service
Monitor
Dev as a ServiceDev as a Service
Build as a ServiceBuild as a Service
Deploy as a ServiceDeploy as a Service
20. DevOps and Cloud adoption
Automating for faster delivery with DevOps and cloud
Networking Networking
Storage Storage
Servers Servers
Virtualization Virtualization
O/S O/S
Middleware Middleware
Mid Config Mid Config
Data Data
Applications Applications
Traditional
On-Premises
Infrastructure
as a Service
Manual
Customization; higher costs; slower time to value
Standardization; lower costs; faster time to value
Man/Auto
UC Deploy UC Deploy
Man/Auto
Networking
Storage
Servers
Virtualization
O/S
Middleware
Mid Config
Data
Applications
Platform
as a Service
Codename:
BlueMixPureApplication
System
SmartCloud
Orchestrator
SoftLayer
JazzHub
(SaaS)
21. Driving consistency with IBM’s patterns of expertise
What’s required…What the business wants… What a pattern automates…
Patterns of Expertise:
Proven best practices and expertise
learned from decades of client and
partner engagements
• Pre-defined architecture of an application or
Cloud service
• Captures best practices for complex tasks
• Optimized into a deployable form for private
or public cloud
• Repeatable deployment with full lifecycle
management reducing operational costs
22. UrbanCode Deploy supports Virtual System Patterns
PureSystems and SmartCloud Orchestrator
Virtual Application
Patterns
• Highly automated
deployments using expert
patterns
• Business policy driven
elasticity
• Built for the cloud
environment
• Leverages elastic workload
management services
Best TCO
cloud applications
Virtual System
Patterns
• Automated deployment of
middleware topologies
• Traditional administration
and management model
• Application and infrastruture
driven elasticity
Improved TCO
virtualized applications
Standard TCO
existing applications
Virtual Appliances
• Standard software installation
and configuration on OS
• Images created through
extend/capture
• Traditional administration and
management model
• Infrastructure driven elasticity
Virtual Appliance
Metadata
Software
application
Operating
system
Virtual Appliance
Virtual
Appliance
Metadata
Application
Server
Operating
system
Virtual
Appliance
Metadata
Application
Server
Operating
system
Virtual
Appliance
Metadata
HTTP
Server
Operating
system
Virtual Application Patterns
Virtual System PatternsVirtual Appliances
Software
application
23. IBM UrbanCode Deploy
Artifact Library
Application
Resource
Template
Continuous Delivery with Cloud: IBM Cloud Platforms
SCMSCM Build AutomationBuild Automation
DEVDEV QAQA PRODPROD
Provision infrastructure
Execute application
deployment and
manage settings
across environments
Publish builds
Pull
changes
IBM SmartCloud Orchestrator
IBM PureApplication System
Cloud Environments
Manage source code
for apps under
development
Execute provision with
configuration settings
Application binaries (versioned)
Environment configurations
(versioned)
Automate provisioning of environments as part of the end-to-end delivery
process – Establish and automate deployment of Application Blueprint with
resource templates imported from Cloud patterns.
Deploy early and often to ensure high quality and faster releases using
repeatable, reliable, and managed automation - Seamless process flow for
incremental, full stack provisioning and application deployment automation
24. Deployment Automation
BlueprintBlueprint
ApplicationApplication Resource
Template
Resource
Template
Continuous Delivery to IBM Cloud – Virtual System Patterns
• Capture cloud pattern to be used for creating an Environment
• Incremental deployment of application builds to cloud environments
• Map the application to multiple cloud patterns
The freedom to provision a version of a full stack or incrementally deploy an application version
into an already provisioned environment
Environments | Processes |
Configurations
Create env
from pattern
Deploy app QAQA PRODPROD
DEVDEVDEVDEVDEVDEVDEVDEV
Import pattern
Cloud Platform
25. Creating Environment + Application Blueprints
• Components capture Process and Versions
– Automation processes know how to deploy the
component, undeploy the component, or any
repeatable tasks relevant to the Component
– Versions know about the artifacts which are
produced by the build or third parties
• Component Resources are prototypes for real
Resources
– Place these in the Resource Tree wherever a
matching Component Version should be
deployed
– Replace specific Component mappings
Component
VersionVersionVersionVersionVersionVersionVersionVersion
VersionVersionVersionVersionVersionVersionProcessProcess
JKE DB v1.0.2
JKE Tomcat v6.0.2
JKE War v3.0.10
26. IBM UrbanCode Deploy and Softlayer
26
Customer Needs
• DevOps Motivation / Business Drivers
• Principles
• Continuous Delivery Pipeline
• DevOps and Cloud
Customer Use Case
• Requirements
• Solution Architecture
• Use Cases
27. Disclaimer
• The Use Case is about a pilot project based on an RFP
conducted by a major German customer from the automotive
industry
• We have signed an NDA (Non Disclosure Agreement), so any
reference to the customer is not allowed
• All Use Cases are industry-agnostic
31. A “Continuous Delivery Pipeline” with Cloud
CLM / SCM
Cloud
Provider
PROD Stage
Continuous Integration /
Build Management
and Automation
Artefact
Repository
INT Stage`
QA Stage
Dev Stage`
Test Mgmt /
Test Automation
Deplyoment
Automation
[triggers]
[get artifatcs]
[publish artifacts /
trigger Deployment]
[provision environment / deploy into Cloud]
Service
Virtualization
[store artifacts]
[setup]
Requirements
Mgmt.
[plan work
items /
version
source
code]
Development
[specify
Business
requirements]
[get sources]
32. Application Deployments and Cloud Platform
Provisioning based on a common Blueprint
INT QA PROD
Instance A Instance B Instance C
App + Config D App + Config E App + Config F
Development & Build
Cloud Pattern as
Infrastructure as Code”
33. Cloud Instances are grouped into logical
environment patterns
The High Availability Cloud
Pattern is used in the Integration
and Productive Environment
The Standard Cloud Pattern is
used in the Development Staging
Environment
HA
Pattern
PatternPattern
Standard HA Cloud Pattern
Web
Services
App
Services
WAS Cluster
Node 1
WAS Cluster
Node 2
– Data
Services
DB Cluster
Node 1
DB Cluster
Node 2
Web 1
Web 2
Standard Cloud Pattern
Web
Services
App
Services
WAS Cluster
Node 1
Data
Services
DB Cluster
Node 1Web 1
Three types of environments
• Development environments
• Test / INT environments
• Production environments
A pattern is a logical composition
of virtual server instances and the
specific middleware components
plus network elements and
necessary communication
configuration between the
elements.
34. IBM UrbanCode Deploy and Softlayer
34
Customer Needs
• DevOps Motivation / Business Drivers
• Principles
• Continuous Delivery Pipeline
• DevOps and Cloud
Customer Use Case
• Requirements
• Solution Architecture
• Use Cases
35. Key requirement is to implement a “DevOps
workflow automation” simplifying and
integrating the deployment and provisioning
process
Request New
Environment
Request Application
Deployment
Infrastructure
Provisioning
Application
Deployment
Infrastructure
Provisioning
Application
Deployment
36. Solution Architecture
VLAN
Web
Services /
Internet Web
VLAN
App Server
Zone
WAS Node(s)
VLAN
Data Zone
DB Node(s)Web Node(s)
VLAN
Management and Security Zone
IBM SoftLayer Data Center Amsterdam
Load Balancer
Security /
Jump Server
Script
Server
IBM UCD
Server
Nagios
Server
Internet
SoftLayer Automation
System (IMS) and API
SoftLayer Portal
Customer
39. DMS and IBM confidential•39
•13/12/2013
Use Case Example – New Release
VLAN VLAN
WAS
App Server
VLAN
DB Server
Active
Web Server
VLAN
Management and Security Zone
IBM Softlayer DataCenter Amsterdam
Loadbalancer
Security /
Jump Server
Script
Server
uDeploy
Server
Nagios
Server
Internet
Softlayer Automation
System (IMS) and API
Softlayer Portal
Customer
HA PaaS Pattern
Passive Line
DB Server
Passive
Existing
HA PaaS Pattern
Active Line
1
2
3
4
6
5
(1) Use IBM
UrbanCode Deploy
to provision
environment based
on HA PaaS Pattern
/ The Script Library
is used
(2) The Script Library
makes use of the
Softlayer API library
(3/4) The environment is
provisioned and
connected to the
HADR DB System
(5) UCD deploys the
application followed
by a functional test
and a manual
approval
(6) Systems are visible
in Nagios
Monitoring System
40. Some Technical Insight
• A reusable Script Library has been developed to interface with the SL
API (see next slide)
• The Script Library can be used independant or integrated into IBM
UrbanCode Deploy
• SL FlexImage technology has been used („portable“ between Virtual
and BareMetal resources in SoftLayer) for Image templating
• Production environments share the same DB/2 cluster while test and
development environments have their own
• The network infrastructure is static while the systems will be
dynamically integrated. We used the SL Gateway appliance based on
the Vyatta Network OS
• The only system with Internet access will be the load balancer which
routes the incoming traffic to the pool of webservers. Only production
environments are connected to internet. All other environments are only
reachable through a Security proxy
41. Script Library
• A mixture of SoftLayer CLI and the SL SOAP API has been used for the Script
Library implementation
• All scripts have been written in Perl / no root required
• Re-usable solution given you have your own SL account
w3t_create Create a new environment
w3t_destroy Destroy an Existing Environment
w3t_status Show the Current Status of Environments
w3t_changeto Change the Status of an Environment
w3t_crash Crash a Single Service Instance or a Complete
Environment
w3t_switch Switch the Active Environment/Reconfigure
Load Balancer
w3t_mrg_etc_hosts Merge Given Config File and /etc/hosts
42. Script Library example
w3t_create -[h?] [-{Dsv}] [-c] [-{dpt}] -e <envno> [-l <loc>] [-b] [-i] [-n] [-y] [-A] [-S]
[-V <version>]
-b Create Bare Metal / dedicated Cloud instances
-c Create clustered CCIs
-d Create development environment
-e <envno> Environment to create envno = unique number 1 to 99
-i Infinite - don't time out waiting for CCIs to be created
-l <loc> Location were to create [default: ams01]
-n No execution – dry-run: show what would have been done
-p Create production environment [default]
-t Create test environment
-y Yes – answer questions with yes (batchmode)
-A Create an All-in-a-Box system
-S Use Standard images instead of Flex images
-V <version> Version of the disk images to be used
config/template.cci.create.<service>[.<instance>]
<service> ::= “app” | “db” | “web” | “all”
<instance> ::= “1” | “2”
43. IBM UrbanCode Deploy Integration Concept
Environment DefinitionEnvironment Definition
(Dev, INT,
PROD)
ApplicationApplication
ComponentsComponents ComponentsComponents
Customer
Application
WAR, EAR Database
DDL
Resource
Template
Resource
Template
collection of
resources as a model
for setting up an
environment
(hierarchical
representation
Agent
Prototype
Agent
Prototype
Other
Resources
Other
Resources
Collection of
Resources
Represent Agent
not yet installed
Application Blueprint
[has]
[belong to]
[contains]
[assign to]
SoftLayer
Script Library
SoftLayer
Script Library
UCD calls Script
Library
to generate
Environment
[instantiates]
44. Agenda
• DevOps – a Lean approach
• DevOps and Cloud – Cloud Portability
• DevOps with IBM Cloud Platforms
• Full Application Stack support
45. Introducing IBM UrbanCode Deploy with Patterns
Pattern designer
– Design open, full stack application
environments in a diagram or textual editor
Design once, deploy anywhere
– Deploy full stack environments to multiple
clouds
Environment lifecycle management
– Manage infrastructure change and easily
apply changes to existing environments
Delivery process automation
– Automated delivery process with integrated
full stack environments
Design and deploy full stack application environments for multiple clouds
IBM UrbanCode Deploy
with Patterns
Application
Middleware Config
Middleware
OS Config
Hardware
Environment
Blueprint
46. • The adoption of DevOps =>
increased velocity of application
delivery
• Puts pressure on the
infrastructure to respond more
quickly
• Software Defined Environments
enable you to capture
infrastructure as a software
artifact
Deploying infrastructure changes is the current
bottleneck for delivery pipeline
Application
Changes
Infrastructure
Changes
47. What is a #fullstackapp ?
Application
Changes
Infrastructure
Changes
Consistent Incremental Change
… …
48. Long, complex lifecycle
Small iterative changes
Role Layer
… …
Developers/
Testers
Integrators
Specialists
Compute,
Network,
and Storage
Platform
s
Apps
51. 51
• Diagram editor
• Source text editor
• HOT as-you-type validation
• Annotated TODO & errors
• Quick palette for searching
• Editor functions: Cut, Copy, Paste,
Find & Replace
• Zoom diagram or text
• Comment out infrastructure
52. • Defined by the
community and vendors
• Integration with
UrbanCode Deploy
enables rapid
configuration of full
application stack
• Support ongoing
updates of deployed
versions through
UrbanCode Deploy
Example: Software
53. • Version the blueprint using your source
control repo (native support for git)
• Apply the new versions of the template
to an existing environment or provision
an entire new stack
• Validate changes with a "canary" pattern
to ensure correctness and detect
problems earlier
• Verify entire stack before production
Full-Stack
Blueprint
Software Defined Delivery
54. 54
• View current environments
• Create new environments in the
cloud
• Select available resources from
Nova, Neutron, Cinder
• Validation feedback in place
• Update environment over time
• Deploy new component versions
55. • Parameterize differences between
cloud environments (network ids,
image ids, software versions)
• Overlay resource types for different
kinds of clouds in the same blueprint
• Enable portability but optimize for each
specific cloud platform
Full Stack
Blueprint
Config/Para
ms
Cloud A
Cloud B
Config/Para
ms
Software Defined Portability
56. 56
• Provision Network architecture to
OpenStack
• Provision Network architecture to
Amazon (no OpenStack required)
• Select pre-defined configuration for
each cloud
57. 57
Resources:
IBM DevOps Page: http://ibm.com/DevOps
DevOps For Dummies Book: http://ibm.co/devopsfordummies
Release and Deploy For Dummies Book: http://ibm.co/1bplaQV
IBM DevOps YouTube Playlist: http://bit.ly/1fiDOtl
59. Thank You!
Your Feedback is Important!
Access the Innovate agenda tool to complete your session
surveys from your smartphone, laptop or conference kiosk.
Notes de l'éditeur
Systems of Record
Highly Structured
Slow
Transactional
Stable
Core Business
Not Social
High Trust
Systems of Engagement
Loosely Structured
Agile
Conversational
Dynamic
Social
Trust
Over the years, these supporting artifacts have grown in complexity and resource burden far more than needed. Agile development methods evolved specifically to attack growth in this non-value added work. DevOps principles expand that same agile, lean thinking across the delivery lifecycle targeting the unnecessary overhead, rework and overproduction. Lean transformation is a central theme of DevOps to address this Hidden Factory opportunity.
Some overhead is a necessity, but excessive overhead, excessive rework, overproduction of unneeded function points and time wasted in waiting are hidden factory opportunities. And everyone—executives, project leadership, and practitioners KNOW they spend a huge chunk of time in non-value added work that they want to streamline, automate or eliminate. Everyone buys in to this pain, and pretty easily.
Replace with new diagram – UC product logos consistent throughout
Seamless process flow for incremental, full stack provisioning and application deployment automation
Extend UrbanCode Deploy to capture Resource Templates
Describe desired pattern to use from the cloud
Associate application components to pattern resources
Must be manageable – security, ease of use, nice fit for organization
Highly available – up at all times, no downtime
Automated and agile – fast ,quick, efficient – many changes all day, everyday
Global deployment – it has to scale
This is the concept we originally proposed to the customer. Often times you will hear about this process being referred to as “End-to-end Release Automation” - in fairness, that’s partially accurate. There is much more to release automation, but this is a necessary part.
First I want to show you the high level of the model, and then we will break it down piece by piece.
Build Automation: This is our SCM and CI tools.
Deployment Automation: automating more than just the bits
Test Automation: service virtualization, functional testing, smoke tests
Cloud: scalability of environments
Having multiple blueprints allows us to define exactly how we want specific environments to work. We know the topology (number of servers) and the infrastructure/configuration (load balancer, etc) will be different in each environment. By creating a blueprint for each environment we get
Baseline to a repeatable and reliable process to deliver content linked to dev, test, and production stages / environments
Single Model of Truth for application and infrastructure
Deployment Process
Precise Reproducability
Deployment Workflow (Q-Gates, Testing, Parallelism)
Rollback Capability within each Stage
Speaker: Joachim
Wichtige Punkte:
Man zahlt nur wenn man diese nutzt usw.
Es kann immer eine Umgebung erzeugt werden
Kann man Release Zyklen aussetzen/verändern? –&gt; ja kann man, verkürzen ist limitiert.
Muss man die pattern immer wegwerfen? Lässt sich dieses „Monstrum“ handeln?
Doppelter Realitätstest:
Kann das Modell umgesetzt werden?
Ist es dann noch flexibel genug?
Wird gerade aufgebaut! Pilot
Haben wir es woanders schon gemacht?
Leveraging the power of Software Defined Environments, and IBM UrbanCode Deploy