Achieve Cloud Scale by Implementing Elastic Load Balancing, Asset Deployment, and Synchronization

2,255 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,255
On SlideShare
0
From Embeds
0
Number of Embeds
186
Actions
Shares
0
Downloads
53
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Achieve Cloud Scale by Implementing Elastic Load Balancing, Asset Deployment, and Synchronization

  1. 1. Achieve Cloud-Scale by implementingElastic Load Balancing, Asset Deployment, and Synchronization Chris Haddad Vice President Technology Evangelism Follow me on Twitter @cobiacomm December 2012
  2. 2. Achieve Cloud-ScaleAgenda• Scale Objectives• Architecting for Scale• Elastic Load Balancing• Asset Deployment Synchronization and Optimization• Getting started
  3. 3. Share Business Capabilities at Scale Business Functional Proces Presentation and Business Mashups Role Process Presentation Functional Business Role Role Process Business Presentation and Functional Role Process and Mashups Functional Business Rules Presentation and Mashups codeClient Tier Resource Integration Services Tier Resource Services Resource Services Integration Services Public Cloud Services Private Applications
  4. 4. Scale across Clouds Composite Mobile Infrastructure as a Application Application Service (IaaS)SaaS Application Cloud API Web Endpoint application Endpoint Integration Services Business Service Portfolio Application Portfolio Hybrid Presentation Services Platform Business Process and Functional Services Services Rules Services Resources Services Integration Services
  5. 5. Maintain Availability by Scaling across Regions and Zones Multiple IaaS (hybrid) DeploymentHIGHEST Zone 1 Private cloud (data center) Zone 2 Zone 1 Zone 2 Amazon EC2 Zone 1 Availability Cost Zone 2LOWEST Rackspace Cloud 5
  6. 6. Scale Challenges (a subset)• Tenant and service partitioning – Traffic Routing• Dynamically registering service instances – Right-sizing service instances to match demand• Code deployment into multiple Cloud instances – Minimizing Cloud instance footprint
  7. 7. Architecting for Scale Cloud ScaleOn-demand Consumption Elastic Scalability Resource PoolingSelf-service based Funding Create tenant Match capacity Asset deployment Meter usage environment with demand Asset Deploy Service Load balancing Bill per scale unit Synchronization Dynamic Configure Service Clustering
  8. 8. Mission-critical Cloud Scale requires new architecture components Availability Scalability ManagementState replication Tenant partitioning Management nodes Private jet modeSession replication Ghost deployment Logging infrastructureMultiple load balancers BAM 2.0 architecture Deploymentwith synchronizationkeepalived or DNS RR Auto-scaling Elastic Load Balancer
  9. 9. Cloud-aware Reference ArchitectureCloud Platform Platform as a Service Run-time Framework (i.e. WSO2 Stratos, Cloud Cloud Foundry, RedHat OpenShift)Management Service-aware, tenant-aware Elastic Load BalancerPaaS Manager Stratos Controller Cloud Native Container(s) Cloud Asset/Code Deployer Tenant 1 Tenant (n) Governance Identity Asset/Code Synchronizer Management Application Platform Services (web server, database, ESB) Metering and Billing Asset Repositories and Registries(tenant code, service Infrastructure as a Service endpoints, meta-data, (AWS, Eucalyptus, OpenStack, configuration, policies) CloudStack)
  10. 10. Platform as a Service Reference ArchitectureaPaaSiPaaS Carbon Any Carbon ESB Other Carbon PHP App Server Pluggable Cartridge Cartridges Cartridge Cartridge Cartridge Relational Column File Task Message Logging Security Registry Billing Data Storage Storage Mgmt Service Service Service Service ServiceFoundation Service Service Service Service PaaS Stratos Controller Elastic Cloud Artifact Deployment Management Load Load Controller/ Distribution Synchronizer Auto-scaler Controller Console Monitor Balancer IaaS Infrastructure Cloud (EC2, vmWare, Rackspace, OpenStack, Eucalyptus, etc)
  11. 11. Dynamic Instance ClusteringHybrid group Dynamic members Static members M6 M5 WK1 N WK2 Notify Join (IP, Port) M7 WK3 WK4
  12. 12. Tenant-awareness impacts Cloud Scaling
  13. 13. Elastic Load Balancer Config
  14. 14. Private Service Clouds
  15. 15. Deployment Synchronization• Allows you to synchronize deployment artifacts across nodes in a cluster• Also includes meta data synchronization
  16. 16. Deployment Synchronization • Allows you to synchronize deployment artifacts across nodes in a cluster • Also includes meta data synchronization
  17. 17. Management Node Config – carbon.xml• <DeploymentSynchronizer> AutoCommit/Checkout = RW• <Enabled>true</Enabled>• <AutoCommit>true</AutoCommit>• <AutoCheckout>true</AutoCheckout>• <RepositoryType>svn</RepositoryType>• <SvnUrl>http://10.100.3.115/svn/repos/wsas</SvnUrl>• <SvnUser>wso2</SvnUser>• <SvnPassword>wso2123</SvnPassword>• <SvnUrlAppendTenantId>true</SvnUrlAppendTenantId>• </DeploymentSynchronizer>
  18. 18. Deployment Optimization• Four variants • Lazy initialization • Virtual proxy • Value holder • Ghost• Two aspect of lazy loading in Carbon • Lazy loading global configuration • Lazy loading artifacts
  19. 19. Ghost deployment for servicescarbon.xml - <EnableGhostDeployer>true</EnableGhostDeployer>
  20. 20. Lazy loading with Ghost Deployment
  21. 21. What is your scale value baseline?
  22. 22. Scaling a Cloud Business • Measuring Revenue versus CostSource: http://giffconstable.com/2009/11/freemium-business-model-template/
  23. 23. Tenant Scaling Method Impacts Value Proposition• Single Application Tenant per Multiple Application Tenants per Shared Application Platform Service• Dedicated Application Server Container Container
  24. 24. Cloud Topology and ValueFive (5) Container Instances, Three Tenants Tenant Application Solution 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
  25. 25. Cloud Topology and ValueThree (3) Container Instances, Three Tenants Tenant Application Solution Traffic Web Service Partition ESB Application Container ESB-1 ESB-2 AS-1 Tenant Context Tenant-1 Tenant-3 Tenant-2 Tenant-1 Tenant-2
  26. 26. Single Node Primary-Secondary, single LB Primary-Secondary, with multiple LBs at a cost Multi-node active cluster - Single zone Multi-zone Multi-region Cloud Scale = High Availability Multi-IaaS26
  27. 27. 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
  28. 28. Quick Start Use CasesService 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)
  29. 29. Quick Start Use CasesConsumption based pricing and billing• Use cases • View service logs • View bill by business value• Key Metric • Cost to operate application per user or transaction
  30. 30. Resources• Try Stratos right now: – https://stratoslive.wso2.com/• Read about Stratos: – http://wso2.com/cloud/stratos/ – Source Download available• Contact us: – bizdev@wso2.com
  31. 31. Resources• Information on tenant-aware load balancing• http://sanjeewamalalgoda.blogspot.com/2012/03/tenant-aware-load-balancer-is-upcoming.html• http://sanjeewamalalgoda.blogspot.com/2012/05/tenant-aware-load-balancer.html• Information on long running performance• http://kishanthan.wordpress.com/2012/06/27/lazy-loading-pattern-in-wso2-stratos• Lazy loading deployment artifacts• http://blog.afkham.org/2011/11/lazy-loading-deployment-artifacts-in.html• Scaling Stratos• http://srinathsview.blogspot.com/2012/06/scaling-wso2-stratos.html• http://blog.afkham.org/2011/09/how-to-setup-wso2-elastic-load-balancer.html• http://blog.afkham.org/2011/09/wso2-load-balancer-how-it-works.html
  32. 32. Resources• Auto-scaler service deployment• http://nirmalfdo.blogspot.com/2012/07/autoscaler-service-deployment.html• Auto-scaler service• http://nirmalfdo.blogspot.com/2012/07/wso2-autoscaler-service-part-i.html• Pass-through transport – performance comparison• http://wso2.org/library/articles/2012/03/wso2-esb-message-transfer-mechanisms-comparative-benchmarks/• Automatic failover for WSO2 ELB• http://gonesimple.org/2012/09/24/automatic-fail-over-for-wso2-elb/

×