Traffic Manager vs Load Balancer for RDP sessions

Copper Contributor

Hello Azure Team,

 

My challenge:

- i want to provide access to Virtual Desktops (VDI) deployed in Azure 

- i have 3 regions: us, emea, apac

- in each region i have 3 shifts (10h each, with 2h overlap), so each region provides 24/7 support

- i need to reinitialize each VDI every 24h (redeploy new Windows Terminal Server to make sure no customer data is there for more then 24h)

 

What would be the right design ?

 

I was thinking to use Traffic Manager (DNS loadbalancing) nested profiles:

- global profile

- nested emea profile

- nested us profile

- nested apac profile

Then another layer of nested profile inside each region (3 shifts per region). But the challenge is in overlaps. I need to make sure my shift2 from emea starting 2 hours before shift1 in emea is finished can work correctly. If i will switchover on the beginning of overlap my shift1 will get a new DNS A responses and their RDP session could be redirected to a new VDI (they would lost all data). I was thinking to increase DNS TTL timer to 2 hours - but that looks like a can of worms (i would not have failover if specific VDI is going down).

 

Another option is not to do DNS loadbalancing but application Load Balancing (using LoadBalancer). But i do face similar challenges - how to plan overlapping shifts (each region is having all 3 shifts).

I would like to use Load Balancing with sticky option - this way existing RDP sessions would be redirected to the same VDI, at the beginning of the overlap i would change the weight of the VDI for all new sessions to be redirected to a new VDI, while old sessions would stick with old VDI. Would that work ?

 

Any recommendations ?

 

Thanks,

Michal

2 Replies

Hi Cliff,

 

Thank you - that is interesting option. It would not work for me (i need to destroy VM, not to manage it centrally/clear home folders). To solve my problem i am also considering other set of solutions, for virtual desktops: not to use Windows Terminal Server but Linux with LXC containers and x11 apps. This way i will have separation on container level and would not have to destroy the machine (but container instead).

Would love to see similar solution from Microsoft.

 

Thanks,

Michal