IBM’s Steve Barbieri and Chad Holliday show how enterprise customers are using blueprints to develop their infrastructure and application layers across different cloud environments - helping them "make the move to cloud" in 2017.
2. Rapid iterations
Develop Build Test Deploy
Systems of Record
Develop Build Test Deploy
Systems of Engagement
Production
Production
Virtualize
Slower iterations
Virtualize
Two-Speed IT is Today’s Reality
2
3. Intuitive and Scalable Model Driven Deployment
Composite Applications
Components
Re-usable Workflows Environment Management
SIT
PROD
The “What” The “How” The “Where”
DEPLOYMENT AUTOMATION
3
4. IBM UrbanCode Deploy
Mobile App
Middleware
Backend Systems of
Record
Automating hybrid cloud application deployments
4
5. Application model – The “What”
Reliably capture application content and configuration settings with versioning
and traceability
5
6. Deploy Application
- Orchestrate deployment of many components
- Represents deploy-time dependencies Deploy Component
- Create a fully automated workflow to be run on the
target servers
Drag-and-Drop Workflow Designer
Precise Control of Execution Flow
Hundreds of Integration Steps Provided
Create Custom Steps
Deployment Processes – The “How”
6
7. Application environments – The “Where”
Define where components are deployed and capture configuration settings per
deployment environment for an application
7
8. Putting it all together – Continuous Delivery
Before any
deployments to
production, manual
approvals are
required.
After deployment,
automated tests are started.
If they pass, we mark the
tested versions as such.
On build completion, the
latest artifacts are
published to UrbanCode
Deploy and deployed to a
development or SIT
environment.
The exact combination of
component versions which
passed tests is captured in a
snapshot.
8
9. UrbanCode Deploy Blueprint Designer
IBM UrbanCode Deploy
Blueprint Designer
• Full stack Application Design & Provisioning
– Design open, full stack application environments from
diagram or source
• Portability to heterogeneous clouds
– Capture the expertise of a heterogeneous DevOps
team, from solution architects to IT specialists
• Hybrid clouds: Blend your application with PaaS, SaaS,
and Traditional IT
– Enables you to balance speed, cost, and flexibility
according to your specific needs
• Continuous Delivery of Applications into the Cloud
– Eliminate weeks of waiting for new environments when
starting new projects or testing new app changes
9
VMware
vCenter
10. • Utilizing OpenStack Heat
– Heat orchestration document
• Cloud Portability
– Avoid vendor lock-in
– Provision the same blueprint to multiple cloud platforms
– Public:
• Amazon Web Services, Microsoft Azure, IBM SoftLayer
– On-Prem:
• vCenter, vRealize Automation, OpenStack
• Compatible with Openstack-based IBM Cloud Offerings
– IBM Cloud Orchestrator (ICO)
– IBM BlueBox
• Ships with Heat integration for UrbanCode Deploy
VMware
vCenter
Provision
10
Cloud Platform Support
11. Cloud-Enabled Workloads with UrbanCode Deploy
Your applications are managed
throughout the entire release process
with predictable automation and
inventory services
Your full-stack blueprints capture the
relationships between your
applications and cloud infrastructure
OpenStack API provides defacto
standards for interacting with all of
your cloud resources
Heat Blueprints
UrbanCode
Deploy
Compute Network Storage
Your Applications &
Middleware
Full-stack Application Pattern
11
16. • REST API
– Full REST API to automate provisioning actions
• Provision environments from UrbanCode Deploy
– Self-service catalog to request new environment
Blueprint Designer Automation
16
17. Git Integration
• Source-control blueprints via built-in Git integration
– Infrastructure as code
Git history
Change
comparison
view
17
19. Amazon Web Services Support
Support for Amazon:
• Elasticache
• S3 Object Storage
• Relational Database as a Service
19
20. Watson Health Cloud
A New Partnership Between Humanity and Technology
It’s time to transform health with new ways of working to improve approaches to care,
productivity and well-being. Watson Health’s cognitive systems understand, reason and learn –
helping to translate information into knowledge that can help drive more informed decision-
making. With cognitive computing, we can see and analyze more data than ever before – and
achieve more than we ever thought possible.
20
21. Institute the Principles of Software Delivery in Every Service,
Solution, Offering in Watson Health
• Create a repeatable, reliable process for
releasing software
• Automate almost everything
• Keep everything in version control
• If it hurts, do it more frequently and bring the
pain forward.
• Build quality in
• Done means released
• Everybody is responsible for the delivery
process
• Continuous Improvement
To drive benefits such as
• [Business] Faster delivery of features
• [Business] More stable operating
environments
• [Business] More time to add value (vs
fix/maintain)
• [Technical] Continuous software delivery
• [Technical] Less complex problems to fix
• [Technical] Faster resolution of problems
21
22. Continuous and Collaborative Development Tool Chain
Continuous Delivery: Integrate
with build and test tools to
automatically deploy, test and
promote new builds
Production
Deployments: Orchestrate
complex production deployments
of applications and configuration
Incremental Updates: Deploy
only the changed components or
missing incremental (patch)
versions
Stand up continuous delivery pipeline
environments quickly for new applications
Provision short-lived testing
sandboxes for specific infrastructure
combinations
Promote infrastructure changes
through environments just like application
changes
Collaborate by composing the work of
infrastructure specialists into full
environments
Drive environment consistency from
testing to production
Create and manage flexible,
dynamic infrastructure
Automate and continuous
deliver
Continuously deliver
applications faster and safer
with a proven pipeline
Repository
management,
Code reviews,
Issue tracking,
Activity feeds
Wikis.
Open source automation server
Continuous integration and continuous
delivery application that increases team
productivity
Rich plugin ecosystem: integrates with
virtually every SCM or build tool that exists.
Extensibility: Can be extended and modified,
and it's easy to create new Jenkins plugins.
Distributed builds: can distribute build/test
loads
Requirements,
Quality plans
Change and
Configuration
22
23. A Typical Flow Through the Tool Chain
23
Softlayer Cloud(s)
{Test Framework(s)}
Full stack provisioning
Continuous Deployment / Delivery
Continuous code updatesAutomated Builds
Automated Tests
Automated Tests
MW recipes
Solution artifacts
Interoperability between
RTC work items and GIT
change sets
Publish test results
Appscan
Saucelabs
Fitnesse
FindBugs
SonarQube
BlazeMeter
LoadImpact
Selenium
Cucumber
Rational Performance Test
24. Full Stack Solution Provisioning Services
24
Leveraging and extending IBM Cloud’s UrbanCode Deploy product portfolio,
here is an example solution blueprint showing how IBM Watson Health Cloud
provisions a solution end-to-end automatically on SoftLayer.
Each Blueprint can contain
• SoftLayer VLAN specification
• Multiples VMs
• Middleware (e.g., DB2, WAS; installed via Chef)
• Management Agents (e.g., monitoring, IEM; installed via Chef)
• MW configs, security support (configured via UCD)
• Solution components (installed/setup via UCD)
To enable this end to end solution, the following needed to be developed:
1. Ability for OpenStack Heat and UrbanCode Deploy to support vm creation
in SoftLayer.
2. Ability for OpenStack Heat and UrbanCode Deploy to support invocation
of Chef
3. Images for SoftLayer with appropriate support for UCD/UCDP/Chef and
appropriate safeguards for IBM/HIPAA compliance
4. Chef Cookbooks for IBM Middleware platforms
5. UCD Assets (Applications, Components, and Processes) to install a
solution to the Watson Health Cloud