7 min read

Getting Started with Microsoft Application Virtualization 4.6

Q: What is the need for virtualization?

A: With virtual environments we rapidly start gaining the agility, scalability, cost-saving, and the security that almost any business today requires. Following are some advantages:

  • Reduces infrastructure downtime by several hours
  • Saves time and resources that is spend deploying/providing operating systems to users
  • Saves troubleshooting time for application installations

Q: How do cloud service models assist virtualization?

A: The cloud service model is all around us, which presents to us several new ways of thinking about technology:

  • Software as a Service (SaaS or S+S): Delivering applications over the network without any local installations or maintenance.
  • Platform as a Service (PaaS): Providing solutions, like an Active Directory solution, as a service, avoiding the deployment tasks.
  • Infrastructure as a Service (IaaS): Supplying computer infrastructure as a service. Instead of companies thinking about buying new hardware and the maintenance costs that implies, the infrastructure is provided (typically in virtual machines) as they need it.

Q: Where do we stand today with regards to virtualizastion?

A: Fortunately, today’s demand regarding virtualization is incredibly high, which is why the possibilities and offerings are even higher. We can virtualize servers, appliances, desktops, and applications, achieving presentation and profile virtualization; you name it and there’s probably already a bunch of products and technologies you can use to virtualize it.

Application virtualization is still one of the emerging platforms but is increasing rapidly in the IT world. More and more of the dynamic aspects of isolating and scaling the applications deployment are being implemented. And Microsoft’s App-V represents one of the strongest technologies we can rely on.

Q: How does virtualization achieve faster and dynamic deployments?

A: Handling server or desktop deployments is always a painful thing to do, requiring hours of deployment, tuning, and troubleshooting; all of these aspects are inherited in any operating system lifecycle. Having virtual machines as baselines would reduce OS deployment from several hours to a few minutes.

The desktop virtualization concept provides the end user the same environment as using a local desktop computer but working with remote computer resources. Taking this strategy will enhance the provisioning of desktop environments, more resources can be added on demand, and the deployment will no longer depend on specific hardware.

Building virtual machines templates ready to go, self-service portals to provision virtual machines for our power users whenever they need a virtual environment to test an application; these are some of the other features that can be included using a virtualization platform.

Q: How does virtualization achieve cost savings?

A: Listed below are two major factors that acheive cost saving:

  • Lower power consumption: Large datacenters also include large electricity consumption; removing the physical layer from your servers will translate yearly to a nice reduced number in electrical bills. This is no small matter; most of the capacity and costs planning for implementing virtualization, also includes the “power consumption” variable. It won’t be long until “Green Datacenters” and “Green IT” will be a requirement for every mid-size and large business.
  • Hardware cost savings: Before thinking about probably needing expensive servers to host your entire infrastructure let me ask you this, did you know that the average hardware resources usage is around 5% to 7%? That means we are currently wasting around 90% of the money invested in that hardware. Virtualization will optimize and protect your investment; we can guarantee that the consolidation of your servers will be not only effective but also efficient.


Q: How does virtualization improve efficiency?

A: There’s a common scenario in several organizations where there are users that only depend on, for example, the Office suite for their work; but the cost of applying a different hardware baseline to them, that fits their needs exactly, is extremely high. That is why efficiency also plays an important variable in your desktop-using desktop virtualization you can be certain that you are not over-or under-resourcing any end-user workstation. You can easily provide all the necessary resources to a user as long for as they need them.

Q: How does it achieve scalable and easy-to-manage platforms?

A: A new contingency layer for every machine, taking a snapshot of an operating system, is a concept that didn’t appear before virtualization existed. Whenever you introduce a change in your platform (like a new service pack release) there’s always a risk that things won’t be just as fine as they were before. Having a quick, immediate, and safe restore point of a server/desktop could represent a cost-saving solution.

Virtual machines and snapshot possibilities will give you the necessary features to manage and easily maintain your labs for testing updates or environment changes, even the facilities to add/remove memory, CPUs, hard drives, and other devices to a machine in just a few seconds.

Q: How does virtualization enhance backup and recovery?

A: Virtual environments will let you redesign your disaster recovery plan and minimize any disruption to the services you are providing. The possibilities around virtual machine’s hot backups and straightforward recoveries will give you the chance to arrange and define different service level agreements (SLAs) with your customers and company.

The virtualization model offers you the possibility to remove the hardware dependencies of your roles, services, and applications; a hardware failure can present only a minor issue in the continuity of your business, simply by moving the virtual machines to different physical servers without major disruptions.

Q: How is application deployment incompatibility issue addressed?

A: Inserting a virtualized environment into our applications deployment will reduce the time invested in maintaining and troubleshooting operating system and applications incompatibilities. Allowing the applications to run in a virtualized and isolated environment every time they are deployed removes possible conflicts with other applications.

It is also a common scenario for most organizations to face incompatibility issues with their business applications whenever there’s a change—new operating system, new hardware, or even problems with the development of the application that starts generating issues with particular environments. You can say goodbye to those problems, facilitating real-time and secure deployments of applications that are decoupled from tons of requirements.

Q: What is Application Virtualization?

A: As virtual machines that work abstracting the hardware layer from physical servers, application virtualization abstracts the application and its dependencies from the operating system, effectively isolating the application from the OS and other applications.

Application Virtualization, in general terms, represents a set of components and tools that remove the complexity of deploying and maintaining applications for desktop users; preserving only a small footprint of the operating system.

Getting more specific, Application Virtualization is a process for packaging (or virtualizing) an application and the environment in which the application works, and distributing this package to end users. The use of this package (which can contain more than one application) is completely decoupled from the common requirements (like the installation and uninstallation processes) attached to applications.

The Technical Overview of Application Virtualization offered by Microsoft represents a fine graphic explanation about how normal applications interact with the operating system and their components; and how virtualized applications do the same. Take a look at http://www.microsoft.com/systemcenter/appv/techoverview.mspx.

Q: What are the drawbacks of a normal business application scenario?

A: The three major aspects are:

  • Special configurations every time that is deployed. Customizing files or setting special values within the application configuration environment.
  • It is also interconnected with other applications (for example, Java Runtime Environment, a local database engine, or some other particular requirement).
  • It demands several hours every week to support end users deployments and troubleshooting configurations.

Application Virtualization offer us the possibility to guarantee that end users always have the same configuration deployed, no matter when or where, as you only need to configure it once and then wrap up the entire set of applications into one package.

Q: How does Application Virtualization differ from running normal applications?

A: In standard OS environments, applications install their settings onto the host operating system, hard-coding the entire system to fit that application’s needs. Other applications’ settings can be overwritten, possibly causing them to malfunction or break.

Here’s a common example of how two applications co-exist in the same operating system, and if these applications share some registry values the application’s (or even operating system’s) usability could be compromised.

FAQ on Virtualization and Microsoft App-V

With Application Virtualization, each application brings down its own set of configurations on-demand, and executes in a way such that it only sees its own settings.

Each virtual application is able to read and write information in their application profile and can access operating system settings in the registry or DLLs, but cannot change them.

FAQ on Virtualization and Microsoft App-V

Subscribe to the weekly Packt Hub newsletter

* indicates required


Please enter your comment!
Please enter your name here