Citrix App Layering
In January 2017, Citrix announced that they have acquired Unidesk — the leading application packaging (layering) and lifecycle management solution for the digital workspace. By incorporating Unidesk technology into XenApp and XenDesktop, Citrix advances its industry leadership by offering the most powerful and easy to deploy application layering solution available for delivering and managing app and desktops in the cloud, on-premises and in hybrid deployment environments.”
Application layering (app layering) is a technology for delivering virtual applications that run in layers separate from a virtual desktop, but interact with the operating system and other apps as if they are installed natively on the base image. Citrix App Layering, also known as Enterprise Layer Manager (ELM).
Why App Layering required?
One of the biggest issues when it comes to application virtualization is that simply not all applications can be virtualized and you may be left with hundreds in mid-sized companies and Cloud based applications may won’t fit all use cases. This is where application layering can help.
Application layering is not meant as a replacement for application virtualization, In fact, we could say that they go hand in hand. Today there are multiple layering solutions available, and while the concept is the same, they all take a (slightly) different approach.
Application Virtualization runs in user-space, and therefore there are some restrictions to what it can run (Antivirus, VPN, Boot stuff, Kernel Stuff, Drivers and so on) whereas Application layering is a bit different, it basically uses a filter driver to merge different virtual disks which will then make up a virtual machine.
In the application layer space, there are four leading products/vendors: Unidesk (Now, Citrix App Layering), Vmware AppVolumes, Citrix AppDisks, Liquidware labs & FSLogix App Container.
Why App Layering required when Citrix App Disk & Personal vDisk (PvD) exists?
Citrix AppDisk is introduced from the version XenApp and XenDesktop 7.8, which deliver a software application in a layer that is independent from the virtual desktop operating system (OS). Good thing with Appdisks is integrated into the Citrix Studio Console. AppDisks is Applications only and it is not layered with any other layers.
Citrix has other solutions for the OS-layer (MCS or PVS) And for user layer, they have PVD for the profile which can be writeable. While Unidesk offers full-stack layering technology , which enhances compatibility by layering the entire Windows workspace as modular virtual disks, including the Windows operating system itself (OS layer), apps (app layers), and a writable persistent layer that captures all user settings, apps, and data.
Citrix is deprecating the AppDisk and Personal vDisk functionality provided by XenApp and XenDesktop with recently acquired technology from Unidesk (App Layering). App Layering integrates with all layers OS Layer, Platform Layer, App Layer, Layered Image, Elastic Layer and User Layer
Citrix App Layering takes a different approach to layering than any other vendor in the world — where it layer not just applications, but the operating system as well. This eliminates traditional image management complexities.
Citrix App Layering is available in all editions with the exception of XenApp Secure Browser Edition. This means that you can do the following across any number of XenApp and XenDesktop sites in your environment:
- Create an unlimited number of OS, platform and application layers
- Create an unlimited number of layered images
- Create an unlimited number of elastic layers
XenApp and XenDesktop Platinum edition customers also benefit from:
- Multiple hypervisors and/or cloud connections (e.g. XenServer and Azure or XenServer and Hyper-V). Non-Platinum sites are limited to one hypervisor or cloud connection type.
- Multiple provisioning mechanisms (e.g. Machine Creation Services and Provisioning Services). Non-Platinum sites must select MCS or PVS and use it exclusively with Citrix App Layering.
- Multiple broker types/platforms (e.g. XenApp and XenDesktop with VMware Horizon View). Non-Platinum sites can only use App Layering within their XenApp and XenDesktop sites
- User Layers (currently available in Labs preview for Windows 7 and Windows 10)
A simple addition to your environment
A Citrix App Layering deployment is the App Layering appliance, which is a virtual appliance that you deploy in your environment. The App Layering appliance is also known as the Enterprise Layer Manager. The App Layering appliance hosts the App Layering management console. In the management console you can create layers, and assign them to layered images or directly to users by using elastic assignment.
By using app layering you can create OS, app, and platform layers one time. You then use them to create any number of image templates from which you can publish layered images. You can update the OS, app, or platform software by adding a new version to the layer for each patch or update that you apply.
In app layers, you can deploy virtually any applications compatible with the OS. Each app layer can include one or more applications. When an upgrade to an application is ready, you can add the new version to the layer for the latest update.
Platform layers are designed to support your environment. A platform layer includes your hypervisor tools and settings. The tools and settings make it easy to create layers by using virtual machines in your hypervisor environment. A platform layer that includes your hypervisor, provisioning service, and connection broker software isolates app and OS layers from the infrastructure where they are published.
Understanding App Layering Functionality
App Layering separates the management of your operating system and apps from your infrastructure. Moreover, these applications are actually stored as separate manageable objects in their own virtual disks. The Windows OS and applications (or groups of applications) are stored as their own virtual disks (VHDs or VMDKs) and contain only the files, system objects, and registry entries for that specific layer.
Citrix App Layering includes layer platform tools and software to hold infrastructure-related software and settings. You can maintain platform-independent OS and app layers.
You can create any combination of these app layers and an OS layer as part of a layered image, and publish it to your target platform.
You can install an application or operating system once, and deploy it as part of any number of images.
The OS layer is the first layer you create because it is required for creating app layers, platform layers, and image templates. Using the same operating system for all of your layers and images means that you can patch an OS layer once to update it everywhere. For example, after one OS update, you can republish the images for an entire server farm.
Each app layer contains the OS layer you want to use for your layers and layered images. It also includes the installed and configured application that is in the state in which you want users to encounter when they log on.
You can deliver one of more of your app layers to users as elastic layers that appear on the user’s desktop when they log on without restarting.
Application layers can be “attached” to the virtual machine in one of two ways:
- App Layers can be combined with an OS Layer, in a process called image publishing, and pushed to existing provisioning systems (MCS or PVS or Vmware View Composer)
- App Layers can be attached to a VM at user login based on user AD group membership and app assignments. Each user can also receive a unique “Personalization Layer” Where user holds customized profile and applications.
A Layer is simply a container for the file system objects and registry entries unique to that layer. As an example an “Application Layer” is just the files and registry entries that have been added, changed or even removed during the application installation onto an operating system.
Citrix App Layering leverages a Microsoft Minifilter driver to intercept I/O requests from Windows and respond to the request from the appropriate virtual disk. Within Windows, the applications just “see” a holistic C:\ drive that looks like the apps are installed. But because of the Composite File System, the C:\ drive is in reality a logical drive that is made up of the base Layered Image and a series of virtual disks (one per Layer) mounted to the VM.