Session 9 - DevOps_Reference_Architecture
Session 9 - DevOps_Reference_Architecture
Local
Internet of Things Insight Cloud Services
A platform designed to build Industry apps and solutions built in
The Best disruptive, data-rich solutions partnership with The Weather
Abstraction Transparency
& Dev Velocity & Control Tools that are secure and Company and Twitter that deliver new
intelligent. insights.
What is DevOps? Enterprise capability for continuous software delivery and
management that enables organizations to innovate rapidly to
capitalize on new market opportunities, and reduce the cycle
Accelerate time to collect and react to customer feedback
software delivery –
for faster time to value Lean and
Process Continuous Business Planning Agile principles
Think
Continuous Conceptualization Collaborative
Customer Feedback refinement, and Development
Balance speed, cost, & Optimization
Learn
prioritization of
capabilities Code
Steer Generation,
quality and risk –
Culture
Continuously learn enhancement,
Analytics & Cognitive based on optimization and
Technology
Monitoring offerings
Deploy
Run
Services, options,
Reduce time to and capabilities
required to run in
experience
Package
Planning Development SCM Build Deploy Testing Staging Production Manage Feedback
Repo
What IDE How do you How do you ensure How to you scale What happens How are defects or
How do you turn How are How do you
tooling is used? manage releases? orchestrate environment a live application when an app or incidents fed back
business strategy requirements
changes consistency between or business business service to developers?
into development captured and
across multiple dev/test/prod? service? crashes?
plans? managed? What code How do you break
repositories down one large release components? How can you predict the How can the How is client
How do you know How do teams of are used? to smaller independent How do you add
performance or health of business see that feedback captured
you are building developers How do you capacity to a live
releases? the app or service? their critical and acted upon?
the right app / collaborate on a How do you build anti-fragile application or
service? app/service is
business service? single build? do functional How do you branch and environments? What KPIs are used How do you get
operating
testing? synchronize version to measure delivery? operational
How do you know How are apps or normally?
What percentage How do you control system for feedback to dev?
of dev budget the environments How do you do services
automate How do you developing fixes or What tools are
should be spent on are secure? performance and monitored for
testing? do integration updates? used for fault How do you know
testing? operational testing? health &
testing? How do you finding and of architecture
How are security performance? changes in real
How do we inject reverse a change How do you problem root-
requirements How do you affecting a service time?
innovation and coordinate across How do you track cause-analysis?
planned into the manage test
disruptive ideas into or app and how do multiple delivery out of policy
build? plans and test you verify service How do you manage
the requirements? pipelines? changes?
results? is back to normal? a service that spans
How do you across multiple cloud
What business How is operational providers?
metrics are assess quality of
excellence
defined for the app development?
measured?
/ service success?
DevOps – applies across multiple ‘application’ domains
Package
Planning Development SCM Build Deploy Testing Staging Production Manage Feedback
Repo
Microservices Provide the runtime and services to deploy microservice applications that are resilient, agile, and scalable.
Hybrid Create applications whose components are split across cloud and on-premises environments, or across different clouds.
Build solutions that gather data from any type of source, including web and social. With those solutions, you can store, analyze, and report on
Web App data by using analytic engines to drive actionable insights and visualization.
Develop, deploy, and manage scalable native and hybrid apps for mobile devices while you are securely connected to back-end infrastructure
Mobile on the cloud or in an enterprise.
Connect to Internet of Things (IoT) devices and build scalable apps and dashboards to learn from IoT data by using IBM Bluemix IoT, Data,
IoT and Cognitive services.
Build solutions that gather data from any type of source, including web and social. With those solutions, you can store, analyze, and report on
Data & Analytics data by using analytic engines to drive actionable insights and visualization.
Integrating Architectures and Method
6
Garage Method
https://www.ibm.com/devops/method/
Continuous Business Planning
Run
Services, options, and
capabilities required to
run in the Cloud
7
Capabilities THINK
Business Strategy
Requirements
LEARN
User Experience
Usage Analytics
Plan & Track
Team Analytics
Think Architecture
Business Analytics
Conceptualization
MANAGE refinement, and Technical Design CODE
Business Validation prioritization of
Logging capabilities
Steer
Code Concept Validation Source Code Mgt
Learn Generation,
Monitoring Continuously learn enhancement,
& Metrics optimization and Construct
based on outcomes
testing of
Event Mgt.
from experiments
features Build & Continuous
DevOps
Culture
Integration
Continuous Develop/
Alert Notification Operate Foundational
Feedback Test Code Testing
Runbook
values and principles DELIVER
Automation Deliver Environment Artifact Mgt.
Manage
Ongoing monitoring, Automated production Provisioning
Root Cause Analysis and delivery of
support, and recovery Middleware
of offerings offerings Configuration
Deploy
Incident Mgt.
Run Application
Services, options, and Deployment
Change Mgt. RUN capabilities required Ops Tooling
to run in the Cloud Integration
Operational Testing Hybrid Connectivity
Security Tooling
Integration
Hybrid Security
A/B Deployment
Autoscaling
Deployment
Orchestration
Runtimes
Release Mgt.
Run Testing
Delivery Testing
8
Overall Architecture https://www.ibm.com/devops/method/content/architecture/architecture_devops
9
Overall Architecture - #1 Collaborative development
Collaborative development
Collaboration tools enable a culture of innovation.
Developers, designers, operations teams, and
managers must communicate constantly.
Development and operations tools must be
integrated to post updates and alerts as new
builds are completed and deployed and as
performance is monitored. The team can discuss
the alerts as a group in the context of the tool.
Cloud services
Slack
On-premises products
IBM® Connections™
IBM Verse™
10
Overall Architecture - #2 Track & Plan
Cloud services
GitHub Issues and Projects
On-premises products
IBM Rational Team Concert™
11
Overall Architecture – #3 Edit Code
Edit code
Developers write source code in a code editor to
implement the architecture. They construct,
change, and correct applications by using various
coding models and tools.
Cloud services
Atom
Sublime
Web IDE
On-premises products
Eclipse
IBM Rational® Application Developer
12
Overall Architecture – #4 Source Code
Source control
Developers manage the versions and
configuration of assets, merge changes, and
manage the integration of changes. The source
control tool that a team uses should support
social coding.
Cloud services
GitHub
Git hosted on Bluemix
On-premises products
GitHub Enterprise
13
Overall Architecture – #5 Build, test, and continuous integration
Cloud services
The Build & Deploy pipeline in IBM Bluemix
DevOps Services
Sauce Labs
On-premises products
IBM Rational Test Workbench
IBM Rational Team Concert™
IBM Rational Functional Tester
IBM Rational Performance Tester
IBM UrbanCode™ Build
IBM UrbanCode Deploy
14
Overall Architecture – #6 Artifact management
Artifact management
Binary files and other output from the build are
sent to and managed in a build artifact repository.
Cloud services
IBM Bluemix DevOps Services
On-premises products
IBM Rational Asset Manager
IBM UrbanCode Deploy
15
Overall Architecture – #7 Release management
Release management
The release is scheduled. The team needs tools
that support release communication and
managing, preparing, and deploying releases.
On-premises products
IBM UrbanCode Release
16
Overall Architecture – #8 Deployment orchestration
Deployment orchestration
The team coordinates the manual and automated
processes that are required for the solution to
operate effectively. The team must strive towards
continuous delivery with zero downtime. A/B
deployments can help to gauge the effectiveness
of new changes.
Cloud services
The Delivery Pipeline service on Bluemix
IBM Active Deploy
IBM Globalization Pipeline
On-premises products
IBM Cloud Orchestrator
IBM UrbanCode Deploy
17
Overall Architecture – #9-11 Application, Runtimes, Security
Security
The team must ensure that all aspects of the
application and its supporting infrastructure are
secured.
Cloud services
IBM Access Trail
IBM Application Security on Cloud
IBM Single Sign On
Application
The team must understand the application and
the options for the application’s runtime
environment, security, management, and release
requirements.
Cloud services
Bluemix runtimes (Node.js, Java, Liberty, & more)
IBM Auto-Scaling for Bluemix
IBM Containers
OpenStack virtual machines 18
Overall Architecture – #12 Monitoring and metrics & #13 Alerts
Cloud services
IBM Alert Notification
IBM Bluemix Availability Monitoring
IBM Mobile Quality Assurance
IBM Monitoring and Analytics for Bluemix
New Relic
On-premises products
IBM Application Performance Management
Alert notifications
The right people on the team or systems are
notified when issues occur.
Cloud services
IBM Alert Notification
19
Overall Architecture – #14 IT service management
IT service management
The team manages the process for responding to
operations incidents, and delivers the changes to
fix any incidents. For more information, see the
Cloud Service Management architecture.
Cloud services
Runbook Automation
On-premises products
IBM Control Desk
ServiceNow
20
Overall Architecture – #15 Usage analytics
Usage analytics
The team uses analytics to learn how users
interact with the application and measure success
through metrics.
Cloud services
Google Analytics
On-premises products
IBM Digital Analytics
21
Overall Architecture – #16 Application Consumers & #17 DevOps
Application consumers
When users interact with the application, they can
provide feedback on their requirements and how
the application is meeting them, which is captured
by analytics as well.
DevOps engineers
DevOps engineers manage the entire application
lifecycle while they respond to feedback and
analytics from the running application.
22
Overall Architecture – #18 Transformation and connectivity
& #19 Enterprise User Directory
Transformation and connectivity
The enterprise network is protected by a firewall
and must be accessed through transformation
and connectivity services and secure messaging
services.
Cloud services
IBM API Connect
IBM Secure Gateway
On-premises products
IBM Security Directory Server
23
The Ecosystem
Runtimes
Continuous Business Planning
Think
Conceptualization
Collaborative
refinement, and Development
prioritization of
Continuous capabilities Code
Steer
Learn Generation,
Customer Feedback Continuously learn enhancement,
optimization and
& Optimization based on outcomes
testing of
from experiments
features
DevOps
Culture Develop/
Operate Continuous
Foundational
valuesFeedback
and principles Test
Manage Deliver
Automated
Ongoing monitoring,
support, and recovery production and Continuous
Continuous of offerings delivery of offerings Testing
Deploy
Monitoring Run
Services, options,
and capabilities
required to run in the
Cloud
25
Key Resources
Communities Resources in Box External Pages Others
IBM DevOps Community Assets by Sales Play IBM developerWorks Bluemine
IBM Cloud community Assets by Campaigns IBM DevOps Client Success Central
IBM Competitive Project Office Analyst Research IBM Cloud DevOps Transformation
27 © IBM Corporation