• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Global Windows Azure Bootcamp - San Diego
 

Global Windows Azure Bootcamp - San Diego

on

  • 674 views

 

Statistics

Views

Total Views
674
Views on SlideShare
663
Embed Views
11

Actions

Likes
1
Downloads
0
Comments
0

2 Embeds 11

http://snapboardalpha.cloudapp.net 7
https://twitter.com 4

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Slide Objectives:Explain how Microsoft thinks of the cloudSpeaker Notes:There are numerous terms and definitions floating around in the industry for “the cloud”, “cloud computing”, “cloud services”, etc.Microsoft thinks of the cloud as simply an approach to computing that enables applications to be delivered at scale for a variety of workloads and client devices.The cloud can help deliver IT as a standardized service…freeing you up to focus on your business
  • Slide Objectives:Explain the three established terms in the industry for cloud servicesSpeaker Notes:There is a lot of talk in the industry about different terms like Platform as a Service, Infrastructure as a Service, and Software as a Service.Since PDC08 when we first announced the Windows Azure our focus has been on delivering a platform as a service offering where you can build applications. Where the platform abstracts you from the complexities of building and running applications. We fundamentally believe that the future path forward for development is by providing a platform. In fact, as you’ll see in a few minutes, we believe that there are a number of new capabilities that should be delivered as services to the platform.Notes:There is a lot of confusion in the industry when it comes to the cloud. It’s important that you understand both what is happening in the industry and how we think about the cloud. This is the most commonly used taxonomy for differentiating between types of cloud services.The industry has defined three categories of services:IaaS – a set of infrastructure level capabilities such as an operating system, network connectivity, etc. that are delivered as pay for use services and can be used to host applications. PaaS – higher level sets of functionality that are delivered as consumable services for developers who are building applications. PaaS is about abstracting developers from the underlying infrastructure to enable applications to quickly be composed. SaaS – applications that are delivered using a service delivery model where organizations can simply consume and use the application. Typically an organization would pay for the use of the application or the application could be monetized through ad revenue. It is important to note that these 3 types of services may exist independently of one another or combined with one another. SaaS offerings needn’t be developed upon PaaS offerings although solutions built on PaaS offerings are often delivered as SaaS. PaaS offerings also needn’t expose IaaS and there’s more to PaaS than just running platforms on IaaS.
  • Slide Objectives:Explain the differences and relationship between IaaS, PaaS, and SaaS in more detail.Speaker Notes:Here’s another way to look at the cloud services taxonomy and how this taxonomy maps to the components in an IT infrastructure. Packaged SoftwareWith packaged software a customer would be responsible for managing the entire stack – ranging from the network connectivity to the applications. IaaSWith Infrastructure as a Service, the lower levels of the stack are managed by a vendor. Some of these components can be provided by traditional hosters – in fact most of them have moved to having a virtualized offering. Very few actually provide an OSThe customer is still responsible for managing the OS through the Applications. For the developer, an obvious benefit with IaaS is that it frees the developer from many concerns when provisioning physical or virtual machines. This was one of the earliest and primary use cases for Amazon Web Services Elastic Cloud Compute (EC2). Developers were able to readily provision virtual machines (AMIs) on EC2, develop and test solutions and, often, run the results ‘in production’. The only requirement was a credit card to pay for the services.PaaSWith Platform as a Service, everything from the network connectivity through the runtime is provided and managed by the platform vendor. The Windows Azure best fits in this category today. In fact because we don’t provide access to the underlying virtualization or operating system today, we’re often referred to as not providing IaaS.PaaS offerings further reduce the developer burden by additionally supporting the platform runtime and related application services. With PaaS, the developer can, almost immediately, begin creating the business logic for an application. Potentially, the increases in productivity are considerable and, because the hardware and operational aspects of the cloud platform are also managed by the cloud platform provider, applications can quickly be taken from an idea to reality very quickly.SaaSFinally, with SaaS, a vendor provides the application and abstracts you from all of the underlying components.
  • Speaker Notes:As of this month,Windows Azure is now available in over 89 countries and territories.Anyone within these countries can sign up for a free trial or a paid subscription to use Windows Azure servicesOf course you can build and deliver solutions to any of your customers worldwide.
  • Slide Objectives:Explain the differences between traditional self-hosting and the three options of Windows Azure hosting.Notes:In a traditional environment you must manage the full stack. With Windows Azure you can choose a variety of options depending on your needs.
  • Slide Objectives:Explain that there are different VM instance sizes available within Windows AzureSpeaking Points:---Speaking Points:One of the key areas of feedback has been to reduce the cost and size of Windows Azure instances. At PDC we will announce..Notes:(*) 20GB with a limitation on VHD size if they are deploying VMRole on XSmall: the VHD can only be up to 15GB.each tenant can support 20 instances just like regular subscriptions with Small VM. We do not scale based on core counts.There is no SLA on the network bandwidth for each VM size as this resource is shared among all the VM. That said, we need to provide guidance for customer so they could design their applications correctly. From the engineering side, this is what we mean by Low, Moderate and High. • Low currently means 0-15Mbps with short burst up to 25-50Mbps (Megabit/s). These are sufficient for some web sites with low traffic. • Moderate means 0-100Mbps with short burst up to 200Mbps (100Mbps is the norm). This is what we currently reserve for the Small VM.• High means 200-800 Mbps. If you divide this into 3 spectrums for Medium, Large and XL. Then Medium is in the low end, Large hovers around the middle zone and of course XL takes the high-end spot.These rates should be used as guidance. Nothing can beat a test run to see what the application requires but using these bandwidth ranges, hopefully it reduces the guess work for the customers
  • Slide Objectives:Explain the three scale choices on Windows Azure Web Sites.Notes:Both free and shared are the same architecture. The only difference is that free has quotas where as with shared you can use and pay for as much resources as you choose. With reserved you isolate your application to your own virtual machines that you can use and pay for whatever resources you choose.
  • Slide Objectives:Explain that Windows Azure Web Sites supports Classic ASP, ASP.NET, PHP, and Node.js out of the box and that you can also host any custom FastCGI handler.Notes:
  • Slide Objectives:Explain how Windows Azure Web Sites is part of a large ecosystem of partners that allow developers to build rich and connected applications.Notes:
  • Slide Objectives:Explain how developers have a choice in publishing methods to Windows Azure Web Sites and that regardless of which method they choose publishing is fast and easy. You can even publish from a non-Windows machine using FTP or Git.Notes:
  • Note: VM is separated out as IaaS offering.
  • Slide Objective:Show images available at preview
  • Slide Objective:Explain workflow for provisioning VMs in the cloud Notes:Cloud First Provisioning means exactly what is says. Building a VM in the cloud first. You have three methods of starting this process: Build a VM from the portal, from the command line OR programmatically calling the REST API. Once your choice of provisioning is made you will need to select the image and instance size to start from. The newly created disk will be stored in blob storage and your machine will boot.
  • Slide Objective:Explain workflow for bringing your own VHDNotes:This use case is when you already have a “golden image(s)” your company uses for server provisioning or you have a VM running on premises that you would just like to run in our data center. You take the vhd – use CSUpload or System Center App Controller to upload as a page blob to a storage account. From there use the portal to add as an image (sysprepped) or disk (configured VM) and there you can create a VM based off of the vhd.
  • Motivation behind the discussion was that customer didn’t have strong dev ops and needed familiar experience to maintainAfter the comparison, my concerns were:Installing custom software to environmentFuture scalabilityAccessibility of diagnostics and performance countersThere are other considerations, but these were the items pertaining to this particular customer
  • Example of iis setup controlsList of networking features
  • Can have a dedicated IP today? On web site?
  • Slide Objectives:Define the Windows Azure storage and the great benefits this service providesSpeaking Points:The Windows Azure storage services provide storage for binary and text data, messages, and structured data in Windows AzureScalable DurableAvailableCostRESTGeo-redundant storage provides the highest level of storage durability by seamlessly replicating your data to a secondary location within the same regionLocally redundant storage provides highly durable and available storage within a single location. Microsoft monitors the service, provides patches, handles scaling, and does the other work needed to keep the service available.Notes:
  • Slide ObjectivesUnderstand each of the storage types at a high levelSpeaker NotesThe Windows Azure storage services provide storage for binary and text data, messages, and structured data in Windows Azure. The storage services include:The Blob service, for storing binary and text dataThe Queue service, for storing messages that may be accessed by a clientThe Table service, for structured storage for non-relational dataWindows Azure drives, for mounting an NTFS volume accessible to code running in your Windows Azure serviceProgrammatic access to the Blob, Queue, and Table services is available via the Windows Azure Managed Library and the Windows Azure storage services REST APINoteshttp://blogs.msdn.com/b/windowsazurestorage/archive/2010/03/28/windows-azure-storage-resources.aspx
  • http://blogs.msdn.com/b/windowsazurestorage/archive/2011/02/18/windows-azure-blob-md5-overview.aspx
  • Slide Objectives:Explain main differences between Relay and BrokerSpeaking Points:Main difference between Relay messaging and Broker messagingRelay messaging goes through direct, TPC-like connectionBroker manipulate messages (such as stamping) while relay is pass-throughBroker has storage, allowing loose-coupling between the sender and the receiver
  • Slide Objectives:Explain differences between Push and PullTransition:This is a continuation of Relay vs. Broker discussion
  • Slide Objectives:This slide and the next slide list some of integration patterns enabled by queues – load leveling, offline/batch, load balancing (competing consumers)
  • Slide Objectives:This slide introduces some integration patterns enabled by topics and subscriptions
  • Slide Objectives:Understand the overall concepts and benefits of SQL DatabaseTransition:Let’s clear up any confusion and look at the basics of what SQL Database really is and some of its benefits. Speaking Points:The same great SQL Server database technology that you know, love, and use on-premises provided as a serviceEnterprise-readyAutomatic support for High-AvailabilityDesigned to scale on-demand to provide the same great elasticityNotes:High-availability – 3 copies of the database free for the cost of the one database. Always in sync. The cost to do this on-premises isn’t cheap. This is FREE in SQL Database.Scalability using SQL Federation (discussed later in the presentation).
  • Slide Objectives:Show the different methods of provisioning a SQL Database server along with how easy it is. Plus, help the attendees understand what a SQL Database “server” really is.Transition:Provisioning an on-premises SQL Server box can be time consuming, costly, and at times, a challenge. With SQL Database, provisioning a “server” is painless, quick, and provisioned in a matter of seconds. Speaking Points:Provision servers interactively using the Management PortalAutomate server provisioning using the Windows Azure Management API or PowerShell.Notes:While the “server” is technically a TDS endpoint, much of the SQL Server process is similar. Administration login credentials are still needed for security, and more importantly defining service access is essential, and required, for maintaining the integrity of your server through firewall rules.
  • Slide Objectives:Point out that 1) The same great technologies that developers use today on-premises works with SQL Database 2) high-level differences between on-premises and SQL Database 3) SQL Database features currently unsupportedTransition:Creating, managing, and deploying a database in Windows Azure SQL Database isn’t difficult. The key is understanding the features that are supported and how SQL Database compares to on-premises SQL Server and the technologies that can be used with SQL Database.Speaking Points:The same great technologies that developers use today on-premises works with SQL Database, including developer languages, Frameworks, and Tools. Nothing new to learn!SQL Server Comparison -> highlight the physical vs. logical administration. Developers and DBAs can now focus on things they love to do and not worry about the physical aspect.Features unsupported by SQL Database -> Many of the unsupported features are hardware based and thus don’t need to be in SQL Database. Other features, such as encryption, are server-based and become a challenge in solving in a shared-environment.Notes:CLR data types ARE supported, SQLCLR is not yet supported. Backup/Restore: PIT Coming; Import/Export can be used for backup to BLOB storage. Third-party backup products available via RedGate and Enzo.Data can be stored encrypted but the encryption must be done at the application level. Native encryption is being looked at.**Linked Servers and Distributed Queries are now supported, linking a SQL Database instance from an on-premises server. Linking two SQL Database instances is NOT supported.
  • Slide Objectives:Highlight the set of tools for developers when interacting with Windows Azure SQL Database.Transition:Transition statement(s) to setup the slideSpeaking Points:SQL Database Management Portal -> Cross Browser, Unified Management ExperienceSQL Server Data Tools -> Integrated Database Design Environment, Table Designer, Debugging, T-SQL EditorNotes:IntelliSense in T-SQL EditorSQL Server Data ToolsStrive to make it consistent as possibleIntersection with the cloudBridging you to the new cloud worldConsistency to the new developer experienceConsistency with the new cloud model
  • Slide Objectives:Discuss the deployment options for migrating your on-premises database to SQL Database.Transition:There are many ways to migrate your on-premises SQL Server database to Windows Azure SQL Database, but there have been great enhancements and improvements in both DAC and SSDT to dramatically improve and simplify deployment and migration options.Speaking Points:DAC Framework – A new unit of deployment called a bacpac which contains both schema AND data. SQL Server Data Tools – Easily determine “Azure read” status. Provide single Publish capability. Notes:Both DAC and SSDT provide instant feedback as to the “azure-ready” status of your on-premises database. SSDT provides a single publish from source to destination, but DAC creates a deployment unit which can be stored in Azure storage or on-premises and used to create multiple SQL Database instances.
  • Notes:The ACS would deserve multiple sessions on its own right to be properly covered, here I'm just giving you a quick sampler.What we have seen so far is just a small part of its surface. The schema here shows the ws-federation subsystem, what is normally used for browser-based, session-oriented application types. We've been playing only with ADFS IP types, but in fact there are many out of the box popular IPs you can use right away with your application sticking to the same protocol and a browser.ACS can also do WS-Trust, a high-security protocol for SOAP web services, accepting identities from ADFS2 ws-trust endpoints or bare credentials registered in ACS for management purposes. the same sources can be used within OAuth2.0 calls. OAuth is the current state of the art for securing REST calls: it is still in draft state, hence expect changes, but you can already experiment with it. Both protocols can be used for rich client application types and in general server 2 server interactions.Not shown here there are the management endpoints, the other portion of ACS' development surface, which can be used instead or alongside the portal for managing the namespace.
  • Notes:let's take a look at another usage scenario for ACS.Let's say that you want to make your application available to users from major social and web IPs . All those providers use different authentication protocols. Technically you could extend WIF to support those protocols directly, but you'd be writing a lot of low level code which changes very often (at least as of today's maturity level in the web authentication standards status).Once again, using an FP can be of help here. You don't need to change your application, the FP can take care of engaging with every IP using the appropriate protocol and still communicate with your application using the same protocol and token format used so far; we call this pattern protocol transition. Note that this pattern can even allow you to mix and match business and web IPs regardless of their different capabilities. Let's see how one basic flow would unfold. The user approaches the application a usual and as usual gets redirected to the FP . The HDR page will reflect the available options. Let's assume that the user picks Facebook . The system will redirect the user accordingly, and the authentication will take place using whatever protocol Facebook decides. Once the user successfully authenticates the flow will get back to ACS, which will transform the token in the usual format. The token will then be sent to the application, which will process it as usual none the wiser of the fact that it came from a different protocol (remember that the app can always discover the original source of the token if it so chooses, it just does not have implementation requirements imposed because of it).Note that web and social providers do not always provide the same claims richness you can expect from business IPs; also, the sheer ability of signing in Facebook does not prove much from the business standpoint. For that reason, tokens obtained from web and social providers are often sued as part of a sign-up process in which a given identifier is stored and then used for authenticating registered users. In the same way, applications can gather information about the user and then associate those back to the claims collection whenever the user starts a session. There are two natural places in the architecture to implement those checks and enrichments . You would perform those in ACS< in form of rules, whenever those modifications should be available to a portfolio of multiple applications. You would instead leverage the WIF pipeline extensibility when the context enrichment is specific to one single application.In order to demonstrate that I will now show you part of a more realistic demo , which demonstrates how a SaaS application can leverage ACS for signing up users coming from social providers and maintain local custom profiles. The entire process is implemented leveraging the ACS management APIs.
  • Define Network for Azure VMs Internal DNS for enabling communication between VMs by host name instead of IPDHCP address ranges for VMsSite-to-Site VPN- connect Azure VM's with on-premise devices Across industry standard IPSEC protocol Enables hybrid cloud scenariosRequires VPN device on premises
  • Hey, Zoiner our website is running a little slow during our press coverage, can you take a look?- Take's a look at traffic in Azure dashboard, whoa! Huge spikes in CPU, Network and memory utilization-> our systems are overwhelmed!- Scotty from Star Trek, "but I've given her all she's got captain!" … give her more! - Demo scaling out using the Scale tab's slider in the Preview portal- Demo scaling up by altering service definition and re-deploying with VSHey Z, our PR blitz is over, why are we still paying for all those resources?- Now its the burden of stepping back down, scaling in the compute resources and scaling down the number of instances.- The challenge is:-- Stepping down is not all or nothing, it's a phased approach- you don't want to step down too quickly or you risk being under deployed.-- For that matter, stepping back up is probably not something you want to do in too large steps because you don't want to over deploy by a huge margin. -- You don't want to be on alert to react manually like this all the time, you need some form of automation.Add some WASABi, and spice up your elastic scale with automation! 
  • Hey, Zoiner our website is running a little slow during our press coverage, can you take a look?- Take's a look at traffic in Azure dashboard, whoa! Huge spikes in CPU, Network and memory utilization-> our systems are overwhelmed!- Scotty from Star Trek, "but I've given her all she's got captain!" … give her more! - Demo scaling out using the Scale tab's slider in the Preview portal- Demo scaling up by altering service definition and re-deploying with VSHey Z, our PR blitz is over, why are we still paying for all those resources?- Now its the burden of stepping back down, scaling in the compute resources and scaling down the number of instances.- The challenge is:-- Stepping down is not all or nothing, it's a phased approach- you don't want to step down too quickly or you risk being under deployed.-- For that matter, stepping back up is probably not something you want to do in too large steps because you don't want to over deploy by a huge margin. -- You don't want to be on alert to react manually like this all the time, you need some form of automation.Add some WASABi, and spice up your elastic scale with automation! 
  • Hey, Zoiner our website is running a little slow during our press coverage, can you take a look?- Take's a look at traffic in Azure dashboard, whoa! Huge spikes in CPU, Network and memory utilization-> our systems are overwhelmed!- Scotty from Star Trek, "but I've given her all she's got captain!" … give her more! - Demo scaling out using the Scale tab's slider in the Preview portal- Demo scaling up by altering service definition and re-deploying with VSHey Z, our PR blitz is over, why are we still paying for all those resources?- Now its the burden of stepping back down, scaling in the compute resources and scaling down the number of instances.- The challenge is:-- Stepping down is not all or nothing, it's a phased approach- you don't want to step down too quickly or you risk being under deployed.-- For that matter, stepping back up is probably not something you want to do in too large steps because you don't want to over deploy by a huge margin. -- You don't want to be on alert to react manually like this all the time, you need some form of automation.Add some WASABi, and spice up your elastic scale with automation! 
  • WASABi is the hip code name for the Autoscaling Application Block that is part of the Enterprise Library Windows Azure Integration PackAvailable for free from codeplex
  • Slide Objectives:Provide broad overview of WA Mobile Services featuresSpeaking Points:WAMSBuild a cloud backend in minutes with no hassles, no deployments, no fearSupports Windows 8 client SDK, Windows Phone 8 SDK, iOS SDK Android coming soonDataStructured Storage with SQL DatabaseAutomatic service api generated for storageRich querying capabilityServer LogicAutomatic CRUD service api generatedAbility to author server logic that intercepts CRUD operation pipelineAuthAuthenticate against Windows LiveTable level authorization with no code More granular control with server side scriptsNotificationsIntegrates with WNS to provide Toast, Tile, Badge and Raw notificationsClean object model to compose notificationsSchedulerScheduler allows you to run Scripts to perform tasks at a scheduled basis minutes, hrly, daily, monthly or on demand.Example – aggregate News RSS feeds and send a tile update every 15 minutes Logging and Diagnostics for monitoringScale out and Scale up
  • Slide Objectives:Outline the Key Scenarios Mobile Services can be used for
  • Slide Objectives:Detail the push notification lifecycle to give context for the demo coming upWNS is freeSpeaking Points:Show the start screen and talk about how push notifications can be used to lightup the start screenGreen components are those FREE services Microsoft providesBlue components are those components that the application developer must write.Step 1 – using the WinRT API request a channel. A channel uniquely identifies an app and its tile.Step 2 – channel is then registered and stored in your Mobile serviceStep 3 – When your application specific logic determines that it is time to send a notification you can retrieve the channel and compose a notification to be sent. This is a two step process that first requires your service to auth against WNS and then compose and send a notification. Mobile Services makes this step incredibly easy.Step 3 - part 2 – WNS will take care of delivering the notification and the Notification client platform will deal with surfacing that notification for you and rendering the tile/toast/badge etc
  • Slide Objectives:Detail Auth optionsSpeaking Points:Support for additional auth providers such as Facebook are coming soonWindows Azure Mobile Services enables you to set the following permissions on table operations: Everyone: This means that any request for the operation against the table is accepted. This option leaves your data wide-open for everyone to access. Anybody with the Application Key: Only the correct application key is required to perform the operation. The application key is distributed with the application. Because this key is not securely distributed, it cannot be considered a security token. To secure access to you mobile service data, you must implement authentication. Only Authenticated Users: Only authenticated users are permitted to perform the operation. In this preview release, clients are authenticated by Live Connect services. Scripts can be used to further restrict access to tables based on an authenticated user. Only Scripts and Admins: The operation requires the service master key, which limits the operation only to registered scripts or to administrator accounts. The user parameter is available in all server side scripts methods and can be used to add more granular auth polices on you CRUD operationsNotes:
  • Slide Objectives:Detail Auth optionsSpeaking Points:Support for additional auth providers such as Facebook are coming soonWindows Azure Mobile Services enables you to set the following permissions on table operations: Everyone: This means that any request for the operation against the table is accepted. This option leaves your data wide-open for everyone to access. Anybody with the Application Key: Only the correct application key is required to perform the operation. The application key is distributed with the application. Because this key is not securely distributed, it cannot be considered a security token. To secure access to you mobile service data, you must implement authentication. Only Authenticated Users: Only authenticated users are permitted to perform the operation. In this preview release, clients are authenticated by Live Connect services. Scripts can be used to further restrict access to tables based on an authenticated user. Only Scripts and Admins: The operation requires the service master key, which limits the operation only to registered scripts or to administrator accounts. The user parameter is available in all server side scripts methods and can be used to add more granular auth polices on you CRUD operationsNotes:

Global Windows Azure Bootcamp - San Diego Global Windows Azure Bootcamp - San Diego Presentation Transcript

  • #GlobalWindowsAzure
  • #GlobalWindowsAzureSession Agenda• Spectacular rendering lab• Azure overview• Cloud services, web sites and VMs• Storage tables, blobs and queues• Service bus relay and message broker• SQL Azure• Security and Identity• Networking and elastic scale
  • #GlobalWindowsAzureJoint Demo: rendering lab• Download the package• Log in to your Windows Azure account• Create a cloud service and upload the package• Start the instance• We need a volunteer for a short video!
  • #GlobalWindowsAzureSession Agenda• Spectacular rendering lab• Azure overview• Cloud services, web sites and VMs• Storage tables, blobs and queues• Service bus relay and message broker• SQL Azure• Security and Identity• Networking and elastic scale
  • #GlobalWindowsAzure
  • #GlobalWindowsAzureCloudComputingPatterns
  • #GlobalWindowsAzureCloud Computing
  • #GlobalWindowsAzureCloud Computing
  • #GlobalWindowsAzureWindows Azure PlatformServiceAD FS 2On Premise DomainServicesCacheAccessControlSQL AzureAzureStorageWeb Role Worker RoleWindows AzureVM RoleDataSyncReportingTrafficManagerConnectVirtual Network
  • #GlobalWindowsAzure
  • #GlobalWindowsAzureSession Agenda• Spectacular rendering lab• Azure overview• Cloud services, web sites and VMs• Storage tables, blobs and queues• Service bus relay and message broker• SQL Azure• Security and Identity• Networking and elastic scale
  • #GlobalWindowsAzure
  • #GlobalWindowsAzure
  • #GlobalWindowsAzureWindows Azure
  • #GlobalWindowsAzure
  • #GlobalWindowsAzurescaleMulti-tenant. Daily quotasMulti-tenant. No quotasDedicated VMs. No quotas
  • #GlobalWindowsAzureSupported Web Frameworks
  • #GlobalWindowsAzure
  • #GlobalWindowsAzureSupported Publishing Methods
  • #GlobalWindowsAzure
  • #GlobalWindowsAzureWhat is a Cloud Service?
  • #GlobalWindowsAzurePackaging & Deployment
  • #GlobalWindowsAzureVIP Swap Upgrade
  • #GlobalWindowsAzureVIP Swap
  • #GlobalWindowsAzureIn-Place Upgrade
  • #GlobalWindowsAzureIn-Place Upgrade
  • #GlobalWindowsAzure
  • #GlobalWindowsAzureImages Available at Preview
  • #GlobalWindowsAzureCloud First Provisioning>_
  • #GlobalWindowsAzureBring Your Own Server/VHD
  • #GlobalWindowsAzureLAB: Cloud Services & Web Sites• Building and Publishing ASP.NET Applications with WindowsAzure Web Sites and Visual Studio 2012• Deploying Cloud Services in Windows Azure (NOTE: just parts1-3 during event)
  • #GlobalWindowsAzureDemo: Rapid Web Sites
  • #GlobalWindowsAzureEnterprise web applications require CloudServicesBut, Web Sites have comparable features.I’ll draw up a feature comparison for us.Customized VM setupMSI dependenciesCustom software will go behind service tier /Cloud ServiceWeb sites only supportNuget packagesBASIS OF DISCUSSIONCustomer will do better with familiar development and dev ops process.What about long term scalability?Will THIS customer really need to go > 10instances at the web tier?Web sites are limited to 10 instances today.What about performance counters?Do they really need custom performancecounters?Web sites are limited to built-in counters.Crap!✔✔✔We need WIF for SSOWeb Site can use .NET 4.5(WIF features built-in)Crap!Hmmm. What about SSL? Available at GA, before release of web site✔Not currently supported in Preview✔Isn’t it better to do cloud services for allprojects, no mixed solutions?Customer is more comfortable with single fileupdates✔
  • #GlobalWindowsAzureThe Obvious:Typical scenarios for each• Sites that require VM setup,MSI installers, IIS setup,registry settings, etc.• Sites that require networking,remote desktop services, etc.• Site that require potentiallyunlimited scale• Sites that can benefit fromdistributed cache• Sites based on built-in Azuretemplates such as blogs,wikis, and CMS sites• A corporate Web Site withoutmultiple tiers• Existing web applications thatwould require changes to hostin cloud servicesCloud Services Web Sites
  • #GlobalWindowsAzureThe “Wash” Items:Supported on both sides• Dedicated IP (swap/upgrade)• SSL• Scale out (roles)• VM size/sharing/cost• Dedicated IP (GA)• SSL (GA)• Scale out (regions)• VM size/sharing/cost (+free)Cloud Services Web Sites
  • #GlobalWindowsAzureNice To Have:Process vs. Productivity• Proprietary deployment• CS package, TFS• Development changes• Site paths, configuration, etc.• Redeploy entire package• ~7 minutes• Familiar deployment• GIT, FTP, TFS• Familiar developmentexperience• Fast deployment (single file)• Immediately reflectedCloud Services Web Sites
  • #GlobalWindowsAzureIT Pro Centric:Everyone needs process…• Package deployment• VS, TFS, other automation• Deploy entire site (test local)• Automate or control OSupdates, patches• Rollback with SWAP feature• Only one previous• Auto scale (WASABI worker,plus other vendors)• Traditional deployment• Web deploy, FTP, GIT, TFS• Single file option (live update)• Automatic OS updates,patches, no control• Rollback with GIT or TFS• Deployment history• Auto scale (WASABI worker)Cloud Services Web Sites
  • #GlobalWindowsAzureWeb Sites or Cloud Services?Key DifferencesWeb Sites (RESERVED)• Many simple scenarios out ofthe box or made VERY easy• Simple setup of MySQLdatabase• A lot of stuff cloud servicescan do PLUS…• Familiar development anddeployment model• Single file updatesCloud Services• VM & IIS customizations• Virtual networking, RDP• Distributed cache• Windows services equivalent• Certificate store• Multiple tiers (internal ep)• Control over VM scale outSIMPLICITY CONTROL
  • #GlobalWindowsAzureSession Agenda• Spectacular rendering lab• Azure overview• Cloud services, web sites and VMs• Storage tables, blobs and queues• Service bus relay and message broker• SQL Azure• Security and Identity• Networking and elastic scale
  • #GlobalWindowsAzureWindows Azure Storage
  • #GlobalWindowsAzureWindows Azure Storage Abstractions
  • #GlobalWindowsAzureLAB: Blob Storage• Exploring Windows Azure Storage - for Visual Studio 2012(NOTE: well do only the blob storage lab up to "deletingblobs").
  • #GlobalWindowsAzureBlob Storage IntegrityWindows AzureStorageBlob ContainerServicevalidatesignatureWindowsAzureMD5Hash+MD5Hash+
  • #GlobalWindowsAzureBlob Storage Shared Access SignaturesServicePublic Blob AccesscreateupdatedeletereadServicePublic ContainerAccesscreateupdatedeletereadlistServicePrivate ContainercreateupdatedeletereadlistlistServicePrivate ContainerreadaccessforlimitedtimewithsharedaccesskeysharedaccesspolicyBrowser ClientShared AccessSignature (SAS)>1 hourrequiresauthenticationheader in request(no browser)
  • #GlobalWindowsAzureScaling Out Media AccessServiceCorporate DomainClientBlobContainerRESTAzure StorageBlobContainerBlobContainerAzure StorageCDNCacheCDNCacheCDNCache
  • #GlobalWindowsAzureSession Agenda• Spectacular rendering lab• Azure overview• Cloud services, web sites and VMs• Storage tables, blobs and queues• Service bus relay and message broker• SQL Azure• Security and Identity• Networking and elastic scale
  • #GlobalWindowsAzureService Bus as DMZService Service Service ServiceMVC /RESTRESTBrowser Browser BrowserWPFMVC /JQuery AJAX SilverlightServiceWindowsPhone 7DMZREST /RouterRouter RESTCorporate DomainMVCSiteWebFormsSite
  • #GlobalWindowsAzureService Bus as DMZ (2)Service Service Service ServiceMVC /RESTRESTBrowser Browser BrowserWPFMVC /JQuery AJAX SilverlightServiceWindowsPhone 7DMZCorporate DomainMVCSiteWebFormsSite
  • #GlobalWindowsAzureService Bus to Data On Premise /MigrationServiceClientWebApplicationService BusCorporate DomainWindows Azure
  • #GlobalWindowsAzure“Expose Web Services from anywhere toanywhere”Outbound TCP (Ports 9350-9353)9350 Unsecured TCP One-way (client)9351 Secured TCP One-way (all listeners, secured clients)9352 Secured TCP Rendezvous (all listeners except one-way)9353 Direct Connect Probing Protocol (TCP listeners with direct connect)Outbound HTTP (Port 80, Listeners)TCP equivalent tunnel with overlaid TLS/SSL formed over pair of HTTP requestsAlternate connectivity path if outbound TCP is blockedOutbound HTTPS (Port 443, Senders)Relayed One-Way Unicast and MulticastRelayed WCF NET.TCP with Direct Connect OptionRelayed WCF HTTP with support for REST and SOAP 1.1/1.2Endpoint protection with Access ControlKeyCapabilitiesConnectivityOptions
  • #GlobalWindowsAzureRelay vs. Message Broker
  • #GlobalWindowsAzurePush vs. Pull
  • #GlobalWindowsAzure
  • #GlobalWindowsAzureQueues
  • #GlobalWindowsAzureQueues
  • #GlobalWindowsAzureTopics
  • #GlobalWindowsAzureDemo: Service Bus Relay
  • #GlobalWindowsAzureLAB: Service Bus• Service Bus Messaging
  • #GlobalWindowsAzureSession Agenda• Spectacular rendering lab• Azure overview• Cloud services, web sites and VMs• Storage tables, blobs and queues• Service bus relay and message broker• SQL Azure• Security and Identity• Networking and elastic scale
  • #GlobalWindowsAzure
  • #GlobalWindowsAzureServer Provisioning
  • #GlobalWindowsAzureCreate Database…
  • #GlobalWindowsAzure
  • #GlobalWindowsAzure
  • #GlobalWindowsAzureDemo: SQL Server
  • #GlobalWindowsAzureSession Agenda• Spectacular rendering lab• Azure overview• Cloud services, web sites and VMs• Storage tables, blobs and queues• Service bus relay and message broker• SQL Azure• Security and Identity• Networking and elastic scale
  • #GlobalWindowsAzureACS
  • #GlobalWindowsAzureAuthenticating Users from Web andSocial Providers
  • #GlobalWindowsAzureDemo: Social Login
  • #GlobalWindowsAzureSession Agenda• Spectacular rendering lab• Azure overview• Cloud services, web sites and VMs• Storage tables, blobs and queues• Service bus relay and message broker• SQL Azure• Security and Identity• Networking and elastic scale
  • #GlobalWindowsAzureVirtual NetworksAzure Virtual Machines& Cloud ServicesOn-Premise DevicesVPNDeviceDNSADVPN GatewayIPSec
  • #GlobalWindowsAzureDemo: Azure Networking
  • #GlobalWindowsAzureLAB: NetworkingYour Homework:• Connecting a PaaS application to an IaaS Application with aVirtual Network - for Visual Studio 2012
  • #GlobalWindowsAzureElastic Scale- The Manual WayThe BossOur media blitz is going well,but the website is slowZoinerOh, oh…Ill scalethings out.Azure PortalDrag slider right…
  • #GlobalWindowsAzureElastic Scale- The Manual WaySome time passes…
  • #GlobalWindowsAzureElastic Scale- The Manual WayThe BossOur media blitz is over…whyare we paying so much?ZoinerDoh.Azure PortalDrag slider left…There has to be abetter way!
  • #GlobalWindowsAzureThere is a better way to get elastic scale!• WASABi is theWindows Azure AutoScaling Application Block• Part of the Enterprise Library 5 Windows Azure Integration Pack• Available for free here: http://entlib.codeplex.com/releases/view/75025• Features• Autoscaler for Cloud Services• Scale according to schedule oraccording to load• Respects clock hours• Manage cool-down periods• Configuration Driven• Email notifications of scalingdecision and actions• Extensible• Runs on-premises or in Azure
  • #GlobalWindowsAzureVideo: Elastic Scale
  • #GlobalWindowsAzureClosing• Thank you for joining us today!• Look for a follow up email from the event, or onmichelebusta.com for a post with relevant additional contentlinks.
  • #GlobalWindowsAzureLocal SponsorsSoCalCodeCamp.comAuth0.com
  • #GlobalWindowsAzureGlobal Sponsors
  • #GlobalWindowsAzureWhat is Windows Azure Mobile Services?
  • #GlobalWindowsAzureKey ScenariosWindows Azure Mobile Services are ideal for:
  • #GlobalWindowsAzurePush Notification Lifecycle Overview
  • #GlobalWindowsAzureAuth*
  • #GlobalWindowsAzureScheduler
  • #GlobalWindowsAzureCommunications
  • #GlobalWindowsAzureCommunications: Cloud-initiated!Raaawww
  • #GlobalWindowsAzureNotifications: Different services