Scale Cloud Across the Enterprise Chris Haddad Vice President, Technology Evangelism Follow me on Twitter @cobiacomm Read architecture guidance at http://blog.cobia.net/cobiacomm
Skate towards the puck Business Value Best Practice Adoption Process Repeatability Fast time to value
Cloud Business Value For Development Teams Lower development barriers Lower adoption barriers 3
Best Practice Adoption and Process Repeatability Cost-effective, development, collaboration, and deployment infrastructure enabling a long tail of application development A shared environment for cross-organization application development and delivery Infrastructure enabling user experience composition across multiple disparate application providers
Fast Time to Value Increase Agility Rapidly adapt and fulfill new market demand Reduce time to introduce new services, applications, and products into long tail market(s)
Enterprise Architecture Business Model Challenges Unable to cost-effectively support long tail of application delivery Lack of metrics and baseline measurements Limited ability to influence adoption High friction and interaction cost when building cross-team business processes Inability to capitalize on business opportunities due to long IT solution lead times 12/11/2012 6
Cloud Business Value Blockers Silo owners Adoption curve Trust barrier Unknown baseline Funding model Source: http://blog.industryweapon.com/2010/01/beware-of-the-business-blocker/
To succeed and scale Cloud Build a Digital Ecosystem Platform Your Digital Business Ecosystem Your Core Business Capability 3 rd Party Partners Personalized SaaS Solution Digital Ecosystem DevOps Forge and Governance App Store Cloud Deployment 8
New Enterprise Architecture Approach Self-organization Crowdsourcing source apps and capabilities from crowd Dynamic distribution channels and fluid connections Adaptation and evolution Local autonomy leading to unforeseen ecosystem partner extensions Spontaneous selection and aggregation across services and solutions Low interaction cost Frictionless information flow Enables cost effectively serving a smaller, niche audience 12/11/2012 9
Recommendations from the Coach Business Value Best Practice Adoption Process Repeatability Fast time to value
Cloud Business Value For Development Teams Lower development barriers Provide on-demand Application Development project infrastructure and run-time environments Catalogue of re-usable open APIs, cloud services, and domain frameworks Lower adoption barriers On-demand web application and Cloud API subscriptions via a self-service provisioning portal Establish searchable registry of app, service, api, and data descriptors Reliable, available, and scalable solutions 11
Best Practice Adoption and Process Repeatability Cost-effective, development, collaboration, and deployment infrastructure enabling a long tail of application development Architecture templates and application platform services A shared environment for cross-organization application development and delivery Governed, iterative lifecycle management across hybrid clouds and composite applications IT Business performance metrics and analytics Infrastructure enabling user experience composition across multiple disparate application providers
Fast Time to Value with On-demand Contextual Personalization Increase agility Rapidly adapt and fulfill new market demand Reduce time to introduce new services, applications, and products into long tail market(s) On-demand Contextual Personalization Information access and social network access privileges Information aggregation and composition Business processes and rules Service levels, Quality of Service, and monetization rates Security policies
Fast path to goals! Cloud DevOps Factory Platform as a Service API Management Business Activity Dashboards
Embrace DevOps Processes Self-service configuration Automated provisioning Continuous build Continuous integration Continuous delivery Automated release management Incremental testing
Scale best practices with Cloud Factories Cloud Factories Development Forges Command Line Compilers and Linkers Integrated Development Environments (IDE) Application Lifecycle Management (ALM) Time 2012+ 12/11/2012 16
What is a Cloud Factory? A Cloud-based, automated, DevOps approach to agile application design, development, delivery, and visibility Simplifies the developer experience On-demand self service and Cloud provisioning Continuous build, continuous integration, continuous test, and continuous delivery Governed, iterative lifecycle management across hybrid clouds and composite applications Architecture templates and application platform services IT Business performance metrics and analytics Builds a Digital Business Ecosystem Enable a long tail of application development Fosters cross-organization development collaboration
Open Source DevOps, Agile, and Cloud Tooling Continuous Deployment Project and Team Management Software development workflow Test Automation Governance and Compliance Continuous Integration Development Dashboards Continuous Build Develop Code 12/11/2012 Source Issue 18 Control Tracking
Platform as a Service Capabilities Self service configuration Automated provisioning Policy configuration Process automation Dev Ops Tooling Automated Governance Service catalogue Service tiers Demand and capacity management Lifecycle management Infrastructure Authority integration Metering Reporting Billing Consumption based Funding Service Level Management Resource monitoring Resource management Performance management Traffic orchestration
Cloud-aware Reference Architecture Cloud Platform Cloud Management PaaS Manager Platform as a Service Run-time Framework (i.e. WSO2 Stratos, Cloud Foundry, RedHat OpenShift) Service-aware, tenant-aware Elastic Load Balancer Stratos Controller Cloud Native Container(s) Cloud Governance Asset/Code Deployer Tenant 1 Tenant (n) Identity Management Asset/Code Synchronizer Metering and Billing Application Platform Services (web server, database, ESB) Asset Repositories and Registries(tenant code, service endpoints, meta-data, configuration, policies) Infrastructure as a Service (AWS, Eucalyptus, OpenStack, CloudStack)
IaaS PaaS Foundation apaas ipaas Platform as a Service Reference Architecture Carbon ESB Cartridge Carbon App Server Cartridge Other Carbon Cartridges PHP Cartridge Any Pluggable Cartridge Message Service Logging Service Security Service Registry Service Relational Data Service Column Storage Service File Storage Service Task Mgmt Service Billing Service Stratos Controller Elastic Load Balancer Cloud Controller/ Autoscaler Artefact Distribution Controller Deployment Synchroniser Management Console Load Monitor Infrastructure Cloud (EC2, vmware, Rackspace, OpenStack, Eucalyptus, etc)
Cloud API promotion, exploration, subscription, and collaboration
On-demand self-service access to approved Cloud Services and APIs
Explore Cloud Services and APIs
TODO Business Activity Dashboards
Business Activity Monitoring
Cloud Strategy Goals 1. Decrease solution provisioning time 2. Right-size infrastructure, improve resiliency, and enhance Quality of Service (QoS) 3. Accelerate software development iterations 4. Share across multiple users and groups 5. Integrate and bridge heterogeneous Cloud environments 6. Optimize Cloud footprint and lower application cost
Cloud Characteristic Roadmap Cloud On-demand Self-service Elastic Scalability Resource Pooling Consumption based Funding Multi-tenancy Provisioning Usage Policies Portfolio Models Service Catalogue Activity Monitoring Federation Metering and Billing
7 +/- 2 Objectives 1. Engage stakeholders in a collaborative development workspace 2. Promote best practice workflow, architecture, and governance practices 3. Deploy applications into a Cloud runtime environment 4. On-demand application subscriptions via a self-service provisioning portal 5. Share applications across multiple tenants (e.g. departments, workgroups, employees, partners) 6. Scale run-time to meet usage 7. Deploy Open APIs 8. Encourage API adoption via API Store 9. Track business activity and analyze Cloud service usage, performance, and cost 29
Sharing Business Capabilities at Scale Presentation and Mashups Presentation Role Presentation and Mashups Presentation and Mashups Functional Role Functional Role Functional Role Functional code Business Proces Business Process Business Business Process Process and Business Rules Client Tier Integration Services Integration Services Resource Tier Resource Services Resource Services Public Cloud Services Private Applications
Scaling through API composition SaaS Application Composite Application Mobile Application Infrastructure as a Service (IaaS) Cloud API Endpoint Web application Endpoint Integration Services Business Service Portfolio Presentation Services Business Process and Rules Services Functional Services Resources Services Integration Services Hybrid Platform Services Application Portfolio
Availability Cost Scaling across Regions and Zones Multiple IaaS (hybrid) Deployment HIGHEST Zone 1 Private cloud (data center) Zone 2 Zone 1 Amazon EC2 Zone 2 Zone 1 LOWEST Rackspace Cloud Zone 2 32
Single Node Primary-Secondary, single LB Primary-Secondary, with multiple LBs Multi-node active cluster - Single zone Multi-zone Multi-region Multi-IaaS Cloud Scale = High Availability at a cost 33
Scaling Best Practices New-Normal Cloud architecture practices Distributed and federated interactions Event based, heterogeneous systems, network latency Configurable containers and engines Declarative data, rules, and process definitions De-normalized and simplified data models Hadoop/BigTable, Hypertext media, simple NoSQL entities Expect failure Systems span transactional control Applications decomposed into distinct services Federated environment drives autonomy, statelessness, and composition
Mission-critical Cloud requires new architecture components Availability Scalability Management State replication Tenant partitioning Private jet mode Management nodes Session replication Ghost deployment Logging infrastructure Multiple load balancers with keepalived or DNS RR BAM 2.0 architecture Auto-scaling Elastic Load Balancer Deployment synchronization
Tenant-awareness impacts Cloud Scaling
Tenant Scaling Method Impacts Value Proposition Single Application Tenant per Dedicated Application Server Container Multiple Application Tenants per Shared Application Platform Service Container
Cloud Topology and Value Five (5) Container Instances, Three Tenants Application Solution Tenant Traffic Tenant Partition Tenant- 1 Tenant- 2 Tenant- 3 Container AS-1 ESB-1 AS-2 ESB-2 ESB-3 Tenant Context Tenant- 1 Tenant- 1 Tenant- 2 Tenant- 2 Tenant- 3
Cloud Topology and Value Three (3) Container Instances, Three Tenants Application Solution Tenant Traffic Service Partition ESB Web Application Container ESB-1 ESB-2 AS-1 Tenant Context Tenant-1 Tenant-3 Tenant-2 Tenant-1 Tenant-2
Scaling a Cloud Business Measuring Revenue versus Cost Source: http://giffconstable.com/2009/11/freemium-business-model-template/
Scale Strategy and Tactics Gain Credibility Demonstrate improved resiliency and QoS Converge teams Offer standard shared application platform services Establish and promote the service catalogue Be inclusive Support multiple development languages, environments, and use cases Lower barriers to entry (e.g. financial, tooling, skills)
7 +/- 2 Objectives 1. Engage stakeholders in a collaborative development workspace 2. Promote best practice workflow, architecture, and governance practices 3. Deploy applications into a Cloud runtime environment 4. On-demand application subscriptions via a self-service provisioning portal 5. Share applications across multiple tenants (e.g. departments, workgroups, employees, partners) 6. Scale run-time to meet usage 7. Deploy Open APIs 8. Encourage API adoption via API Store 9. Track business activity and analyze Cloud service usage, performance, and cost 42
Questions? http://www.flickr.com/photos/oberazzi/ 43
Measuring Value Time Cost Resources
Key Metrics Foundation Time to create new application environment Time to redeploy application Optimize Minimum and maximum scale Scale frequency (i.e. time to scale up/down) Transformation Time and effort required integrating business process, event processor creating a complex app. Time and effort required to apply policy across tenant(s) Cost to operate application per user or transaction
What is your value baseline?
Quick Start Use Cases 1. DevOps Tooling and On-demand selfservice 2. Automated Governance 3. Service level management and elastic scale 4. Consumption based pricing and billing
Quick Start Use Cases DevOps Tooling and On-demand self-service Use Cases Rapidly provision application environment Rapidly provision application tenant Allocate, provision, monitor, manage, and administer resources across multiple tenants, nodes, and locations Develop complex, composite integrated applications Key metrics Time to create new application environment Time to redeploy application
Quick Start Use Cases Automated Governance Use Cases Create users and configure rights Deploy on preferred topology that meets deterministic performance requirements (e.g., replication, utilization, latency, bandwidth, and coherency) Create service throttling and security governance (XACML) policies Key Metrics Time and effort required integrating business process, event processor creating a complex app. Time and effort required to apply policy across tenant(s)
Quick Start Use Cases Service level management and elastic scale Use cases Ensure application satisfies consumer demand while maximizing resource utilization Scale workload processing and increase performance while minimizing infrastructure spend Load test application service Demonstrate multi-tenant web application Key Metrics Minimum and maximum scale Scale frequency (i.e. time to scale up/down)
Quick Start Use Cases Consumption based pricing and billing Use cases View service logs View bill by business value Key Metric Cost to operate application per user or transaction