Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Architecting Multi-Cloud Applications - Myth or Reality?


Published on

We reached a phase in cloud computing, where it is evident that multi-cloud is a reality. Depending on a single cloud is risky and probably doesn't work for most workloads. That said, there are myriad of challenges in architecting applications to run across clouds. So is architecting applications for multi-cloud a myth still? or is it a reality? This talk explores the challenges in multi-cloud application architectures and possible approaches & technology choices.

Published in: Technology, Education
  • Be the first to comment

Architecting Multi-Cloud Applications - Myth or Reality?

  1. 1. Architecting Multi-cloud ApplicationsMyth or Reality?Aravind Ajad YarraLead Architect, Emerging TechnologiesWipro Technologies
  2. 2. Agenda• Why Multi-Cloud Applications?• Key Considerations & Challenges• Solution Options
  3. 3. How many Cloud Providers are there?• Long tail of cloudproviders• Cloudsleuth lists about100 cloud providers• 10 major playersproviding infrastructurecloud stacks• 10 major playersprovide platform cloudstacksSource:
  4. 4. Why Multi-Cloud?
  5. 5. Multi-Cloud Enterprises• Enterprise Applications in Multiple Clouds• Benchmarking of our clients shows– A minimum of 3 different cloud platforms– Average of 5 different cloud platforms– Not to forget the on-premise non-cloud infrastructures– Not including the proprietary SaaS and PaaS providers
  6. 6. Multi-Cloud by Choice• 77% of respondents from enterprises had multi-cloud policy• 47% are pursuing hybrid strategy• 15% are employing multiple private clouds• 15% are employing multiple public clouds.source: Rightscale State of the cloud survey report
  7. 7. Why Multi-Cloud?• Cloud Availability Concerns– Simultaneous deployment across clouds• Quality of Service Concerns– Service levels vary from provider to provider– Performance Characteristics vary– Support options vary• Vendor Lock-In• Economic Considerations• Local Availability and Regulations– Special security needs– Data privacy needs• Work load needs– Workloads that have special infrastructure needs– Cloud Bursting– Service / Features are specific to certain clouds?
  8. 8. Key Considerations & Challenges
  9. 9. Multi-Cloud Application Considerations• Cloud API standardization alone won’t help• Discussion should go beyond Access– Develop, Deploy and Run– Application Architecture ConsiderationsAWSAzureRackspacePrivateCloud(s)DevelopDeployRunDEVOPSUSERS
  10. 10. Challenges in the Cloud• Cloud Interoperability &Lock-in is a key concern• Multi-cloud managementand Integration with on-premise is key challengeImportance when selecting cloud providerChallenges when using cloud providerssource: Dzone audience survey
  11. 11. Key Challenges• Differences in platform service capabilities– Cloud provider specific services– E.g., Amazon’s SQS, S3 and Windows App Fabric• Platform Specific Gotchas– E.g., Handling IP addresses in AWS different to IBM SCE+• Differences Programming Abstractions– Differences in programming models– Subtle issues in accessing environmentDevelop
  12. 12. Key Challenges• Different API Interfaces• Different Abstractions & Options• Capability Differences in APIs– Provisioning challenges– Configuration Challenges– Application Setup Challenges (for Distributed Applications)• Multiple Image formats• Access ManagementDeploy
  13. 13. Key Challenges• Multi-cloud Data Synchronization– Latency– Two-way Replication• Application Monitoring & Management• Multi-Cloud Application Routing– Global cloud load balancing– Session Affinity & ManagementRun
  14. 14. Solution Options
  15. 15. Cloud Neutral Services & Abstractions• Open Source Services for various popular cloud services– Open-stack implementations of S3, SQS– ElasticMQ, open source SQS implementation–, open source S3 implementation– and many more• Loosely coupled integration with Cloud Environment– Event oriented interactions– Abstractions for common services
  16. 16. Cloud Libraries• Jclouds– Java and Clojure based API for multipleclouds– Open source– Supports compute and storage services– 30 cloud providers and software stacksincluding Amazon, Azure, GoGrid,OpenStack, Rackspace, and vCloud.• Fog– The Ruby cloud services library– Open Source– Supports compute servicecomprehensively across clouds
  17. 17. Orchestration - Cloudify• Cloudify
  18. 18. Orchestration• Apache Whirr– Cloud neutral way to run services; such as• Hadoop• Zookeeper• Cassandra– Supports multiple provisioning Options• Chef, Puppet and Custom Scripting– Uses Jclouds• Brooklyn– Simplifies application deployment andmanagement– For deployment, it is designed to tie in withother tools
  19. 19. Cloud Management Platforms• Scalr– Manage and deploy their applications acrossmultiple clouds– Scalr is open source• RightScale– Single windows access management– RightScale API abstraction• Enstratius– Single windows access management– Enstratius API abstraction• Cloudsoft– Based on Brooklyn and Apache Whirr
  20. 20. Multi-Cloud Load Balancing• Using Global Server LoadBalancers– DNS based loadbalancing– Software / Hardwarebased Load balancing– Balance load acrossClouds– Intelligent• Managed Global Loadbalancers– Software as Service
  21. 21. Data Synchronization• Partition Tolerance of Data is a key concern in multi-cloudsetup– Eventual Consistency– Data Sharding• Cassandra Replication– Dynamic Snitch – Topology aware replication
  22. 22. Thank You@aravindajad Ajad Yarra