This document provides an overview of how various Azure services can help address common needs and challenges for a company called Litware. It discusses how Litware can leverage Azure Identity and Access Control services to enable single sign-on for customers using different directories. It also describes how Litware can use the Service Bus to integrate with customers' on-premises applications in a secure manner. Additionally, the document outlines how Workflow services could help Litware and customers create custom extensions more easily. Finally, it mentions how SQL Data services could help with Litware's database integration needs for different types of data.
2. Goals and TakeawaysAn understanding of Cloud computingAn understanding of the Azure environmentUnderstanding the new architectureUnderstanding why and when this architecture applies
3. AgendaIntroducing Cloud computing 15 minsThe Windows Azure Platform 15 minsThe Azure Data Services 15 mins.NET Services 15 minsHow Cloud computing affects Architecture 15 minsQ & A 15 mins
4. AgendaCloud, utility computing – Nice new buzzwordsWhat do they mean?Why do we need this model?Is this the new way of doing things? What do I have to learn?
10. So what exactly is cloud computing?Offerings from Amazon, Google, Microsoft.Amazon Elastic computing (create your own machine with your choice of OS + APIs)Google Apps and APIHosting VMs in the cloudMicrosoft created a new offering…..
11. Anatomy of a Cloud offeringA machine Physical/Virtual hosted in a data center (Hardware)An Operating SystemA framework, APIs and a development environmentMight include end user Apps (web sites, office suites..etc)
12. Hosting locally vs. in the cloudHardware costs.Software costs.Administration costs.
13. Resource allocationMachines must be chosen to host roles of the serviceFault domains, update domains, resource utilization, hosting environment, etc.Procure additional hardware if necessaryIP addresses must be acquiredProvisioningMachines must be setupVirtual machines createdApplications configuredDNS setupLoad balancers must be programmedUpgradesLocate appropriate machinesUpdate the software/settings as necessaryOnly bring down a subset of the service at a timeMaintaining service healthSoftware faults must be handledHardware failures will occurLogging infrastructure is provided to diagnose issuesThis is ongoing work…you’re never doneDeploying A Service Manually
14. ConclusionData centers cost a lot of money.It’s cheaper to outsource these costs and headaches to someone who does this all the time.
16. Introducing the Azure PlatformWhat is it?Essentially a new architectureA Service offering, pay as you goAn OS, APIs + Operations management (The key differentiator IMHO)
21. Designed for high availability & scalabilityBase it on Internet StandardsMultiple protocol support including HTTP, REST, SOAP, Atom
22. Broad investment in open, community-based access to Azure servicesExtend Your Existing Investments Familiar tools, languages, and frameworks with .NET and Visual Studio
26. The Operations management perspectiveWhat is a fault domain?What percentage of my service can fail at one time?What happens if a switch fails?What is an update domain?How do I upgrade my service?What portions can we take down and upgrade without causing failure?
27. Allows you to specify what portion of your service can be offline at a timeFault domains are based on the topology of the data centerSwitch failureStatistical in natureUpdate domains are determined by what percentage of your service you will take out at a time for an upgradeYou may experience outages for both at the same timeSystem considers fault domains when allocating service rolesExample: Don’t put all roles in same rackSystem considers update domains when upgrading a serviceFault/Update DomainsFault domainsAllocation is across fault domains
28. Windows Azure Fabric ControllerVMControl VMVMVMWS08 HypervisorService RolesControl AgentOut-of-band communication – hardware controlWS08In-band communication – software controlLoad-balancersNode can be a VM or a physical machineSwitchesHighly-availableFabric Controller
29. Owns all the data center hardwareUses the inventory to host servicesSimilar to what a per machine operating system does with applicationsThe FC provisions the hardware as necessaryMaintains the health of the hardwareDeploys applications to free resourcesMaintains the health of those applicationsFabric Controller
30. Windows Azure AutomationFabric Controller“What” is neededFabric Controller (FC) Maps declarative service specifications to available resourcesManages service life cycle starting from bare metalMaintains system health and satisfies SLAWhat’s special about itModel-driven service management Enables utility-model shared fabricAutomates hardware managementMake it happenFabricSwitchesLoad-balancers
31. Windows Azure provisions and monitors hardware elementsCompute nodes, TOR/L2 switches, LBs, access routers, and node OOB control elementsHardware life cycle managementBurn-in tests, diagnostics, and repairFailed hardware taken out of poolApplication of automatic diagnosticsPhysical replacement of failed hardwareCapacity planningOn-going node and network utilization measurementsProven process for bringing new hardware capacity onlineBehind The Scenes Work
32. Modeling ServicesPublic InternetTemplate automatically maps to service modelBackground Process RoleFront-endWeb RoleLoad BalancerFundamental ServicesLoad Balancer ChannelEndpointInterfaceDirectory Resource
33. Windows Azure Service LifecycleGoal is to automate life cycle as much as possibleAutomatedAutomatedDeveloper/DeployerDeveloper
34. Purpose: Communicate settings to service rolesThere is no “registry” for servicesApplication configuration settingsDeclared by developerSet by deployerSystem configuration settingsPre-declared, same kinds for all rolesInstance ID, fault domain ID, update domain IDAssigned by the systemIn both cases, settings accessible at run timeVia call-backs when values changeDynamic Configuration Settings
35. Resource allocationNodes are chosen based on constraints encoded in the service modelFault domains, update domains, resource utilization, hosting environment, etc.VIPs/LBs are reserved for each external interface described in the modelProvisioningAllocated hardware is assigned a new goal stateFC drives hardware into goal stateUpgradesFC can upgrade a running serviceMaintaining service healthSoftware faults must be handledHardware failures will occurLogging infrastructure is provided to diagnose issuesLifecycle Of A Windows Azure Service
41. Identity and Access ControlLitware uses username/password todayEnd-users prefer a single-sign-on approachLitware wants to sell into companies that use a range of directories; AD, Tivoli, Sun, Oracle, … And Litware wants to support internet identitiesThe focus is on three Litware customersAdventure Works who customers have Live IDsContoso who has AD Federation Services and GenevaFabrikam who is a small business using ADOther customers use Tivoli, Oracle, …37
42. Adventure WorksAzure™ ServicesAccessControlMeshServiceBusWorkflowLiveIDSQLDataContosoSAPADLitwareCorySandy@hotmail.comGenevaMailASP.NETFabrikamHosted at RackspaceADLane@Litware.comServicesConnectorFrancis
44. User-Centric InteractionsLitware customer surveys show Customer don’t like filling in registration formsOften forget where the Litware site is locatedWant to read or view training materials offlineOn the planeRemote locations with low-bandwidth connectionsWould like to be notified when they need to complete trainingDevelopers can take advantage of Identity and the Mesh to address these and other concerns40
48. Application IntegrationLitware customers need integration with on-premises assets such as HR applicationsLitware does not know ahead of time what the applications are, or how many of them existIntegration must be secure and meet stringent customer security requirementsLitware decides to use the Service Bus for application integration44
51. Enhancing Application IntegrationLitware wants an easy-to-use mechanism for custom application extensionsIdeally even non-developers could create high-availability, high-scale extensionsIdeally customers could use these toolsShould be able to easily integrate with existing and cross organization processesLitware decides to use workflow when Contoso wants a custom feature for track low scores…47
54. Database IntegrationLitware application stores, queries and manages a broad range of dataStructured, Semi-structured and UnstructuredSemi-structured and unstructured covered previouslyEmerging Litware needsData shared with partners across different devicesCustom reportsBusiness analytics including ad-hoc analysis through ExcelData miningLitware leverages SQL Data Services in order to fulfill this broad set of data requirements50
55. Call to ActionRegister for a .NET Services account & download the SDKhttp://www.azure.comAttend tomorrows' .NET Services session
Editor's Notes
Here is where I explain where the cloud came from, where did we get this terminology? What does it represent?What is the network that anyone can connect to anywhere?What is the network that can be used by the most number of devices?
Explain mesh
Switch failure = all servers loosing connectivity
Litware
Litware uses username/password todayEnd-users prefer a single-sign-on approachLitware wants to sell into companies that use a range of directories; AD, Tivoli, Sun, Oracle, … And Litware wants to support internet identitiesThe focus is on three Litware customersAdventure Works who customers have Live IDsContoso who has AD Federation Services and GenevaFabrikam who is a small business using ADOther customers use Tivoli, Oracle, …
Mesh is a data synchronization service, used to synchronize files, used when users want to work with data offline.