• No results found

INDIA September 2011 virtual techdays

N/A
N/A
Protected

Academic year: 2021

Share "INDIA September 2011 virtual techdays"

Copied!
35
0
0

Loading.... (view fulltext now)

Full text

(1)

virtual techdays

INDIA

28-30 September 2011

Building highly Available Services on Windows Azure Platform

Pooja Singh

Technical Architect, Accenture

Aakash Sharma

Technical Lead, Accenture

Laxmikant Bhole

Senior Architect, Accenture

(2)

You know the basics of

 Web/Worker roles

 SQL Azure

 Windows Azure Storage

 Windows Azure Diagnostics

virtual techdays

INDIA

28-30 September 2011

Assumptions

(3)

Topics

 Understand Availability

 Causes for unavailability

 What you get with Azure

 What you do on your own

 Guiding Principles

Audience

 Developers & Architects community

 People with high available services needs

Takeaway

 Windows Azure inherent attributes for building highly available services

 Architectural expectations for building highly available services

virtual techdays

INDIA

28-30 September 2011

S E S S I O N A G E N D A

(4)

virtual techdays

INDIA

28-30 September 2011

How do “you” define “Availability”

• What is acceptable Downtime

• What happens in case of failure

– All functionality required to be available? – Degraded functionality to be available – Failsafe

(5)

virtual techdays

INDIA

28-30 September 2011

Cost of building highly available services

• Unavailability Vs High Availability

Availability Cost &

(6)

virtual techdays

INDIA

28-30 September 2011

Implementation costs for a new project

Implementation cost for a startup company that offers its software as a service with a hosting company.

6

Traditional

(7)

virtual techdays

INDIA

28-30 September 2011

Causes for unavailability

• Increase in workload

– Non-scalable architecture – Poor performance

• Platform Failures

• Upgrades

• Failure

– Hardware – Network – Transient conditions

(8)

virtual techdays

INDIA

28-30 September 2011

(9)

virtual techdays

INDIA

28-30 September 2011

Azure to “rescue”

(10)

virtual techdays

INDIA

28-30 September 2011

(11)

virtual techdays

INDIA

28-30 September 2011

Azure out-of-box features

• Elasticity

– Scale up/down compute resources on-demand

• Self Service Management

– Self recovery for nodes

• Fault Domains

• Storage Resilience

– 3 copies of storage – Geo Replication

(12)

virtual techdays

INDIA

28-30 September 2011

(13)

virtual techdays

INDIA

28-30 September 2011

Design for Increased Load

(14)

virtual techdays

INDIA

28-30 September 2011

Is this Scalable?

Web Role Instance 1 Web Role Instance 2 Web Role Instance 3 Web Role Instance 4 SQL Azure Load B alan cer

(15)

virtual techdays

INDIA

28-30 September 2011

Is this Scalable?

Web Role Instance 1 Web Role Instance 2 Worker Role

Instance 1 Worker Role Instance 2 SQL Azure Load B alan cer Table storage Blob storage Queue

(16)

virtual techdays

INDIA

28-30 September 2011

Design for Scalability

• Use loosely coupled nodes

• Design for redundancy

• Scale “OUT” everything

– Better to have 50 one GB databases than one 50 GB database

(17)

virtual techdays

INDIA

28-30 September 2011

Design for Performance

• Service and data closer to user

– Same data center to avoid network latency – CDN

– Caching

• Be mindful of the throughput and transaction thresholds

• Auto-scaling

(18)

virtual techdays

INDIA

28-30 September 2011

How “CDN” works

• Contents closer to end-users

• 24 physical nodes globally

• CDN works for web apps & public blobs

Azure Storage CDN – Region A CDN – Region B Copy of Blob A Copy of Blob A Blob A Users in Europe Users in Asia

(19)

virtual techdays

INDIA

28-30 September 2011

Decide Upgrade Strategies

(20)

virtual techdays

INDIA

28-30 September 2011

Upgrade Strategies

• VIP Swap

• New Service and DNS swap

• Upgrade Domains

(21)

virtual techdays

INDIA

28-30 September 2011

How does upgrade domain work?

Load Balancer DNS Myservice.Cloudapp.net Myservice v1 Myservice v1 Myservice v1 Myservice v2 Myservice v2 Myservice v2

(22)

virtual techdays

INDIA

28-30 September 2011

Handle Failure

(23)

virtual techdays

INDIA

28-30 September 2011

Fault Tolerance

• Self recovery

– Can your Service fix itself?

• Transaction & Recovery

– Loosely coupled

– Transaction rollback and recovery

• Network Failures

(24)

virtual techdays

INDIA

28-30 September 2011

What is “Retry” logic?

• When - Network failure or transient conditions

– Service is temporarily unavailable E.g. SQL Azure Error 40501

The service is currently busy. Retry request after 10 seconds.

• What - Retry for any external connections

– SQL Azure

– Windows Azure Storage – Service Bus

– Any external service

• How - Use RetryPolicy class or Transient Fault Handling Framework

– NoRetry – Retry

(25)

virtual techdays

INDIA

28-30 September 2011

“Retry” Code Example

(26)

virtual techdays

INDIA

28-30 September 2011

Disaster Recovery

(27)

virtual techdays

INDIA

28-30 September 2011

Disaster Recovery

• Backups

– Fault Domain – Geo-replication

• Traffic Manager

– Performance – Round Robin – Failover

(28)

virtual techdays

INDIA

28-30 September 2011

How “Traffic Manager” works

• Policies

– Performance

• Use when geo-distributed services

– Round Robin

• Large user base

– Failover

• Small user base

(29)

virtual techdays

INDIA

28-30 September 2011

Traffic Manager – Performance Policy

East Asia DC Myservice-ea.cloudapp.net

Myservice

North Europe DC Myservice-ne.cloudapp.net

Myservice

North Central U.S. DC Myservice-ncus.cloudapp.net

Myservice DNS

myservice.com

Decide which data center to connect Traffic Manager

(30)

virtual techdays

INDIA

28-30 September 2011

Load Test, Diagnostics & Monitoring

• Load test your service

– Visual Studio 2010 Ultimate Load Tests

• Diagnostics

– Windows Azure Diagnostics – Service Management APIs – Storage Management APIs – CSS SQL Azure Diagnostics

• Monitoring

– Visual Studio profiling tools

(31)

virtual techdays

INDIA

28-30 September 2011

(32)

virtual techdays

INDIA

28-30 September 2011

Guiding Principles

• Use loosely coupled roles

– Use of queues promotes loose coupling

• Handling fault tolerance

– Recover from fault

• Handling scalability in architecture

– Design for scalability

• Run multiple instances of each role

(33)

virtual techdays

INDIA

28-30 September 2011

Guiding Principles

• Design and code for instance failure

– Imbibe redundancy

• Monitor everything

– Take feedback to recover fast

• Load test

(34)

virtual techdays

INDIA

28-30 September 2011

References

http://www.microsoft.com/windowsazure

http://channel9.msdn.com

http://azurescope.cloudapp.net

http://blogs.msdn.com

http://msdn.microsoft.com

http://code.msdn.microsoft.com

(35)

virtual techdays

THANKS

28-30 September 2011

Please do give your Feedback, Complete evaluation at the end

of this session. You could also write to be at :

References

Related documents

Currently Senior Site Reliability Engineer building on prior experience as a Solution Architect, Sr Cloud Engineer, Technical Account Manager of Strategic Accounts, Senior

In 2012, Accenture consolidated its public sector offerings into business services to offer clients end-to-end solutions for the main challenges that Accenture

Lead and business architects must place a greater focus on business and behavioral competencies than the technical architect, since they need to work closely with business people

Hal ini berarti bahwa setiap kenaikan variabel disiplin kerja (X1) satu satuan maka akan meng- akibatkan kenaikan variabel terkaitnya yaitu Kinerja Pegawai (Y)

We support our open source services with numerous Accenture assets, including Accenture Foundation Platform for Java™, Open Source Governance Framework, Open Source

Edge Type LED Backlight (Long life span version) Yellow-Green color 1/16 Yellow-Green STN Vlcm = 5.0V Vled = 5.0V No.. YOUR ATTENTION: It is constant current (not constant voltage)

Accenture and Avanade’s application services for the Microsoft Windows Azure platform provides customers with deep expertise with application development and management services. •

Accomplished IT Professional with 18 years of experience in a variety of senior positions such as Enterprise Architect, Technical Team Lead, Project Manager, Database Administrator