21
© Copyright SELA Software & Education Labs Ltd. | 14-18 Baruch Hirsch St Bnei Brak, 51202 Israel | www.selagroup.com SELA DEVELOPER PRACTICE DECEMBER 20-24, 2015 Ido Katz, Microsoft Azure MVP Senior Cloud Infrastructure Consultant Sela Group Azure Traffic Manager Mail: [email protected] Blog: blogs.microsoft.co.il/idokatz Twitter: @send2katz

Microsoft Azure Traffic Manager

Embed Size (px)

Citation preview

Page 1: Microsoft Azure Traffic Manager

© Copyright SELA Software & Education Labs Ltd. | 14-18 Baruch Hirsch St Bnei Brak, 51202 Israel | www.selagroup.com

SELA DEVELOPER PRACTICEDECEMBER 20-24, 2015

Ido Katz, Microsoft Azure MVPSenior Cloud Infrastructure ConsultantSela Group

Azure Traffic ManagerMail: [email protected]: blogs.microsoft.co.il/idokatzTwitter: @send2katz

Page 2: Microsoft Azure Traffic Manager

AgendaMoving to the cloudSome basicsWhy do we need Load BalancerWhat is Azure Traffic MangerRound Robin ProfileFailover Clustering ProfileDemoPerformance ProfileDemoOther Cloud SolutionsCloud-based CDN/ADCs

Page 3: Microsoft Azure Traffic Manager

Moving to the cloud:On Premise

Storage

Servers

Networking

O/S

Middleware

Virtualization

Data

Applications

Runtime

You

man

age

Infrastructure(as a Service)

Storage

Servers

Networking

O/S

Middleware

Virtualization

Data

Applications

Runtime

Managed by vendor

You

man

age

Platform(as a Service)

Managed by vendor

You

man

age

Storage

Servers

Networking

O/S

Middleware

Virtualization

Applications

Runtime

Data

Software(as a Service)

Managed by vendor

Storage

Servers

O/S

Middleware

Virtualization

Applications

Runtime

Data

Networking

Page 4: Microsoft Azure Traffic Manager

Some Basics:Cloud Service:• Grants a public IP and DNS per CS.• Contains your Virtual Machines(VMs)

Virtual Machine:• Hosts your service/application• Multiple VMs can be under one cloud service.

Page 5: Microsoft Azure Traffic Manager

Why do we need Load BalancerLoad balancing, by its very nature, is the solution for more than one problem such as:

1. Traffic Redundancy2. BCP Failover3. User Experience

Page 6: Microsoft Azure Traffic Manager

What is Azure Traffic ManagerThree Load Balancing AlgorithmsPerformance, Round Robin, Fail Over

Map your domain name to yourservice.trafficmanager.net with CNAMEcontoso.com -> contosotm.trafficmanager.net

Map cloud service URLs in global data centers to Traffic Manager Profile.contosoeast.cloudapp.netcontosowest.cloudapp.net

Built in HTTP Health Probes for High AvailabilityCan be used outside Azure (For example: Your “On Premise”)

Page 7: Microsoft Azure Traffic Manager

Round Robin Profile

IIS-VM-01 IIS-VM-02

Cloud Service

IIS-VM-01 IIS-VM-02

Cloud Service

West US East US

contosowest.cloudapp.net

contosoeast.cloudapp.net

contosotm.trafficmanager.net

Request for contoso.comLocation Portland, OR

Response with IP for contosoeast.cloudapp.net

Health Probes

Traffic Manager Returns the Next IPCould be West or East

Traffic Manager returns IPs in a round robin fashion regardless of client location.

Page 8: Microsoft Azure Traffic Manager

Failover Clustering Profile

IIS-VM-01 IIS-VM-02

Cloud Service

IIS-VM-01 IIS-VM-02

Cloud Service

West US East US

contosowest.cloudapp.net

contosoeast.cloudapp.net

contosotm.trafficmanager.net

Request for contoso.comALL Requests

Response with IP for contosowest.cloudapp.net

Health Probes

XRequest for contoso.com

Response with IP for contosoeast.cloudapp.net

Traffic Manager always returns the IP address of the primary cloud service unless it fails a health check.

Page 9: Microsoft Azure Traffic Manager

Demo

Failover Clustering

Page 10: Microsoft Azure Traffic Manager

Performance Profile

IIS-VM-01 IIS-VM-02

Cloud Service

IIS-VM-01 IIS-VM-02

Cloud Service

West US East US

contosowest.cloudapp.net

contosoeast.cloudapp.net

contosotm.trafficmanager.net

Request for contoso.comLocation Portland, OR

Response with IP for contosowest.cloudapp.net

Health Probes

Traffic Manager Calculates Hops…

Traffic Manager determines fastest route for the client and returns IP for the appropriate cloud service.

Page 11: Microsoft Azure Traffic Manager

Demo

Performance

Page 12: Microsoft Azure Traffic Manager

PowerShell DemoAdd the azure account to PowerShell

Add-azureaccount

Choose the correct subscription Select-AzureSubscription

Page 13: Microsoft Azure Traffic Manager

PowerShell DemoCreate a new azure traffic manager with the following properties:

Name: SDP-TM-PerformanceDomain Name: SDP-TM-Performance.trafficmanager.netLoad Balancing method: PerformanceMonitor Protocol: HttpMonitor Port: 80Relative path to monitor: /iis85.jpgTTL: 30 Seconds

Page 14: Microsoft Azure Traffic Manager

PowerShell DemoNew-AzureTrafficManagerProfile -Name "SDP-TM-Performance" -DomainName "SDP-TM-Performance.trafficmanager.net" -LoadBalancingMethod "Performance" -MonitorProtocol "Http" -MonitorPort 80 -MonitorRelativePath "/iis85.jpg" -Ttl 30  

Page 15: Microsoft Azure Traffic Manager

PowerShell DemoCreate a variable named "TMProfile" to contain the information about the Traffic manager profile we created.

$TMProfile = Get-AzureTrafficManagerProfile -name "SDP-TM-Performance"

Page 16: Microsoft Azure Traffic Manager

PowerShell DemoUse the variable in order to add our first and second endpoints to the traffic manager, plus saving them using the "Set-AzureTrafficManagerProfile" cmdlet

Add-AzureTrafficManagerEndpoint -TrafficManagerProfile $TMProfile -DomainName "SDP-EUS-CS01.cloudapp.net" -Status "Enabled" -Type "CloudService" | Set-AzureTrafficManagerProfile

Add-AzureTrafficManagerEndpoint -TrafficManagerProfile $TMProfile -DomainName "SDP-WE-CS01.cloudapp.net" -Status "Enabled" -Type "CloudService" | Set-AzureTrafficManagerProfile

Page 17: Microsoft Azure Traffic Manager

PowerShell Demo How it all looks:

New-AzureTrafficManagerProfile -Name "SDP-TM-Performance" -DomainName "SDP-TM-Performance.trafficmanager.net" -LoadBalancingMethod "Performance" -MonitorProtocol "Http" -MonitorPort 80 -MonitorRelativePath "/iis85.jpg" -Ttl 30  

$TMProfile = Get-AzureTrafficManagerProfile -name "SDP-TM-Performance" 

Add-AzureTrafficManagerEndpoint -TrafficManagerProfile $TMProfile -DomainName "SDP-EUS-CS01.cloudapp.net" -Status "Enabled" -Type "CloudService" | Set-AzureTrafficManagerProfile 

Add-AzureTrafficManagerEndpoint -TrafficManagerProfile $TMProfile -DomainName "SDP-WE-CS01.cloudapp.net" -Status "Enabled" -Type "CloudService" | Set-AzureTrafficManagerProfile

Page 18: Microsoft Azure Traffic Manager

Other Clouds Solution:AWS

• No single solution – combination of Route 53(DNS) and Elastic load balancing.

• Cannot be used for services not covered by AWS

Google Cloud

• No actual solution: Http(s) Load Balancing or Region Load balancing.• Cannot be used for services not covered by Google

Cloud-based CDNs/ADCs:• Cloudflare – Performance based only. No actual load balancing• Incapsula – Failover, performance, Round-robin• Akamai – Failover, performance, weighted

Page 19: Microsoft Azure Traffic Manager

In this session we learned:1. You learned the basics of the cloud.2. What is Load Balancer3. What is Azure Traffic Manager4. What kind of profiles I can use with Traffic Manager.5. What is the differences between other cloud service providers in terms of load balancing.

Page 21: Microsoft Azure Traffic Manager

Questions