Combining Public and Private Clouds into Useful HybridsDavid ChouArchitectMicrosoftDPR311
Focus of This SessionCloud computingMicrosoft cloud platformArchitectureHybrid cloud scenariosHybrid application modelsPrinciples, patterns, practicesMore about development & design; less about deploymentNot product features
NIST Definition of Cloud Computinghttp://www.nist.gov/itl/cloud/upload/cloud-def-v15.pdfEssential CharacteristicsOn-demand self-serviceBroad network accessResource poolingRapid elasticityMeasured serviceService ModelsSoftware as a ServicePlatform as a ServiceInfrastructure as a ServiceDeployment ModelsPrivatePublicHybridCommunity
Private CloudImplementation of cloud services on resources that are dedicated to your organization, whether they exist on-premises or off-premisesTypically, your organization owns and controls the resources/assets, definition of services, costs and risksVariations exist – such as hosted and virtual private cloudsMicrosoft solutionsWindows Server 2008 R2 Hyper-V, System Center (IaaS)Windows Azure Appliance (PaaS)
Public CloudImplementation of cloud services on resources that are shared between many customers, managed off-premisesTypically, cloud provider owns and controls the resources/assets, definition of services, costs and risksVariations exist – such as hosters and integrated cloud platformsMicrosoft solutionsOffice 365 (SaaS)Dynamics CRM Online (SaaS)Windows Intune (SaaS)Windows Azure platform (PaaS)
Private Cloud vs. Public CloudMore than a location and ownership distinctionNot just a deployment modelPrivate CloudControlConventional storageCustom policiesHeterogeneous infrastructureRegulatory compliance & data sovereigntyPublic CloudScaleCloud storageCommon policiesHomogeneous infrastructureWork in progress
Cloud Service ModelsTraditional ITInfrastructure(as a Service)Platform(as a Service)Software(as a Service)You manageApplicationsApplicationsApplicationsApplicationsYou manageDataDataDataDataRuntimeRuntimeRuntimeRuntimeDelivered as a serviceMiddlewareMiddlewareMiddlewareMiddlewareYou manageDelivered as a serviceOperating SystemOperating SystemOperating SystemOperating SystemDelivered as a serviceVirtualizationVirtualizationVirtualizationVirtualizationServersServersServersServersStorageStorageStorageStorageNetworkingNetworkingNetworkingNetworking
Platform as a ServiceMarketplaceApplicationMarketplaceInformation MarketplaceFrameworksWorkflow HostingDistributed CacheServices HostingSecurityClaims-Based IdentityFederated IdentitiesSecure Token ServiceDeclarative PoliciesIntegrationMessasgingRegistryService BusDataTransact-SQLData SynchronizationRelational DatabaseADO.NET, ODBC, PHPComputeC / C++Win32VHDStorageDynamic Tabular DataBlobsMessage QueuesDistributed File SystemContent DistributionOn-Premises BridgingNetworking
Platform as a ServiceApplicationsDataMarketMarketplaceComposite AppCachingFrameworksAccess ControlSecurityIntegrationConnect(BizTalk)Service BusIntegrationRelational DatabaseReportingDataSyncDataVM RoleWeb RoleWorker RoleComputeStorageTable StorageBlob StorageQueueDriveContent Delivery NetworkConnectNetworking
Targeting Apps to Public Cloud PlatformQuestions To ConsiderApplication StateApplication ScaleData SensitivityConnectivity NeedsApplication PortabilitySome Easy CasesLatency Between Componentse.g., web site sharing public dataOften, Forklift Approach Will Not WorkRegulation and ComplianceCareful decomposition needed
Targeting Apps to Public Cloud Platform
Hybrid CloudMixed/blended model of private and public cloudsVariations and multiple interpretations existOn-premises and off-premises bridgingMost common scenario todayEspecially for large enterprisesMore than a deployment / delivery modelApplication design, architectural model+
Hybrid Cloud DeploymentWorkload PatternsElastic/burst capacity (e.g., apps with variable load, HPC / parallel processing, etc.)Temporal applications (e.g., marketing apps, test & QA environments, etc.)Cloud-based DMZ / Perimeter ZoneHigh Performance ComputeBackup and storageDisaster recoveryThese work, but they are still deployment models
Zynga’s“Hybrid Cloud”Active unique players250M monthly (updated 2011.05) ; 60M daily90M+ in CityVille1M daily 4 days after launch; 10M after 60 days3B neighborhood connectionsCloud infrastructure“Z Cloud” private cloud implementationWestmere generation of Intel Xeon processors2-4 CPUs with 24-96GB of RAM and 140-600GB of disk12,000 Amazon EC2 nodes (updated 2010.10)Adding 1,000 servers per week (updated 2010.10)Moving 1PB data per day (updated 2010.10)Public cloud for variable capacity, private cloud for predictable capacitySource(s): “How FarmVille Scales to Harvest 75 Million Players a Month”, HighScalability.com, 2010.02.08, Tedd Hoff“Zynga Moves 1 Petabyte Of Data Daily; Adds 1,000 Servers A Week”, TechCrunch.com, 2010.09.22, LeenaRao“Lessons From FarmVille: How Zynga Uses The Cloud”; InformationWeek, 2011.05.16, Charles Babcock
Cloud-based DMZ / Perimeter ZoneMove assets closer to intended usersPublic-facing apps and websites (microsites, mobile app services, etc.) in public cloudInternal enterprise systems and apps in private cloudLeverage optimized infrastructure modelsHigher scalability, reliability, and agility for applications servicing external customers, with higher opportunistic benefitsHigher control and customization for core business processes accessed by internal users, with higher systematic benefitsLower conflict with compliance and data sovereignty requirementsStill a deployment modelNeed proper application and data integration
High Performance ComputeContextRiskMetrics GroupComplex Monte Carlo simulations to calculate financial risksDaily risk analysis load equivalent to processing 4 trillion US StocksExisting on-premise HPC implementationImplementationMassively scalable compute leveraging cloud capacityDeployed on 2K Windows Azure instances; 10K+ planned in 2010Windows Azure Worker RoleWindows Azure Blob and QueueAppFabric Service Bus
Hybrid Cloud ApplicationsDevelopment PrinciplesApply appropriate decompositionCloud-optimized design and implementationData and storage-driven design (e.g., keeping processes local to dependent data)Account for environmental constraints (e.g., network latency, data locality, performance, security, etc.)Application integration considerationsDependent on application profiles and specific requirements
Hybrid Cloud ApplicationsApplication PatternsHybrid Enterprise ApplicationIntegrated Cloud StorageGlobal Data SynchronizationComposite ApplicationsCloud-based Application Messaging
Hybrid Enterprise ApplicationContextCoca-Cola EnterprisesAn SAP on-premise instance which holds all the actual order history data, plus 2 enterprise LOB apps handling pricing, targeted promotions, & delivery schedules~1 million customers worldwideImplementationCloud-based Web-enablement of on-premise assetsWindows Azure Web Role (20) + SilverlightWeb services integration via on-premise ESB endpoints
Integrated Cloud StorageContextTribune Company100GB editorial content / day100TB net growth annually>8TB at each of 23 TV stations / year32 data centers, 4K servers25 / 162 years of historical content digitizedImplementation10-20 Worker Roles creating thumbnails (~15 / photo) and placed in Blob StorageIntegrated with FAST Search ServerIntegrated with on-premises processesPlans to implement Windows Azure CDN
Global Data SynchronizationContextLinkShare CorporationNeed to scale its ad management application to handle billions of online ad impressions during peak holiday trafficNeed to support a global ecommerce business platform100GB / month projected data growthImplementationASP.NET Web Roles for websitesWorker Roles asynchronously handle back-end processing of incoming dataRaw data in Windows Azure Table StorageRelational data in SQL AzureSQL Azure Data Sync used to synchronize globally distributed databases, including on-premises SQL Server instances
Composite ApplicationsCombination of on-premises and cloud-based application components and servicesExamplesWindows Azure AppFabricSharePoint and Windows AzureApplications leveraging cloud-based service APIs
Cloud-based Application MessagingCloud eventing patternAsynchronous messagingEvent-driven architectureOn-premises and cloudCloud and cloudLoosely coupled clients & serversLeverages cloud-based message queuesWindows Azure AppFabric Service BusWindows Azure Storage Queue Service
Cloud IntegrationADFS2AppFabricAccess ControlSecurityAppFabricIntegrationBizTalkAppFabric Service BusIntegrationSQL ServerSQL Azure Data SyncData.NET WCF.NET WCFComputeBlob StorageTable StorageQueue StorageStorageConnectNetworking
SummaryHybrid cloud infrastructureApplication deployment modelCapacity planning and cost allocationReuse existing workloadsAligns with infrastructure cloud servicesHybrid cloud applicationsApplication development modelLeverage cloud-optimized capabilitiesIntegration via multiple layers (application, data, security, network)Aligns with platform cloud services
Next StepsFederated CloudsMultiple clouds – private, public, community, etc.Focus on integration and interoperability (development model), not portability (deployment model)Federated ApplicationsCombination of applications and services from multiple organizationsCloud EcosystemsEcosystems of applications and services, regardless of deployment topologies
ARC Track Resourceshttp://www.microsoft.com/visualstudiohttp://www.microsoft.com/visualstudio/en-us/lightswitchhttp://www.microsoft.com/expression/http://blogs.msdn.com/b/somasegar/http://blogs.msdn.com/b/bharry/http://www.microsoft.com/sqlserver/en/us/default.aspxhttp://www.facebook.com/visualstudio
ResourcesConnect. Share. Discuss.http://northamerica.msteched.comLearningSessions On-Demand & CommunityMicrosoft Certification & Training Resourceswww.microsoft.com/techedwww.microsoft.com/learningResources for IT ProfessionalsResources for Developershttp://microsoft.com/technethttp://microsoft.com/msdn
Complete an evaluation on CommNet and enter to win!
© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation.  Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Combining Private and Public Clouds into Meaningful Hybrids

  • 2.
    Combining Public andPrivate Clouds into Useful HybridsDavid ChouArchitectMicrosoftDPR311
  • 3.
    Focus of ThisSessionCloud computingMicrosoft cloud platformArchitectureHybrid cloud scenariosHybrid application modelsPrinciples, patterns, practicesMore about development & design; less about deploymentNot product features
  • 4.
    NIST Definition ofCloud Computinghttp://www.nist.gov/itl/cloud/upload/cloud-def-v15.pdfEssential CharacteristicsOn-demand self-serviceBroad network accessResource poolingRapid elasticityMeasured serviceService ModelsSoftware as a ServicePlatform as a ServiceInfrastructure as a ServiceDeployment ModelsPrivatePublicHybridCommunity
  • 5.
    Private CloudImplementation ofcloud services on resources that are dedicated to your organization, whether they exist on-premises or off-premisesTypically, your organization owns and controls the resources/assets, definition of services, costs and risksVariations exist – such as hosted and virtual private cloudsMicrosoft solutionsWindows Server 2008 R2 Hyper-V, System Center (IaaS)Windows Azure Appliance (PaaS)
  • 6.
    Public CloudImplementation ofcloud services on resources that are shared between many customers, managed off-premisesTypically, cloud provider owns and controls the resources/assets, definition of services, costs and risksVariations exist – such as hosters and integrated cloud platformsMicrosoft solutionsOffice 365 (SaaS)Dynamics CRM Online (SaaS)Windows Intune (SaaS)Windows Azure platform (PaaS)
  • 7.
    Private Cloud vs.Public CloudMore than a location and ownership distinctionNot just a deployment modelPrivate CloudControlConventional storageCustom policiesHeterogeneous infrastructureRegulatory compliance & data sovereigntyPublic CloudScaleCloud storageCommon policiesHomogeneous infrastructureWork in progress
  • 8.
    Cloud Service ModelsTraditionalITInfrastructure(as a Service)Platform(as a Service)Software(as a Service)You manageApplicationsApplicationsApplicationsApplicationsYou manageDataDataDataDataRuntimeRuntimeRuntimeRuntimeDelivered as a serviceMiddlewareMiddlewareMiddlewareMiddlewareYou manageDelivered as a serviceOperating SystemOperating SystemOperating SystemOperating SystemDelivered as a serviceVirtualizationVirtualizationVirtualizationVirtualizationServersServersServersServersStorageStorageStorageStorageNetworkingNetworkingNetworkingNetworking
  • 9.
    Platform as aServiceMarketplaceApplicationMarketplaceInformation MarketplaceFrameworksWorkflow HostingDistributed CacheServices HostingSecurityClaims-Based IdentityFederated IdentitiesSecure Token ServiceDeclarative PoliciesIntegrationMessasgingRegistryService BusDataTransact-SQLData SynchronizationRelational DatabaseADO.NET, ODBC, PHPComputeC / C++Win32VHDStorageDynamic Tabular DataBlobsMessage QueuesDistributed File SystemContent DistributionOn-Premises BridgingNetworking
  • 10.
    Platform as aServiceApplicationsDataMarketMarketplaceComposite AppCachingFrameworksAccess ControlSecurityIntegrationConnect(BizTalk)Service BusIntegrationRelational DatabaseReportingDataSyncDataVM RoleWeb RoleWorker RoleComputeStorageTable StorageBlob StorageQueueDriveContent Delivery NetworkConnectNetworking
  • 11.
    Targeting Apps toPublic Cloud PlatformQuestions To ConsiderApplication StateApplication ScaleData SensitivityConnectivity NeedsApplication PortabilitySome Easy CasesLatency Between Componentse.g., web site sharing public dataOften, Forklift Approach Will Not WorkRegulation and ComplianceCareful decomposition needed
  • 12.
    Targeting Apps toPublic Cloud Platform
  • 13.
    Hybrid CloudMixed/blended modelof private and public cloudsVariations and multiple interpretations existOn-premises and off-premises bridgingMost common scenario todayEspecially for large enterprisesMore than a deployment / delivery modelApplication design, architectural model+
  • 14.
    Hybrid Cloud DeploymentWorkloadPatternsElastic/burst capacity (e.g., apps with variable load, HPC / parallel processing, etc.)Temporal applications (e.g., marketing apps, test & QA environments, etc.)Cloud-based DMZ / Perimeter ZoneHigh Performance ComputeBackup and storageDisaster recoveryThese work, but they are still deployment models
  • 15.
    Zynga’s“Hybrid Cloud”Active uniqueplayers250M monthly (updated 2011.05) ; 60M daily90M+ in CityVille1M daily 4 days after launch; 10M after 60 days3B neighborhood connectionsCloud infrastructure“Z Cloud” private cloud implementationWestmere generation of Intel Xeon processors2-4 CPUs with 24-96GB of RAM and 140-600GB of disk12,000 Amazon EC2 nodes (updated 2010.10)Adding 1,000 servers per week (updated 2010.10)Moving 1PB data per day (updated 2010.10)Public cloud for variable capacity, private cloud for predictable capacitySource(s): “How FarmVille Scales to Harvest 75 Million Players a Month”, HighScalability.com, 2010.02.08, Tedd Hoff“Zynga Moves 1 Petabyte Of Data Daily; Adds 1,000 Servers A Week”, TechCrunch.com, 2010.09.22, LeenaRao“Lessons From FarmVille: How Zynga Uses The Cloud”; InformationWeek, 2011.05.16, Charles Babcock
  • 16.
    Cloud-based DMZ /Perimeter ZoneMove assets closer to intended usersPublic-facing apps and websites (microsites, mobile app services, etc.) in public cloudInternal enterprise systems and apps in private cloudLeverage optimized infrastructure modelsHigher scalability, reliability, and agility for applications servicing external customers, with higher opportunistic benefitsHigher control and customization for core business processes accessed by internal users, with higher systematic benefitsLower conflict with compliance and data sovereignty requirementsStill a deployment modelNeed proper application and data integration
  • 17.
    High Performance ComputeContextRiskMetricsGroupComplex Monte Carlo simulations to calculate financial risksDaily risk analysis load equivalent to processing 4 trillion US StocksExisting on-premise HPC implementationImplementationMassively scalable compute leveraging cloud capacityDeployed on 2K Windows Azure instances; 10K+ planned in 2010Windows Azure Worker RoleWindows Azure Blob and QueueAppFabric Service Bus
  • 18.
    Hybrid Cloud ApplicationsDevelopmentPrinciplesApply appropriate decompositionCloud-optimized design and implementationData and storage-driven design (e.g., keeping processes local to dependent data)Account for environmental constraints (e.g., network latency, data locality, performance, security, etc.)Application integration considerationsDependent on application profiles and specific requirements
  • 19.
    Hybrid Cloud ApplicationsApplicationPatternsHybrid Enterprise ApplicationIntegrated Cloud StorageGlobal Data SynchronizationComposite ApplicationsCloud-based Application Messaging
  • 20.
    Hybrid Enterprise ApplicationContextCoca-ColaEnterprisesAn SAP on-premise instance which holds all the actual order history data, plus 2 enterprise LOB apps handling pricing, targeted promotions, & delivery schedules~1 million customers worldwideImplementationCloud-based Web-enablement of on-premise assetsWindows Azure Web Role (20) + SilverlightWeb services integration via on-premise ESB endpoints
  • 21.
    Integrated Cloud StorageContextTribuneCompany100GB editorial content / day100TB net growth annually>8TB at each of 23 TV stations / year32 data centers, 4K servers25 / 162 years of historical content digitizedImplementation10-20 Worker Roles creating thumbnails (~15 / photo) and placed in Blob StorageIntegrated with FAST Search ServerIntegrated with on-premises processesPlans to implement Windows Azure CDN
  • 22.
    Global Data SynchronizationContextLinkShareCorporationNeed to scale its ad management application to handle billions of online ad impressions during peak holiday trafficNeed to support a global ecommerce business platform100GB / month projected data growthImplementationASP.NET Web Roles for websitesWorker Roles asynchronously handle back-end processing of incoming dataRaw data in Windows Azure Table StorageRelational data in SQL AzureSQL Azure Data Sync used to synchronize globally distributed databases, including on-premises SQL Server instances
  • 23.
    Composite ApplicationsCombination ofon-premises and cloud-based application components and servicesExamplesWindows Azure AppFabricSharePoint and Windows AzureApplications leveraging cloud-based service APIs
  • 24.
    Cloud-based Application MessagingCloudeventing patternAsynchronous messagingEvent-driven architectureOn-premises and cloudCloud and cloudLoosely coupled clients & serversLeverages cloud-based message queuesWindows Azure AppFabric Service BusWindows Azure Storage Queue Service
  • 25.
    Cloud IntegrationADFS2AppFabricAccess ControlSecurityAppFabricIntegrationBizTalkAppFabricService BusIntegrationSQL ServerSQL Azure Data SyncData.NET WCF.NET WCFComputeBlob StorageTable StorageQueue StorageStorageConnectNetworking
  • 26.
    SummaryHybrid cloud infrastructureApplicationdeployment modelCapacity planning and cost allocationReuse existing workloadsAligns with infrastructure cloud servicesHybrid cloud applicationsApplication development modelLeverage cloud-optimized capabilitiesIntegration via multiple layers (application, data, security, network)Aligns with platform cloud services
  • 27.
    Next StepsFederated CloudsMultipleclouds – private, public, community, etc.Focus on integration and interoperability (development model), not portability (deployment model)Federated ApplicationsCombination of applications and services from multiple organizationsCloud EcosystemsEcosystems of applications and services, regardless of deployment topologies
  • 28.
  • 29.
    ResourcesConnect. Share. Discuss.http://northamerica.msteched.comLearningSessionsOn-Demand & CommunityMicrosoft Certification & Training Resourceswww.microsoft.com/techedwww.microsoft.com/learningResources for IT ProfessionalsResources for Developershttp://microsoft.com/technethttp://microsoft.com/msdn
  • 30.
    Complete an evaluationon CommNet and enter to win!
  • 32.
    © 2011 MicrosoftCorporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Editor's Notes

  • #26 New for TechEd 2011, we will be working with Microsoft Tag (http://tag.microsoft.com/overview.aspx) to create unique Tags for every session at the event. Your session Tag will appear on both the room signage and at the end of your presentation. With your session Tag, attendees will be able to scan as they enter the room to retrieve session details, view speaker bios, and engage in discussions; or scan at the end of the presentation to evaluate your session and download materials. We’re excited to integrate Microsoft Tag across the My TechEd mobile experience this year.