Preparing to Support Enterprise Applications on Windows Azure Eric MattinglyService EngineerMicrosoft Corporation
AZR301
Expectations
Basic understanding of Azure (This is a 300 level)Will only lightly touch on newly announced features
Virtual MachineVirtual Network
Questions
What new steps do I need to take to build and deploy a supportable Azure application?How is troubleshooting different in Azure and what tools should I take advantage of?What signs should I look for before calling Microsoft support?
http://www.windowsazure.com/en-us/support/legal/preview-terms-of-use/
NO CTP/Relea
se Preview
Design
Platform as a Service (PaaS)Support tradeoffs exist between Azure technologies
SQL Azure vs. Azure StorageService Bus Relay vs. Public Web Services
Develop
Resilient connection pointsP&P Transient Fault Handling Application Block
Understand the paradigm shiftsMulti-instanceStatelessInstance failure tolerance
Develop - Instrumentation
NT Events.NET TraceCustom Performance Counters
No IntelliTrace in Production!
Windows Azure DiagnosticsTransfers diagnostics data from role instances to Azure storage
Windows Azure LogsIIS LogsWindows Azure Infrastructure LogsFailed Request LogsEvent LogsPerformance CountersCrash DumpsCustom Error Logs
Develop - Instrumentation
Ensure all data is collected when a failure occurs connecting to Azure services:
SQL AzureAzure CacheAzure Service BusAzure Storage
Develop – Setting Instrumentation
Use Windows Azure Diagnostics configuration fileCustom counters need to be set in code
Develop – Start Up Tasks
Used to configure the VM for your applicationMost common use is IIS settings
Can also use it to install software
Test – Load Testing
Use Visual Studio 2010 Web/Load TestBottleneck detectionInstance size guidanceP&P Auto-Scaling Application Block
Test - Latency
Network latency WILL affect your hybrid applicationAzure Statistics
Test – Monitoring/Instrumentation
Failure Mode AnalysisGeneral Steps to Investigate Problems with Windows Azure Diagnostics
Deploy – Instance Sizes
Instance Size CPU Cores Memory
Disk Space for
Local Storage
Allocated Bandwidth
(Mbps)
Extra Small Shared 768 MB 13,336 MB 5
Small 1 1.75 GB 223,256 MB 100
Medium 2 3.5 GB 494,616 MB 200
Large 4 7 GB1,016,856
MB 400
Extra Large 8 14 GB
2,081,816 MB 800
MSDN Updated: September 7, 2011
Deploy
Choose more instances at the smallest size possibleMore upgrade domains = longer upgrade timesSeparate storage account for diagnosticsEnable Remote Desktop
Sustain
Guest OS updatesAuto. vs. Controlled
Upgrading deploymentIn-place / VIP Swap / Re-deployChoice depends on what is changing
BackupAzure storage requires development effortCOPY AS or Import/Export for SQL Azure databases
Data retention policy for diagnosticsAzure SCOM management pack can groom
Production Monitoring
System Center Operations ManagerWindows Azure MPSQL Azure MP (CTP)Web Application Availability Monitoring
User ScenariosService Bus Endpoints
Event MonitoringSQL Azure ThrottlingWindows Azure Cache
Trust But Verify
Viewing Events
Remote Desktop
Query WAD Directly
Send to SQL From WAD
Pro • Easy viewing
• Multiple tools
available
• Easy consumptio
n
Con • Single user at a time
• Slow search• Hard to
read
• Development effort
Recommend to send to SQL (On-premise or Azure)
Network
Public “internal” applicationsUsers are exiting the corporate network
Map your network pathsHybrid includes the public internet!
ToolsNetmontracert/netstat
SQL Azure
DMVs (Limited)Management Portal (Query Plan)
SQL Azure - Throttling
Designed to limit impact on other databasesSoft vs. HardUnderstanding SQL Azure error codes
Azure Specific Tools
Isolate Nodes with PowerShellAzure VM Assistant Tool (any compute instance)
Windows Azure Role Architecture
Azure Service Dashboard
http://www.windowsazure.com/en-us/support/service-dashboard/ Subscribe to the RSS feedMay not apply to you/You still may be having an issue
SQL Azure Clues
System.Data.SqlClient.SqlException: The service is currently busy. Retry the request after 10 seconds. Code: 65539
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
Azure Cache Clues
There is a temporary failure. Please retry later. (One or more specified cache servers are unavailable, which could be caused by busy network or servers. For on-premises cache clusters, also verify the following conditions. Ensure that security permission has been granted for this client account, and check that the AppFabric Caching Service is allowed through the firewall on all cache hosts. Also the MaxBufferSize on the server must be greater than or equal to the serialized object size sent from the client.)
Azure Service Bus Endpoint Clues
ATOM feed is emptySystem.ServiceModel.EndpointNotFoundException: The endpoint was not found. Please ensure that you can connect to the internet using HTTP port 80 and TCP port 9350.
Contacting Azure Support
Technical SupportHave info ready
Subscription IDDeployment IDTechnologies
Current problemIssue suspicionProvide a shared email
Related Content
AZR319 – Monitoring & Managing in Windows Azure
AZR204 - Hybrid Will Rule: Options to Connect, Extend and Integrate Applications in Your Data Center and Windows Azure
MGT301 | Microsoft System Center 2012 Operations Manager – An Overview of What’s New
Track Resources
Meetwindowsazure.com
@WindowsAzure @ms_teched
DOWNLOAD Windows Azure
Windowsazure.com/teched
Hands-On Labs
Resources
Connect. Share. Discuss.
http://europe.msteched.com
Learning
Microsoft Certification & Training Resources
www.microsoft.com/learning
TechNet
Resources for IT Professionals
http://microsoft.com/technet
Resources for Developers
http://microsoft.com/msdn
Evaluations
http://europe.msteched.com/sessions
Submit your evals online
© 2012 Microsoft 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.
Top Related