Microsoft Application Virtualization (App-V)
Microsoft Application Virtualization (also known as App-V; formerly Softricity SoftGrid) is an application virtualization and application streaming solution from Microsoft. It was acquired by Microsoft during the acquisition of Boston, Massachusetts-based Softricity (SoftwareWow!) on July 17, 2006. Softgrid represents Microsoft’s entry to the application virtualization market, alongside their other virtualisation technoligies such as Hyper-V, Microsoft Virtual Server, Microsoft Virtual PC, and System Center Virtual Machine Manager.
Microsoft Application Virtualization (MS App-V) platform allows applications to be deployed (“streamed”) in real-time to any client from a virtual application server. It removes the need for traditional local installation of the applications, although a standalone deployment method is also supported. With a streaming-based implementation, only the App-V client needs to be installed on the client machines; all application data is permanently stored on the virtual application server. Software is streamed on demand when it is first used, or pre-installed in a local cache. The App-V stack sandboxes the execution environment so that an application does not make changes directly to the underlying operating system’s file system and/or Registry, but rather contained in an application-specific “bubble”. App-V applications are also sandboxed from each other, so that different versions of the same application can be run under App-V concurrently, and so that mutually exclusive applications can co-exist on the same system.
MS App-V thus allows centralized installation and management of deployed applications. It supports policy based access control; administrators can define and restrict access to the applications by certain users by defining policies governing the usage. App-V can require that applications not be run ‘cached’ from workstations, or require that ‘cached’ App-V applications routinely update license information from the App-V server, enforcing license compliance. These policies are centrally applied on the application repository. App-V also allows copy of the applications across multiple application servers for better scalability and fault tolerance, and also features a tracking interface to track the usage of the virtualized application.
The App-V client presents the user with a list of applications, to which the user has access. The user can then launch a virtualized instance of the application. Depending on the configuration, the systems administrator can be either notified of the action via email or it can require an explicit confirmation from the administrator for the application to start streaming and initialize or it can just simply check the Active Directory for the user’s rights and stream the application to the user if it is authorized to run the application. The App-V client can also install local shortcuts that bootstrap the process of launching individual virtualized software instances.
Dedicated App-V management server
The App-V system architecture is composed of the following components:
- Microsoft Systems Center Virtual Application Server, also called App-V Application Server, which hosts virtualized application packages and streams them to the client computers for local execution. It also authorizes requesting clients and logs their application usage. Applications are converted to virtualized packages using the App-V Sequencer.
- Microsoft Application Virtualization Client for Windows Desktops of MDOP) or Microsoft Application Virtualization Client for Remote Session Hosts (i.e. Terminal Services), which are generally called the App-V client, is the client side runtime which requests the application server to stream some application, receives the streamed virtual application packages, sets up the runtime environment and executes the applications locally.
- App-V Management Console, the management tool to set up, administer and manage App-V servers. It can be used to define policies that govern the usage of the applications. It can also be used to create, manage, update and replicate virtualized application packages.
- App-V Sequencer, a tool for preparing applications for virtualization.
Shared System Center Configuration Manager
In 2009 Microsoft offered a new way to implement App-V with enhancements to System Center Configuration Manager. System Center Configuration Manager Architecture consists of the following components:
- System Center Configuration Manager Site Server, serving as the primary repository for holding system images, application packages created using traditional installers, and virtual applications.
- System Center Configuration Manager Distribution Server, used to cache and distribute the software on a more local level.
- Microsoft Application Virtualization Client for Windows Desktops of MDOP) or Microsoft Application Virtualization Client for Remote Session Hosts (i.e. Terminal Services), previously described.
- App-V Sequencer, previously described.
The App-V clients may also be used in a “stand-alone” mode without either of the server infrastructures previously described. In this case, the sequenced packages are delivered using an external technique, such as an Electronic Software Delivery system or manual deployment.