SlideShare uma empresa Scribd logo
1 de 51
Baixar para ler offline
Ashvini Shahane
Head – Strategic Services Unit
Synergetics IT Services India Pvt. Ltd.
Setting up the cloud
Getting started with the Windows Azure
Tools
Building a new Cloud Service
  Edit, build, debug
Migrating an existing ASP.NET Web
Application
Deploying to Windows Azure
Faster and more user friendly
portal for Windows Azure Platform
services
More visibility and control
Supports multiple service
administrators (co-admins)
Enable and connect to Windows
Azure instances using Remote
Desktop
Built on the Windows Azure
Service Management APIs
Setting up the Hosted Service and the
Storage accounts
New Redesigned Portal
  Improved workflows – fewer clicks and less
  waiting
  Management console
User Management – NEW
  Add Co-Admin to an account
SQL Azure account
  Creating the server
  Creating the database
Setting up the cloud
Getting started with the Windows Azure
Tools
Add-in for Visual Studio 2008 and Visual Studio
2010.
   Support building Cloud Services that use .NET 3.5
   SP1, .NET 4
   Installable via the Web Platform Installer (2008
   only) – http://microsoft.com/web
   Download from http://windowsazure.com
Free download. Works with (the free) Visual
Web Developer Express 2008 & 2010
SQL Azure
   Support in SQL Server 2008 R2 Management
   Studio
   Visual Studio 2010 Server Explorer
Getting started with the Windows Azure
Tools
Building a new Cloud Service
  Edit, build, debug
SDK     Portal         Hosted
                         Service




                         Storage




Develop   Deploy   Run
Role




       Code   Configuration
Inherits RoleEntryPoint
OnStart() Method
   Called by Fabric on startup, allows you to perform
   initialization tasks.
   Reports Busy status to load balancer until you return
   true.
Run() Method
   Main logic is here – can do anything, typically infinite
   loop. Should never exit.
OnStop() Method
   Called when role is to be shutdown, graceful exit.
   30 Seconds to tidy up
Defines the shape of each role
Internal and External Endpoints
Configuration setting definitions

 <WebRole name="WebRole1">
   <InputEndpoints>
    <InputEndpoint name="HttpIn" protocol="http" port="80" />
   </InputEndpoints>
   <ConfigurationSettings>
        <Setting name="DiagnosticsConnectionString" />
        <Setting name="HelloMessage"/>
   </ConfigurationSettings>
  </WebRole>
Defines the scale of each role
Instance count
Configuration values

 <Role name="WebRole1">
   <Instances count="1" />
   <ConfigurationSettings>
     <Setting name="DiagnosticsConnectionString"
 value="UseDevelopmentStorage=true" />
     <Setting name="HelloMessage" value="Hello World!" />
   </ConfigurationSettings>
  </Role>
Port 80                        Port 8090
          WA-GUEST-OS-1.3      Http
Http




                  200px

                  200px



     S                    XL                     M

                                           StatusSvc
                                           HTTP
Building a New Windows Azure Cloud
Service

DEMO
Getting started with the Windows Azure
Tools
Core Windows Azure concepts
Building a new Cloud Service
  Edit, build, debug
Migrating an existing ASP.NET Web
Application
Windows Azure Tools for Visual Studio pre-
defined role templates
  ASP.NET WebForms Role
  ASP.NET MVC 2 Role
Migrating an existing ASP.NET Application

DEMO
What about the data?
What about Session State?
What about data and output caching?
How will authentication be handled?
How can I connect back to on premise
server applications?
SQL Azure Database Management

DEMO
Load balancer round-robins requests in
multi instance roles
Follow web farm best practices
  Do not store state on individual instances
  Do not assume subsequent requests will hit the
  same instance
    Don‟t forget things like dynamically generated
    images loaded by a page
A distributed, in-memory cache for
applications running in Windows Azure
Simple administration; end-user doesn‟t
bother with configuration, deployment, or
management
Highlight scalable solution with low latency
and high throughput
Based on Windows Server AppFabric
Caching
Currently available in AppFabric LABS
Portal as a CTP
Memory




Network




 Disk
Caching Service in Action

DEMO
ASP.NET providers for session state and
page output caching
Cache any managed object
   No object size limits
   No serialization costs for local caching
Easily integrates into existing applications
Windows Azure Load Balancer uses round-robin allocation.
Session state must persist to client or storage on every
request
Persist to Storage via Session State Provider
   Windows Azure AppFabric Caching
   SQL Azure
   Windows Azure Storage
   Custom
Persist to Client
   Use cookies
Using Windows Azure AppFabric Caching
as the session store
In-memory, distributed cache
Based on Windows Server AppFabric
Caching
Used the Microsoft.Web.DistributedCache
assembly found in the SDK
Currently available in AppFabric LABS
Portal as CTP
Use SQL Azure as backing store
Round trip to database twice per request
  Read at request start
  Write at request end
Scale out across multiple DBs
  Use session state partitioning
SQL Azure is competitive on cost basis
Sample ASP.NET Providers
(Session, Membership, Role etc…)
Sample Code
http://code.msdn.microsoft.com/windowsazu
resamples
Uses Blob + Table Storage
Several storage transactions per request

 Sample Provider should be treated as a
          starting point only.
Forms Authentication Migration
  SQL Azure as Membership Store
    Only change connection string
  Azure Table Storage as Membership Store
    Need to use TableStorageMembershipProvider and
    TableStorageRoleProvider.


Claims based authentication
  Windows Azure AppFabric Access Control
  Service
Used to authenticate and authorize users
Integration Single Sign On and centralized
authorization into your web applications
Standards-based identity providers
  Enterprise directories (e.g. Active Directory
  Federation Server v2.0)
  Web identities (e.g. Windows Live ID, Google,
  Yahoo!, and Facebook)
V1 available in production
Simplify and automate                                                 Provide abstraction for
      complex authorization                                                 federated claims-based
      schema requests.                                                      authentication.




                              Easily establish secure trust relationship.



Data and Applications                                                       Applications or Users
•   Secure network connectivity
    between on-premises and
    cloud                              Windows Azure
    • Supports standard IP protocols

•   Example use cases:
    • Enterprise app migrated to
      Windows Azure that requires
      access to on-premise SQL
      Server
    • Windows Azure app domain-
      joined to corporate Active
      Directory
    • Remote administration and
      trouble-shooting of Windows
      Azure Roles
                                            Enterprise

•   Simple setup and
•   To use Connect with a WA service, enable one or more of its
    Roles
    • For Web & Worker Role, include the Connect plug-in as part of Service
      Model (.csdef file)
    • For VM role, install the Connect agent in VHD image using the Connect
      VM install package
    • Connect agent will automatically be deployed for each new role
      instance that starts up

•   Connect agent configuration managed through the
    ServiceConfiguration (.cscfg) file
    • One required setting - “ActivationToken”
        o Unique per-subscription token, accessed from Admin UI
    • Optional settings for managing AD domain-join and service availability
•   Local computers are enabled for connectivity by installing & activating the
    Connect agent
    • Web-based installation link
         o Retrieved from admin UI
         o Contains per-subscription activation token embedded in URL
    • Standalone install package
         o Reads activation token from registry key
         o Enables installation using existing S/W distribution tools
•   Connect agent tray icon & client UI
    • View activation state & connectivity status
    • Refresh network policy
•   Connect agent automatically manages network connectivity
    •   Sets up virtual network adapter
    •   “Auto-connects” to Connect relay service as needed
    •   Configures IPSec policy based on network policy
    •   Enables DNS name resolution
    •   Automatically syncs latest network policies
•   Connect network policy managed through Windows Azure
    admin portal
    • Managed on a per-subscription basis
•   Local computers are organized into Groups
    • E.g. “SQL Servers”, “My Laptops”, “Project Foo”
    • A computer can only belong to a single group at a time
    • Newly activated computers are „unassigned‟ by default
•   WA Roles can be connected to Groups
    • Enables network connectivity between all Role instances (VM‟s) and
      local computers in the Group
    • WA Connect does not control connectivity between Roles or Role
      instances (done through existing mechanisms)
•   Groups can be connected to other Groups
    • Enables network connectivity between computers in each group
    • In addition, a Group can be „interconnected‟ - enables connectivity
      within a group
    • Useful for ad-hoc & roaming scenarios
Windows Azure

              Role A                     Role B

           Instance3
             Instance2              Instance3
                                      Instance2
               Instance                 Instance




                       My Servers                  My Laptops



SERVER1

                                     DEV_LAPTOP1
          SERVER2       SERVER3                DEV_LAPTOP2
Getting started with the Windows Azure
Tools
Core Windows Azure concepts
Building a new Cloud Service
  Edit, build, debug
Migrating an existing ASP.NET Web
Application
Deploying to Windows Azure
Create a new deployment:
  Visual Studio
  Windows Azure Portal
  Command line and Powershell

Built using the Service Management REST
API
Hosted Service and Storage Account
created through the portal
Deploying to Windows Azure using Visual
Studio 2010

DEMO
Deploy via T-SQL scripts

Support for SQL Server Data-Tier Applications
(DAC) feature
   DACPAC is unit of deployment
   Cloud or on-premise is a deployment time choice

Create Logical Server in same region as Windows
Azure Affinity Group for code-near architecture

   Support existing and new forms of deployment
If using Windows Azure Storage / SQL
Server
   Move only storage to the cloud first
   Test with on premise application
   Move the application to cloud
Any non-framework dll‟s
   Set “Copy Local” property to true
   Included in the application package
All configurable settings
   Add to the ServiceConfiguration.cscfg file
Update the service configuration file
OS update
Upgrade a role or all roles
  Reuse existing instances
Deploy and VIP Swap or “DNS Swap”
Delete and Deploy
Getting started with the Windows Azure
Tools
Building a new Cloud Service
  Edit, build, debug
Migrating an existing ASP.NET Web
Application
Deploying to Windows Azure
Email: AshviniShahane@Synergetics-india.com
Web: http://www.synergetics-india.com




THANK YOU

Mais conteúdo relacionado

Mais procurados

MS TechDays 2011 - Cloud Computing with the Windows Azure Platform
MS TechDays 2011 - Cloud Computing with the Windows Azure PlatformMS TechDays 2011 - Cloud Computing with the Windows Azure Platform
MS TechDays 2011 - Cloud Computing with the Windows Azure Platform
Spiffy
 
.NetCampus Windows Azure Mobile
.NetCampus Windows Azure Mobile.NetCampus Windows Azure Mobile
.NetCampus Windows Azure Mobile
antimo musone
 
Eclipse & die Microsoft cloud
Eclipse & die Microsoft cloudEclipse & die Microsoft cloud
Eclipse & die Microsoft cloud
Patric Boscolo
 
NIC 2013 - Configure and Deploy Private Cloud
NIC 2013 - Configure and Deploy Private CloudNIC 2013 - Configure and Deploy Private Cloud
NIC 2013 - Configure and Deploy Private Cloud
Kristian Nese
 
Windows Phone 7 and Windows Azure – A Match Made in the Cloud
Windows Phone 7 and Windows Azure – A Match Made in the CloudWindows Phone 7 and Windows Azure – A Match Made in the Cloud
Windows Phone 7 and Windows Azure – A Match Made in the Cloud
Michael Collier
 
Developing applications with windows azure
Developing applications with windows azureDeveloping applications with windows azure
Developing applications with windows azure
Sundararajan Subramanian
 

Mais procurados (20)

Windows Azure Overview
Windows Azure OverviewWindows Azure Overview
Windows Azure Overview
 
Windows Azure Platform - The Color of Cloud Computing
Windows Azure Platform - The Color of Cloud ComputingWindows Azure Platform - The Color of Cloud Computing
Windows Azure Platform - The Color of Cloud Computing
 
Windows Azure: Lessons From the Field
Windows Azure: Lessons From the FieldWindows Azure: Lessons From the Field
Windows Azure: Lessons From the Field
 
Prodware wa college - marcel meijer
Prodware   wa college - marcel meijerProdware   wa college - marcel meijer
Prodware wa college - marcel meijer
 
MS TechDays 2011 - Cloud Computing with the Windows Azure Platform
MS TechDays 2011 - Cloud Computing with the Windows Azure PlatformMS TechDays 2011 - Cloud Computing with the Windows Azure Platform
MS TechDays 2011 - Cloud Computing with the Windows Azure Platform
 
.NetCampus Windows Azure Mobile
.NetCampus Windows Azure Mobile.NetCampus Windows Azure Mobile
.NetCampus Windows Azure Mobile
 
Microsoft PaaS Cloud Windows Azure Platform
Microsoft PaaS Cloud Windows Azure PlatformMicrosoft PaaS Cloud Windows Azure Platform
Microsoft PaaS Cloud Windows Azure Platform
 
Eclipse & die Microsoft cloud
Eclipse & die Microsoft cloudEclipse & die Microsoft cloud
Eclipse & die Microsoft cloud
 
What’s New with SSIS in ADF
 What’s New with SSIS in ADF What’s New with SSIS in ADF
What’s New with SSIS in ADF
 
Embrace and Extend - First-Class Activity and 3rd Party Ecosystem for SSIS in...
Embrace and Extend - First-Class Activity and 3rd Party Ecosystem for SSIS in...Embrace and Extend - First-Class Activity and 3rd Party Ecosystem for SSIS in...
Embrace and Extend - First-Class Activity and 3rd Party Ecosystem for SSIS in...
 
Above the cloud: Big Data and BI
Above the cloud: Big Data and BIAbove the cloud: Big Data and BI
Above the cloud: Big Data and BI
 
Windows Azure for Developers - Service Management
Windows Azure for Developers - Service ManagementWindows Azure for Developers - Service Management
Windows Azure for Developers - Service Management
 
V mware v realize orchestrator 6.0 knowledge transfer kit
V mware v realize orchestrator 6.0 knowledge transfer kitV mware v realize orchestrator 6.0 knowledge transfer kit
V mware v realize orchestrator 6.0 knowledge transfer kit
 
DV03 Smooth Migration to Windows Azure
DV03 Smooth Migration to Windows AzureDV03 Smooth Migration to Windows Azure
DV03 Smooth Migration to Windows Azure
 
Windows Azure Platform Technical Deep Dive - Chris Auld (Intergen)
Windows Azure Platform Technical Deep Dive - Chris Auld (Intergen)Windows Azure Platform Technical Deep Dive - Chris Auld (Intergen)
Windows Azure Platform Technical Deep Dive - Chris Auld (Intergen)
 
Oracle Public Cloud: Oracle Java Cloud Service, by Nino Guarnacci
Oracle Public Cloud: Oracle Java Cloud Service, by Nino GuarnacciOracle Public Cloud: Oracle Java Cloud Service, by Nino Guarnacci
Oracle Public Cloud: Oracle Java Cloud Service, by Nino Guarnacci
 
NIC 2013 - Configure and Deploy Private Cloud
NIC 2013 - Configure and Deploy Private CloudNIC 2013 - Configure and Deploy Private Cloud
NIC 2013 - Configure and Deploy Private Cloud
 
Windows Phone 7 and Windows Azure – A Match Made in the Cloud
Windows Phone 7 and Windows Azure – A Match Made in the CloudWindows Phone 7 and Windows Azure – A Match Made in the Cloud
Windows Phone 7 and Windows Azure – A Match Made in the Cloud
 
Developing applications with windows azure
Developing applications with windows azureDeveloping applications with windows azure
Developing applications with windows azure
 
Enter The Matrix Securing Azure’s Assets
Enter The Matrix Securing Azure’s AssetsEnter The Matrix Securing Azure’s Assets
Enter The Matrix Securing Azure’s Assets
 

Semelhante a Developing and deploying windows azure applications

Building & managing wa app wely
Building & managing wa app   welyBuilding & managing wa app   wely
Building & managing wa app wely
Spiffy
 
Building & Managing Windows Azure
Building & Managing Windows AzureBuilding & Managing Windows Azure
Building & Managing Windows Azure
K.Mohamed Faizal
 
Microsoft SQL Azure - Building Applications Using SQL Azure Presentation
Microsoft SQL Azure - Building Applications Using SQL Azure PresentationMicrosoft SQL Azure - Building Applications Using SQL Azure Presentation
Microsoft SQL Azure - Building Applications Using SQL Azure Presentation
Microsoft Private Cloud
 

Semelhante a Developing and deploying windows azure applications (20)

Cloud computing
Cloud computingCloud computing
Cloud computing
 
Windows Azure
Windows AzureWindows Azure
Windows Azure
 
Microsoft Azure
Microsoft AzureMicrosoft Azure
Microsoft Azure
 
Windows azure overview for SharePoint Pros
Windows azure overview for SharePoint Pros Windows azure overview for SharePoint Pros
Windows azure overview for SharePoint Pros
 
Day Of Cloud - Windows Azure Platform
Day Of Cloud - Windows Azure PlatformDay Of Cloud - Windows Azure Platform
Day Of Cloud - Windows Azure Platform
 
Building & managing wa app wely
Building & managing wa app   welyBuilding & managing wa app   wely
Building & managing wa app wely
 
Building & Managing Windows Azure
Building & Managing Windows AzureBuilding & Managing Windows Azure
Building & Managing Windows Azure
 
Introduction of Windows azure and overview
Introduction of Windows azure and overviewIntroduction of Windows azure and overview
Introduction of Windows azure and overview
 
Azure in Developer Perspective
Azure in Developer PerspectiveAzure in Developer Perspective
Azure in Developer Perspective
 
Migrate an Existing Application to Microsoft Azure
Migrate an Existing Application to Microsoft AzureMigrate an Existing Application to Microsoft Azure
Migrate an Existing Application to Microsoft Azure
 
Tokyo azure meetup #8 azure update, august
Tokyo azure meetup #8   azure update, augustTokyo azure meetup #8   azure update, august
Tokyo azure meetup #8 azure update, august
 
Tokyo azure meetup #8 - Azure Update, August
Tokyo azure meetup #8 - Azure Update, AugustTokyo azure meetup #8 - Azure Update, August
Tokyo azure meetup #8 - Azure Update, August
 
Microsoft SQL Azure - Building Applications Using SQL Azure Presentation
Microsoft SQL Azure - Building Applications Using SQL Azure PresentationMicrosoft SQL Azure - Building Applications Using SQL Azure Presentation
Microsoft SQL Azure - Building Applications Using SQL Azure Presentation
 
(DEV202) Under the Desk to the AWS Cloud with Windows PowerShell
(DEV202) Under the Desk to the AWS Cloud with Windows PowerShell(DEV202) Under the Desk to the AWS Cloud with Windows PowerShell
(DEV202) Under the Desk to the AWS Cloud with Windows PowerShell
 
Getting started with development in azure
Getting started with development in azureGetting started with development in azure
Getting started with development in azure
 
App Service Web
App Service WebApp Service Web
App Service Web
 
IaaS azure_vs_amazon
IaaS azure_vs_amazonIaaS azure_vs_amazon
IaaS azure_vs_amazon
 
Windows azure overview
Windows azure overviewWindows azure overview
Windows azure overview
 
Azure Stack - Azure Nights User Group
Azure Stack - Azure Nights User GroupAzure Stack - Azure Nights User Group
Azure Stack - Azure Nights User Group
 
Azure App Services
Azure App ServicesAzure App Services
Azure App Services
 

Último

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Último (20)

What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 

Developing and deploying windows azure applications

  • 1. Ashvini Shahane Head – Strategic Services Unit Synergetics IT Services India Pvt. Ltd.
  • 2. Setting up the cloud Getting started with the Windows Azure Tools Building a new Cloud Service Edit, build, debug Migrating an existing ASP.NET Web Application Deploying to Windows Azure
  • 3. Faster and more user friendly portal for Windows Azure Platform services More visibility and control Supports multiple service administrators (co-admins) Enable and connect to Windows Azure instances using Remote Desktop Built on the Windows Azure Service Management APIs
  • 4. Setting up the Hosted Service and the Storage accounts New Redesigned Portal Improved workflows – fewer clicks and less waiting Management console User Management – NEW Add Co-Admin to an account SQL Azure account Creating the server Creating the database
  • 5. Setting up the cloud Getting started with the Windows Azure Tools
  • 6. Add-in for Visual Studio 2008 and Visual Studio 2010. Support building Cloud Services that use .NET 3.5 SP1, .NET 4 Installable via the Web Platform Installer (2008 only) – http://microsoft.com/web Download from http://windowsazure.com Free download. Works with (the free) Visual Web Developer Express 2008 & 2010 SQL Azure Support in SQL Server 2008 R2 Management Studio Visual Studio 2010 Server Explorer
  • 7. Getting started with the Windows Azure Tools Building a new Cloud Service Edit, build, debug
  • 8. SDK Portal Hosted Service Storage Develop Deploy Run
  • 9. Role Code Configuration
  • 10.
  • 11. Inherits RoleEntryPoint OnStart() Method Called by Fabric on startup, allows you to perform initialization tasks. Reports Busy status to load balancer until you return true. Run() Method Main logic is here – can do anything, typically infinite loop. Should never exit. OnStop() Method Called when role is to be shutdown, graceful exit. 30 Seconds to tidy up
  • 12.
  • 13. Defines the shape of each role Internal and External Endpoints Configuration setting definitions <WebRole name="WebRole1"> <InputEndpoints> <InputEndpoint name="HttpIn" protocol="http" port="80" /> </InputEndpoints> <ConfigurationSettings> <Setting name="DiagnosticsConnectionString" /> <Setting name="HelloMessage"/> </ConfigurationSettings> </WebRole>
  • 14. Defines the scale of each role Instance count Configuration values <Role name="WebRole1"> <Instances count="1" /> <ConfigurationSettings> <Setting name="DiagnosticsConnectionString" value="UseDevelopmentStorage=true" /> <Setting name="HelloMessage" value="Hello World!" /> </ConfigurationSettings> </Role>
  • 15. Port 80 Port 8090 WA-GUEST-OS-1.3 Http Http 200px 200px S XL M StatusSvc HTTP
  • 16. Building a New Windows Azure Cloud Service DEMO
  • 17. Getting started with the Windows Azure Tools Core Windows Azure concepts Building a new Cloud Service Edit, build, debug Migrating an existing ASP.NET Web Application
  • 18. Windows Azure Tools for Visual Studio pre- defined role templates ASP.NET WebForms Role ASP.NET MVC 2 Role
  • 19.
  • 20. Migrating an existing ASP.NET Application DEMO
  • 21. What about the data? What about Session State? What about data and output caching? How will authentication be handled? How can I connect back to on premise server applications?
  • 22. SQL Azure Database Management DEMO
  • 23. Load balancer round-robins requests in multi instance roles Follow web farm best practices Do not store state on individual instances Do not assume subsequent requests will hit the same instance Don‟t forget things like dynamically generated images loaded by a page
  • 24. A distributed, in-memory cache for applications running in Windows Azure Simple administration; end-user doesn‟t bother with configuration, deployment, or management Highlight scalable solution with low latency and high throughput Based on Windows Server AppFabric Caching Currently available in AppFabric LABS Portal as a CTP
  • 26. Caching Service in Action DEMO
  • 27. ASP.NET providers for session state and page output caching Cache any managed object No object size limits No serialization costs for local caching Easily integrates into existing applications
  • 28. Windows Azure Load Balancer uses round-robin allocation. Session state must persist to client or storage on every request
  • 29. Persist to Storage via Session State Provider Windows Azure AppFabric Caching SQL Azure Windows Azure Storage Custom Persist to Client Use cookies
  • 30. Using Windows Azure AppFabric Caching as the session store In-memory, distributed cache Based on Windows Server AppFabric Caching Used the Microsoft.Web.DistributedCache assembly found in the SDK Currently available in AppFabric LABS Portal as CTP
  • 31.
  • 32. Use SQL Azure as backing store Round trip to database twice per request Read at request start Write at request end Scale out across multiple DBs Use session state partitioning SQL Azure is competitive on cost basis
  • 33. Sample ASP.NET Providers (Session, Membership, Role etc…) Sample Code http://code.msdn.microsoft.com/windowsazu resamples Uses Blob + Table Storage Several storage transactions per request Sample Provider should be treated as a starting point only.
  • 34. Forms Authentication Migration SQL Azure as Membership Store Only change connection string Azure Table Storage as Membership Store Need to use TableStorageMembershipProvider and TableStorageRoleProvider. Claims based authentication Windows Azure AppFabric Access Control Service
  • 35. Used to authenticate and authorize users Integration Single Sign On and centralized authorization into your web applications Standards-based identity providers Enterprise directories (e.g. Active Directory Federation Server v2.0) Web identities (e.g. Windows Live ID, Google, Yahoo!, and Facebook) V1 available in production
  • 36.
  • 37. Simplify and automate Provide abstraction for complex authorization federated claims-based schema requests. authentication. Easily establish secure trust relationship. Data and Applications Applications or Users
  • 38.
  • 39. Secure network connectivity between on-premises and cloud Windows Azure • Supports standard IP protocols • Example use cases: • Enterprise app migrated to Windows Azure that requires access to on-premise SQL Server • Windows Azure app domain- joined to corporate Active Directory • Remote administration and trouble-shooting of Windows Azure Roles Enterprise • Simple setup and
  • 40. To use Connect with a WA service, enable one or more of its Roles • For Web & Worker Role, include the Connect plug-in as part of Service Model (.csdef file) • For VM role, install the Connect agent in VHD image using the Connect VM install package • Connect agent will automatically be deployed for each new role instance that starts up • Connect agent configuration managed through the ServiceConfiguration (.cscfg) file • One required setting - “ActivationToken” o Unique per-subscription token, accessed from Admin UI • Optional settings for managing AD domain-join and service availability
  • 41. Local computers are enabled for connectivity by installing & activating the Connect agent • Web-based installation link o Retrieved from admin UI o Contains per-subscription activation token embedded in URL • Standalone install package o Reads activation token from registry key o Enables installation using existing S/W distribution tools • Connect agent tray icon & client UI • View activation state & connectivity status • Refresh network policy • Connect agent automatically manages network connectivity • Sets up virtual network adapter • “Auto-connects” to Connect relay service as needed • Configures IPSec policy based on network policy • Enables DNS name resolution • Automatically syncs latest network policies
  • 42. Connect network policy managed through Windows Azure admin portal • Managed on a per-subscription basis • Local computers are organized into Groups • E.g. “SQL Servers”, “My Laptops”, “Project Foo” • A computer can only belong to a single group at a time • Newly activated computers are „unassigned‟ by default • WA Roles can be connected to Groups • Enables network connectivity between all Role instances (VM‟s) and local computers in the Group • WA Connect does not control connectivity between Roles or Role instances (done through existing mechanisms) • Groups can be connected to other Groups • Enables network connectivity between computers in each group • In addition, a Group can be „interconnected‟ - enables connectivity within a group • Useful for ad-hoc & roaming scenarios
  • 43. Windows Azure Role A Role B Instance3 Instance2 Instance3 Instance2 Instance Instance My Servers My Laptops SERVER1 DEV_LAPTOP1 SERVER2 SERVER3 DEV_LAPTOP2
  • 44. Getting started with the Windows Azure Tools Core Windows Azure concepts Building a new Cloud Service Edit, build, debug Migrating an existing ASP.NET Web Application Deploying to Windows Azure
  • 45. Create a new deployment: Visual Studio Windows Azure Portal Command line and Powershell Built using the Service Management REST API Hosted Service and Storage Account created through the portal
  • 46. Deploying to Windows Azure using Visual Studio 2010 DEMO
  • 47. Deploy via T-SQL scripts Support for SQL Server Data-Tier Applications (DAC) feature DACPAC is unit of deployment Cloud or on-premise is a deployment time choice Create Logical Server in same region as Windows Azure Affinity Group for code-near architecture Support existing and new forms of deployment
  • 48. If using Windows Azure Storage / SQL Server Move only storage to the cloud first Test with on premise application Move the application to cloud Any non-framework dll‟s Set “Copy Local” property to true Included in the application package All configurable settings Add to the ServiceConfiguration.cscfg file
  • 49. Update the service configuration file OS update Upgrade a role or all roles Reuse existing instances Deploy and VIP Swap or “DNS Swap” Delete and Deploy
  • 50. Getting started with the Windows Azure Tools Building a new Cloud Service Edit, build, debug Migrating an existing ASP.NET Web Application Deploying to Windows Azure