Replacing the Deprecated Azure RemoteApp
In this article, I will explain your options for replacing Azure RemoteApp, which Microsoft plans to terminate in August 2017.
End of Azure RemoteApp
Azure RemoteApp was a feature of Azure and was available only via Azure Service Management (ASM) and not in Azure Remote Management (ARM/CSP). It provided a very easy way to deliver remote desktop services connections to desktop applications that were hosted in a collection of Remote Desktop Services (RDS) session hosts. There were a few nice features about the solution, including:
- The licensing was a simple, all-inclusive, per-user charge. If you used the service, you were charged based on how many users had access and how much they used the service. If you didn’t deploy the service (maybe for “normal” times in a DR scenario), then there was no charge. And the cost of the RDS CAL was included with the cost of the VMs (including Windows license and CAL) that powered the service.
- It was simple to deploy and design compared to a normal RDS farm. There are a lot of pieces in an RDS farm. With Azure RemoteApp, Azure handled the connection broker, SSL gateways, and all the other RDS pieces behind the scenes; all you needed to provide RemoteApp with was an image of your session host, user accounts (via Azure AD), a domain to join (for optimal usage and management), and a virtual network to connect to.
- It made for a nice way to provide users with a way to connect to legacy client-server applications that are hosted in the cloud, bypassing the effects of latency by moving the client experience to the same virtual network as the services/data.
On August 12th, Microsoft announced the deprecation of Azure RemoteApp, and as one expect, marketing told us that this was a good thing. Personally, I was shocked. I like the easy package of RemoteApp, the wrapped up pricing that didn’t require another licensing program outside of Azure, and the ability to fire up RemoteApp on demand using a PowerShell script or Azure Automation. What left me further stunned was that we were told we had one year to find an alternative and that the recommended solution was vapour-ware from Citrix … a solution that was just announced but would not be available until Q1 or Q2 of 2017.
Customers need an alternative to Azure RemoteApp. We have known since Microsoft Ignite that Citrix has plans for 2 solutions, but there are others that we can consider, too; I’ll discuss these options so that you can start planning now.
Remote Desktop Services
Azure RemoteApp might be dead, but this doesn’t mean that RDS in Azure is dead, too. There is nothing to stop you from deploying an RDS farm in Azure using Azure virtual machines — this is the first thing I ever deployed in Azure because I wanted to experience what a client/server solution would be like. You’ll either do a one machine deployment for a very small number of users, or you’ll design a scaled out RDS farm will all of the RDS components running in their own virtual machines.
Azure RemoteApp used Standard A3 (4 cores, 7GB RAM) virtual machines for the session hosts — this was what Microsoft, Azure, and some RDS MVPs recommended because it balanced price, performance, and scale-out abilities. Today, you might consider the Av2-Series virtual machines. They are lower cost, and the M variants offer larger amounts of RAM. The Standard A3 costs roughly $267 per month (North Europe), but the slightly larger A4v2 (8GB RAM) costs just $203 per month. You also have the option of using N-Series virtual machines if GPU performance is required for workloads such as AutoCAD.
Note that the cost of a Windows Server virtual machine includes the Windows CAL, but it does not include the cost of an RDS CAL. You must license users for RDS via one of these methods:
- Purchase RDS CALs with Software Assurance via volume licensing
- Lease RDS SALs on a per month basis via a SPLA-R agreement
The masters of the server-based desktop, Citrix, has published guidance on how to deploy XenApp on Azure. Like with the above RDS solution, instead of deploying Citrix with on-premises virtual machines, you use Azure virtual machines instead.
Licensing-wise, things get complicated here. You’ll need:
- Azure virtual machines (and all their dependencies)
- RDS licensing for each user (see above)
- Citrix licensing
Potentially, you’re acquiring licensing via three different channels for something that is meant to be “utility computing.”
Citrix and Azure Partnership
The silver lining that Microsoft marketing put in the cloud (of the death of Azure RemoteApp) is that Microsoft is partnering with Citrix to deploy alternative solutions for RemoteApp.
Blackmail jokes aside, there is some gossip about why Microsoft went with Citrix for an insourced desktop/VDI solution instead of using its own code. I cannot state that any of this is fact, but there might be some grain of truth in the following:
- Microsoft has had success in using other vendors’ code in Azure. Docker, Mesosphere, and Hadoop are all examples of where Microsoft could have coded something itself (and might have already started) but realized that others are better at it than the Redmond-headquartered corporation already was.
- Azure RemoteApp was not very scalable. I had heard from people that I trust that it did not scale well beyond 1,000 users per deployment.
- Microsoft was having trouble migrating RemoteApp to Azure Resource Manager (ARM).
Microsoft and Citrix co-announced in the Summer that Citrix would be bringing two of its services to Azure:
- XenApp Express
- XenDesktop for Windows 10
Both of these solutions will be:
- Deployed and managed from the Citrix Cloud portal, which just happens to be hosted on Azure, but that’s kind of irrelevant; you will still have to log into a Citrix portal, which means that you will have two points of management and two management experiences.
- Be deployed in your Azure subscription from the Citrix Cloud portal.
- Able to leverage all kinds of Azure virtual machines, including the N-Series machines, which offer direct hardware access to NVIDIA graphics processing units (GPUs). This means that high-demand applications such as AutoCAD should perform very well in the cloud.
XenApp Express is a direct successor to Azure RemoteApp; based on what was shown at Microsoft Ignite by Citrix, the solution looks very similar to RemoteApp. Citrix deliberately maintained the deployment experience, the language, and it is executed similarly. Virtual machines operate as session hosts, each of which hosts many virtualized session environments for multiple users at a time.
XenDesktop is quite interesting because it brings with it a much-demanded licensing change for Windows 10. Hosted VDI on shared infrastructure has not been possible (licensing terms) using the Windows desktop operating system until now. Windows 10 Enterprise will have conditions to allow hosted VDI and Citrix will leverage this for XenDesktop running on Azure. I’m not sure what the precise licensing terms are just yet — no real detail was shared at Ignite — but it is a start!
What Citrix presented was very interesting looking, but I had some concerns:
- You must deploy its services from the Citrix cloud. I don’t like that at all because it doubles the management experience and it sets a bad precedent for future insourcing on Azure.
- The licensing model that was shared at Ignite was a disaster. Part of RemoteApp’s attractiveness was the per-user simplicity. Citrix requires licensing from them, Microsoft volume licensing and SPLA-R, and Azure. The two companies need to come up with a profit sharing scheme where using Citrix on Azure is a simple per-user charge that is deducted by Azure based on usage. That will help adoption, contrary to the death-by-licensing approach that was shared a few months ago.
- Although all of this is good news for larger enterprises, small-to-midsized enterprises have not been Citrix customers; they went with RDS in the past because it was affordable (half the price) and did just enough. It feels like Microsoft has abandoned this market — maybe Azure RemoteApp just didn’t get enough usage?
We expect to see Citrix XenApp on Azure appear as a technical preview very soon, with general availability expected before the scheduled death of Azure RemoteApp in August. Citrix claimed that XenDesktop should appear as an Azure service in Q4 2016 – at the time of writing Citrix, had one month left to meet that deadline.
You have some options available to you. If you have a pressing need, you can deploy RDS or XenApp using Azure virtual machines yourself. That will require more machines than a hosted solution such as Azure RemoteApp, but it will solve a need. If you can wait, Citrix will bring two services to Azure over the next 10 months; hopefully, in that time, Citrix and Microsoft can figure out the logistics to make the services both affordable and logistically easier to consume.