Using restrictive tags in XenApp & XenDesktop 7.12 allows you to selectively choose which VDA machines launch applications or desktops, regardless of what other machines exist in the same Delivery Groups.
Ever witnessed Delivery Group sprawl? It was a possiblility using earlier versions of XenApp and XenDesktop under the FMA architecture. You created separate Delivery Groups for single applications and desktops because you needed to apply different policies based on the application that was being accessed. You had different versions of server OS meaning you needed multiple Delivery Groups. Basically it was easy to end up with a lot of different Delivery Groups and extra time creating and maintaining the lifecycle of those Delivery Groups.
How about when you have ten application servers that use ODBC connections to SQL databases. You have two ODBC connections, one for Live and one for Testing on each VDA. You create a Test PVS Maintenance vDisk version that has the Testing ODBC connection pointing to a newer SQL database. Only one of the ten PVS Target VM is booted to the Test version. You now need that Testing application to launch only from one of the ten VDA machines without affecting anything else. You would probably have had to move that machine in to it’s own unique Delivery Group to ensure the application only launches from the test mode Target VM.
Updating an applcation? Now you only want to publish is to a small number of servers for testing, rather than all. This is not more easily possible.
Now you can use tags to restrict where the application is launched from. This will reduce administration and the need for additional Delivery Groups in your Citrix Site.
Look at the below example and how one Delivery Group is used to deliver a Shared Desktop and multiple applications. The VDAs could be using the same base image or they may be different images. Either way only certain machines will launch Microsoft Office, Calculator, RDP and so on. In previous versions of XenApp and XenDesktop multiple Delivery Groups would have been required.In this example I have two VDA machines (VDA1/VDA2) assigned to a Delivery Group. To split application resources we simply assign tags against desired VDAs and then use those same tags when creating Application Groups. For now, I want VDA1 and only VDA1 to launch Calculator. Within the Delivery Group click on a VDA and then click Manage Tags.No tags have been created or assigned to VDA1 yet. Click Create. Enter a name and description. Click OK. Click Create. A tag of Calculator is now assigned to VDA1. At this point we can create an Application Group to deploy Calculator. Right-click Applications and click Create Application Group. Click Next. Check the Delivery Group which contains the VDA tagging. Check Restrict launches to machines with tag. Use the drop-down box to select the Calculator tag. Notice Machines = 1 of 2. This shows that only one machine (VDA1) will be considered to launch applications within this Delivery Group, because VDA1 has the Calculator tag. Click Next. Select Allow any users in the selected Delivery Groups to use applications in this Application Group. This means user association is set at the Delivery Group level. Click Next. Browse for, and add Calculator. Click Next. Specify a name and click Finish. Now when users launch Calculator, VDA1 will only be considered for launch. When you want to restrict shared desktop launch from specific VDAs, create another tag and assign it to desktops you want to be considered for launch. Edit a Delivery Group, navigate to Desktops -> Add. Select Restrict launches to machines with tag and choose the Desktop tag. Click OK. From now desktops will only be launched from in my case VDA2.