Page 1 Ricardo Villalobos Windows Azure Architect Evangelist Microsoft Corporation Designing, Building, and Deploying Windows Azure applications
Agenda Quick Introduction to Windows Azure Designing Windows Azure Applications Building Windows Azure Applications Deploying Windows Azure Applications Q&A
Quick Introduction to Windows Azure
Windows ® Azure™ Platform On-demand, scalable, multi-tenant, self-service compute resources
Windows ® Azure™ Platform TIME IT CAPACITY Allocated IT resources Oversupply Undersupply Load forecast Initial investment Oversupply Actual load
Windows ® Azure™ Platform TIME IT CAPACITY Allocated IT resourcesActual load Lower initial investment Less oversupply Load forecast Less oversupply No undersupply
Windows ® Azure™ Platform Software-as-a-Service “SaaS” Platform-as-a-Service “PaaS” Infrastructure-as-a-Service “IaaS”
Windows ® Azure™ Platform The Windows Azure platform fits here Traditional ITStorageStorageServersServersNetworkingNetworkingO/SO/S Security, Clustering VirtualizationVirtualizationDataDataApplicationsApplicationsRuntimeRuntime You manage IaaS Storage Servers Networking O/SO/S Security, Clustering Virtualization DataDataApplicationsApplicationsRuntimeRuntime Managed by vendor You manage PaaS Managed by vendor Storage Servers Networking O/S Security, Clustering Virtualization ApplicationsApplications Runtime DataData SaaS Managed by vendor Storage Servers Networking O/S Security, Clustering Virtualization Applications Runtime Data
Windows ® Azure™ Platform S. Central – U.S.S. Central – U.S. W. EuropeW. Europe N. Central – U.S.N. Central – U.S. N. EuropeN. Europe S.E. AsiaS.E. Asia E. AsiaE. Asia 6 datacenters across 3 continents6 datacenters across 3 continents Simply select your data center of choice when deploying an application
Windows ® Azure™ Platform ComputeStorageManagement Relational data ConnectivityAccess control CDN Data Sync
Windows ® Azure™ Platform ROLE OPTIONS The role is the VM. Suitable for: Long running application installations. Application installations requiring manual interaction. You configure and maintain the OS.
Windows ® Azure™ Platform
SendReceive SERVICE BUSReceiveSend
Windows ® Azure™ Platform Data and Applications Applications or Users Provide abstraction for federated claims-based authentication. Easily establish secure trust relationship. Simplify and automate complex authorization schema requests.
Windows ® Azure™ Platform Usage Compute Time Average Inactivity Period Compute Time Average Usage Compute Time Compute Time Average Usage
Windows ® Azure™ Platform Designing Windows Azure Applications
Windows ® Azure™ Platform
Presentation Layer Service Layer Business Layer Data Layer Storage DTO ORM Domain Objects
Windows ® Azure™ Platform UI Middle Tier (Business Layer, Data Layer) Storage Commands Queue ORM Events Queue Model Translation Caching Queries Other subscribers
Windows ® Azure™ Platform
Building Windows Azure Applications
Windows ® Azure™ Platform Windows Azure Platform Development Prerequisites for.Net apps Windows Azure Tools for Microsoft Visual Studio (Version 1.4) Follow instructions on Microsoft downloads page -Microsoft Windows 7, Windows Server 2008, Windows Server 2008 R2. -Microsoft Visual Studio Professional 2010 (or above) or Express. -Enable IIS7 with ASP.NET and WCF HTTP activation. -Windows Azure SDK 1.4 (March 2011 edition) -Recommended: Windows Azure AppFabric SDK v1.0
Page 25 DEMO
Windows ® Azure™ Platform What Azure provided Demo RecapDemo Recap What you saw…
Windows ® Azure™ Platform Web Role Worker Role Storage Queue LBLB LBLB LBLB LBLB Worker Role Web Role Worker Role Blob Container Table
Windows ® Azure™ Platform 1.User uploads large image file 2.Image inserted into blog storage 3.Message placed on queue including BLOB URI and metadata 4.Worker role is polling queue. Reads message from queue 5.Worker role processes message, reads from BLOB storage, generates thumbnail 6.Thumbnail and metadata stored in Table storage 7.Message deleted from queue
Windows ® Azure™ Platform Deployment optionsDeployment options Create and deploy Azure Package manually. Deploy from Visual Studio using Certificates. Command Line and PowerShell. Built using the Service Management API.
Windows ® Azure™ Platform Monitoring / Debugging OptionsMonitoring / Debugging Options Enable Remote Desktop. Enable Intellitrace (only for.Net 4.0 Azure apps and VS2010 Ultimate). Enable / Use Windows Azure Diagnostics.
Windows ® Azure™ Platform COMPUTE STORAGE WEB EDITION BUSINESS EDITION
Windows ® Azure™ Platform
>99.9% Windows Azure Compute instance monitoring >99.9% >99.95% Windows Azure Compute connectivity >99.9% All running instances will be continuously monitored If instance is not running, we will detect and initiate corrective action Database is connected to the internet gateway All databases will be continuously monitored Your service is connected and reachable via the internet Internet-facing roles will have external connectivity Storage service will be available/ reachable (connectivity) Your storage requests will be processed successfully Windows Azure Storage availability SQL Azure Database availability Service Bus and Access Control availability Service bus and access control endpoints will have external connectivity Message operation requests processed successfully
Windows ® Azure™ Platform