KEMBAR78
Windows Azure | PPTX
Windows Azure PlatformJohn AliotoArchitectMicrosoft Corporationjohn.alioto@microsoft.com
What is cloud?
Public Cloud
Pool of computing resources offered by a vendor, typically using a “pay as you go” model
Private Cloud
Pool of computing resources that lives within a self-managed datacenter
Defining CloudApplication runs using cloud platformApplication runs on-premisesBring my own machines, connectivity, software, etc.
Complete control and responsibility
Upfront capital costs for the infrastructureApplication runs at a hosterRent machines, connectivity, software
Less control, but fewer responsibilities
Lower capital costs, but pay for fixed capacity, even if idle
Shared
multi-tenant environment
Offers pool of computing resources, abstracted from infrastructure
Pay as you goPrivate(On-Premise)Infrastructure(as a Service)Platform(as a Service)Types of CloudsYou manageApplicationsApplicationsApplicationsYou manageRuntimesRuntimesRuntimesSecurity & IntegrationSecurity & IntegrationSecurity & IntegrationManaged by vendorDatabasesDatabasesDatabasesYou manageServersServersServersManaged by vendorVirtualizationVirtualizationVirtualizationServer HWServer HWServer HWStorageStorageStorageNetworkingNetworkingNetworking
Types of CloudsInfrastructure as a Service (IaaS)Your ApplicationDeploymentRuntimesWeb ServerUnit of DeploymentOS ServicesProvided byWindows AzureOperating SystemProvidedByAmazonEC2Virtualized InstanceHardware
Types of CloudsPlatform as a Service (PaaS)Your ApplicationDeploymentUnit of DeploymentRuntimesCan swap outWeb ServerProvided byGoogleAppEngineOS ServicesProvided byWindows AzureOperating SystemVirtualized InstanceHardware
Types of CloudsSoftware as a Service (SaaS)Your ApplicationRuntimesWeb ServerProvidedbySaaSOS ServicesOperating SystemVirtualized InstanceHardware
Control Versus Economy of ScaleControlHighLowEconomy of ScaleLowHigh
This is Not New …Build vs. BuyControlHighLowEconomy of ScaleLowHigh
This is New …On Premises vs. In the CloudControlHighLowEconomy of ScaleLowHigh
FundamentalsHow Microsoft Views the CloudScale Out/InAutomated Service ManagementHigh AvailabilityMulti-TenancyConsiderationsLocationOn premisesOff premisesInfrastructureHeterogeneousHomogeneousOpExCapExBusiness modelLease/RentedOwnedOwnershipThird PartySelfManagement
Sample Workloads for the Cloud“On and Off”“Growing Fast“  InactivityPeriod Compute Compute Average UsageUsageAverageTime Time On & off workloads (e.g. batch job)
Over provisioned capacity is wasted
Time to market can be cumbersome
Successful companies need to grow/scale
Keeping up w/ growth is big IT challenge
Complex lead time for deployment“Unpredictable Bursting“  “Predictable Bursting“ Compute Compute Average Usage Average Usage Time Time Unexpected/unplanned peak in demand
Sudden spike impacts performance
Can’t over provision for extreme cases

Windows Azure

  • 1.
    Windows Azure PlatformJohnAliotoArchitectMicrosoft Corporationjohn.alioto@microsoft.com
  • 2.
  • 3.
  • 4.
    Pool of computingresources offered by a vendor, typically using a “pay as you go” model
  • 5.
  • 6.
    Pool of computingresources that lives within a self-managed datacenter
  • 7.
    Defining CloudApplication runsusing cloud platformApplication runs on-premisesBring my own machines, connectivity, software, etc.
  • 8.
    Complete control andresponsibility
  • 9.
    Upfront capital costsfor the infrastructureApplication runs at a hosterRent machines, connectivity, software
  • 10.
    Less control, butfewer responsibilities
  • 11.
    Lower capital costs,but pay for fixed capacity, even if idle
  • 12.
  • 13.
  • 14.
    Offers pool ofcomputing resources, abstracted from infrastructure
  • 15.
    Pay as yougoPrivate(On-Premise)Infrastructure(as a Service)Platform(as a Service)Types of CloudsYou manageApplicationsApplicationsApplicationsYou manageRuntimesRuntimesRuntimesSecurity & IntegrationSecurity & IntegrationSecurity & IntegrationManaged by vendorDatabasesDatabasesDatabasesYou manageServersServersServersManaged by vendorVirtualizationVirtualizationVirtualizationServer HWServer HWServer HWStorageStorageStorageNetworkingNetworkingNetworking
  • 16.
    Types of CloudsInfrastructureas a Service (IaaS)Your ApplicationDeploymentRuntimesWeb ServerUnit of DeploymentOS ServicesProvided byWindows AzureOperating SystemProvidedByAmazonEC2Virtualized InstanceHardware
  • 17.
    Types of CloudsPlatformas a Service (PaaS)Your ApplicationDeploymentUnit of DeploymentRuntimesCan swap outWeb ServerProvided byGoogleAppEngineOS ServicesProvided byWindows AzureOperating SystemVirtualized InstanceHardware
  • 18.
    Types of CloudsSoftwareas a Service (SaaS)Your ApplicationRuntimesWeb ServerProvidedbySaaSOS ServicesOperating SystemVirtualized InstanceHardware
  • 19.
    Control Versus Economyof ScaleControlHighLowEconomy of ScaleLowHigh
  • 20.
    This is NotNew …Build vs. BuyControlHighLowEconomy of ScaleLowHigh
  • 21.
    This is New…On Premises vs. In the CloudControlHighLowEconomy of ScaleLowHigh
  • 22.
    FundamentalsHow Microsoft Viewsthe CloudScale Out/InAutomated Service ManagementHigh AvailabilityMulti-TenancyConsiderationsLocationOn premisesOff premisesInfrastructureHeterogeneousHomogeneousOpExCapExBusiness modelLease/RentedOwnedOwnershipThird PartySelfManagement
  • 23.
    Sample Workloads forthe Cloud“On and Off”“Growing Fast“ InactivityPeriod Compute Compute Average UsageUsageAverageTime Time On & off workloads (e.g. batch job)
  • 24.
  • 25.
    Time to marketcan be cumbersome
  • 26.
  • 27.
    Keeping up w/growth is big IT challenge
  • 28.
    Complex lead timefor deployment“Unpredictable Bursting“ “Predictable Bursting“ Compute Compute Average Usage Average Usage Time Time Unexpected/unplanned peak in demand
  • 29.
  • 30.
    Can’t over provisionfor extreme cases
  • 31.
    Services with microseasonality trends
  • 32.
    Peaks due toperiodic increased demand
  • 33.
    IT complexity andwasted capacity ApplicationMarketplaceInformation MarketplacePersonal Data RepositoryApplication ServicesWorkflow HostingDistributed CacheServices HostingFrameworksClaims-Based IdentityFederated IdentitiesSecure Token ServiceDeclarative PoliciesSecurityRegistryOn-Premise BridgingService BusConnectivityTransact-SQLData SynchronizationRelational DatabaseADO.NET, ODBC, PHPDataComputeC / C++Win32VHDDynamic Tabular DataBlobsMessage QueuesDistributed File SystemContent DistributionStorageWindows Azure Platform
  • 34.
    Application Services“Dublin”“Velocity”Frameworks“Geneva”SecurityAccess ControlProject“Sydney”ConnectivityService BusSQL Azure Data SyncDataComputeWindows Azure PlatformTable StorageBlob StorageQueueDriveContent Delivery NetworkStorage
  • 35.
    Categories of ServicesApplicationServicesSoftware ServicesPlatform ServicesInfrastructure ServicesThe Microsoft Cloud
  • 36.
    The Microsoft Cloud~100Globally Distributed Data CentersQuincy, WAChicago, ILSan Antonio, TXDublin, IrelandGeneration 4 DCs
  • 37.
  • 38.
    The Microsoft CloudDataCenter Infrastructure
  • 39.
    Windows AzureCompute –instance types: Web Role & Worker Role. Windows Azure applications are built with web role instances, worker role instances, or a combination of both.Operating system as an online service; with automated provisioning and services managementDevelopment, service hosting, & management environment.NET, Java PHP, Python, Ruby, native code (C/C++, Win32, etc.)ASP.NET providers, FastCGI, memcached, MySQL, TomcatFull-trust – supports standard languages and APIsSecure certificate storeManagement API’s, and logging and diagnostics systemsMultiple roles – Web, Worker, Virtual Machine (VHD)Multiple VM sizes1.6 GHz CPU x64, 1.75GB RAM, 100Mbps network, 250GB volatile storageSmall (1X), Medium (2X), Large (4X), X-Large (8X)In-place rolling upgrades, organized by upgrade domainsWalk each upgrade domain one at a timeEach instance runs on its own VM (virtual machine), replicated as neededThe Fabric Controller communicates with every server within the Fabric. It manages Windows Azure, monitors every application, decides where new applications should run – optimizing hardware utilization.Guest VM 3Guest VM 2Guest VM 1Host VMMaintenance OSGuest VM 1Host VMHost VM
  • 40.
    SQL AzureHighly available,scalable, and consistent distributed relational database service; with geo-replication and geo-location of dataVM 5VM 6VM 4DBA role places more focus on policy/logical managementSQL ServerSQL ServerSQL ServerSQL DBSQL DBSQL DBShared infrastructure at SQL database and belowEach user database is replicated to one or more servers (configurable based on SLA)Client requests are routed to current “primary server” for read and write operations (based on SQL session)Security, lockdown and isolation enforced in SQL tierHighly scalable and state-of-the-art HA technologyAutomatic failure detection; client request re-routed to new primary on failure High SLA guarantee using logical replication (hot standby replicas)Automatic management, self-healing and load balancing across shared resource poolSecurity ModelUses regular SQL security modelAuthenticate logins, map to users and rolesAuthorize users and roles to SQL objectsSupports standard SQL loginsLogins are username + password stringsService enforces use of SSL to secure credentialsUpcoming support for AD Federation, WLID, etc.Connectivity ModelConnect using common client librariesADO.NET, OLE DB, ODBC, etc.Clients connect to a database directlyCannot hop across DBsUserDB1UserDB2UserDB3UserDB4UserDB1UserDB2UserDB3UserDB4UserDB1UserDB2UserDB3UserDB4SQL Azure database provisioning (databases, accounts, roles, …, metering, and billing)Scalability and Availability: fabric, failover, replication, and load balancing
  • 41.
    Windows Azure platformAppFabricInternet-scoped overlay-network bridging across IP NATs and firewalls with federated access controlService BusExpose RESTful or SOAP services over the internet through firewall and NAT boundariesCommunicate bi-directionally between apps and services in an interoperable mannerChoose relays, queues, routers, and other message patterns and typesScale out naturally and reliably as apps and services growAccess ControlIntegrate authorization into apps to control “what users are allowed to do”Federate with multiple identity systems across organizations and ID providersEasily apply fine-grained access control rulesSecure Service Bus communicationsScale out naturally and reliably as apps and services grow
  • 42.
    Sign up atthe Windows Azure Platform developers’ portalWindows Azure accessDeveloper tools White papersSample applicationsPlan pilot applications, proofs of concept, and architectural design sessions with Windows Azure partnershttp://www.azure.com
  • 43.
    Web Role andWorker RoleService InstanceService InstanceWorker RoleWeb Role.NET in Windows Azuredefault.aspxRoleEntry PointIISbind port(x)SQL Databasehttp://instance:xhttp://instance:yServiceBusAccess Controlhttp://app:80Fabric ControllerLoad BalancerTableStorageBlobStorageQueue
  • 44.
    Web Role andIIS/FastCGI with Native RuntimeService InstanceService InstanceWeb RolePHP in Windows Azurephp-cgiindex.phpFastCGIIISbind port(x)SQL Databasehttp://instance:xhttp://instance:yServiceBusAccess Controlhttp://app:80Fabric ControllerLoad BalancerTableStorageBlobStorageQueue
  • 45.
    Worker Role andSub-Process Invoking Native CodeService InstanceJava and Tomcat in Windows Azurelisten port(x)Service InstanceWorker RoleSub-ProcessTomcatserver.xmlCatalinaindex.jspnew Process()RoleEntry Pointbind port(x)getruntimeinfoSQL Database JVMhttp://instance:xhttp://instance:yServiceBusAccess Controlhttp://app:80Fabric ControllerLoad BalancerTableStorageBlobStorageQueue
  • 46.
    Deeper Dive intoArchitectures (Future)
  • 47.
    Thank youjohn.alioto@microsoft.comblogs.msdn.com/johnalioto© 2009Microsoft 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.

Editor's Notes

  • #16 Microsoft sees four fundamental requirements for any cloud computing offering. First it must have the ability to scale as customer demand requires. Second, it must provide automated service management, delivering more than just disk space and processors; it must have but the to seamlessly failover scale up scaled down and optimize management of the applications and services it hosts. Third must be highly available, with the highest level of reliability as well as redundancy and fail-over. Finally a must for multi-tenancy, concurrent hosting of multiple customers to optimize utilization and control costs.Beyond these fundamental requirements, there are also a number of considerations -- variables -- for cloud computing platforms. They may be located on premises (within IT data center) or remotely hosted by the provider and accessed over the Internet. The infrastructure they provide may support a single type of technology, or have the ability to host heterogeneous, interoperable technologies. The business model costs might be optimized for operating expenses or towards capital investment. The hardware and networking resources might be leased or owned. And the management of the IT systems might be self directed by the business or performed by a third party, perhaps cloud computing platform provider.
  • #25 From the customer’s perspective, SQL Azure provides logical databases for application data storage. In reality, each customer’s data is actually stored in multiple SQL Server databases, which are distributed across multiple physical servers. Many customers may share the same physical database, but the data is presented to the customer through a logical database that abstracts the physical storage architecture and uses automatic load balancing and connection routing to access the distributed data. Security and isolation is managed automatically.The key impact of this model for the customer is a move from managing physical servers to focus on logical management of data storage through policies.