Chapter 11: Software Virtualization Solution Overview
Software Virtualization Solution lets you remotely deploy and manage virtual applications and data using Notification Server-based packages and policies. Software Virtualization Solution works similarly to Software Delivery Solution and shares many features.
- Software Virtualization Solution Components
- Software Virtualization Solution Usage Overview
- Software Virtualization Solution Features
Software Virtualization Solution Components
When Software Virtualization Solution is installed, folders and items are placed in various tab views of the Altiris Console. You can use these folders and items to create and manage packages, programs, and software virtualization tasks. All folders and items for Software Virtualization Solution are placed in the Software Management > Software Virtualization > Windows folder in the left pane of the various tab views.
- Virtual Software Packages Overview
- Package Download Overview
The following table lists the shortcut menu items that are added after Software Virtualization Solution is installed. These can be accessed when you right-click a folder or item in the left pane on the Tasks tab.
|Folder||Shortcut Menu Item||Description|
|Virtual Software Tasks||A container for the software virtualization tasks that you create.|
|Wizard and Status||Opens the software virtualization Wizard. This wizard takes you through the steps of creating packages and setting up software virtualization tasks to deliver those packages. See Creating Virtual Software Packages.|
The Virtual Software Package folder is provided as a container for the software virtualization packages that you create. You can also manage the virtual packages on client computers. You can do this in one of two ways:
- Open a computer resource and view and manage the Virtual Software Packages on the computer.
- Open a Virtual Software Package Resource and view and manage it on the computers it is deployed to.
For information, see Managing Virtual Software Packages Using the Resource Manager.
From the Reports tab, you can view software virtualization reports. Reports let you analyze your data. Each Altiris solution includes predefined reports that you can use or modify, or you can create your own reports.
Software Virtualization Solution provides numerous predefined reports to help you analyze your asset information.
These reports are found in the Altiris Console under the Reports tab by selecting Reports > Software Management > Software Virtualization > Windows in the left pane.
In addition to the above reports, you can create reports related to software virtualization task usage. Software Virtualization Solution also provides the ability to automatically delete old reports.
For information on these features, as well as using predefined reports and creating custom reports, see Altiris Notification Server Reference.
From the Configuration Tab, you can install, upgrade, or install the Software Virtualization Agent. You can also assign security privileges for software virtualization administrative functions. For information, see Installing Software Virtualization Solution.
Virtual Software Packages Overview
Virtual Software Packages are Notification Server resource objects that are used to deploy virtual applications or virtual data layers to managed client computers. These are similar to Software Delivery Packages that are used in Software Delivery Solution.
Virtual Software Packages contain Virtual Software Archive (VSA) files that are created using the Software Virtualization Solution Admin (SVS Admin) tool. For information on creating VSAs, see Getting Started with Virtual Software Layers and Archive Files.
As part of the package definition process, you specify the locations from which an Altiris Agent can download the package. By default, a package can be downloaded from the location specified in the package as the source for the package. You can also specify Package Servers where a package can be obtained. Package Servers let you reduce the load on the Notification Server and the network by distributing packages to multiple locations from which they can be downloaded. For more information on package servers, see the Altiris Notification Server documentation.
The Altiris Agent stores package files on the same drive that the agent installed (in the install path\Altiris\Altiris Agent\software virtualization\Package GUID folder). When installing the Altiris Agent, install the Altiris Agent on a drive with sufficient space for all the files that will be downloaded. If the Altiris Agent does not have sufficient disk space to download a package, a message is displayed by the Altiris Agent and a status message is sent to the Notification Server. If the end user manually deletes the package files, the Altiris Agent will re-download them from the Notification Server the next time the Altiris Agent tries to run the package.
Virtual Software Package Actions and States
When a package is deployed to a client computer, there are different actions that you can perform on it. Those actions control the two different states of a package: activated and deactivated. The following table describes the possible actions and states:
|Import||The layer files in a VSA file are installed in the hidden SVS redirection area on the client computer. However, imported files are not visible until the layer is activated.|
|Activate||The layer files that have been imported on a client computer are made visible to the user. Activation and deactivation occur almost instantaneously.|
|Deactivate||The imported layer files are hidden from the user but are kept on the computer.
Note You cannot deactivate a layer while a process is running from that layer. For information, see Deactivating Layers with Services Running.
|Deactivate (Force)||The layer is forcefully deactivated by killing all the running applications from that layer. This might cause undesired results.|
|Delete||The imported layer files are removed from the computer.|
|Delete (Force)||The layer is forcefully removed by killing all the running applications from that layer. This might cause undesired results.|
|Reset||Deletes all of the user's profiles in a layer that were added or changed. The data in the Writeable sublayer is deleted, leaving only the files in the Read-only sublayer. See Resetting Layers (page 45).
Note Data layers cannot be reset. Hence, "Reset", "Reset and Activate" and "Reset and Deactivate" are not available for data layers.
|Reset (Force)||Deletes all of the user's profiles in a layer that were added or changed, killing all the running applications from that layer. This might cause undesired results.|
|Activated||The imported layer files are made visible to the user.|
|Deactivated||The imported layer files are hidden from the user.|
|Combination of Actions and States|
|Import and Activate||The layer files are placed in the SVS redirection area on the client computer and are made visible to the user.|
|Reset and Activate||The layer files are reset to their original imported state by deleting all user data and changes (Writeable sublayer), and the layer is visible to the user.|
|Reset and Deactivate||The layer files are reset to their original imported state by deleting all user data and changes (Writeable sublayer), and the layer is not visible to the user.|
Virtual Software Package Programs
You can configure tasks to perform actions to control the state of the Virtual Software Packages. Software Virtualization Solution provides the following predefined programs:
Virtual Software Package Program Options
|Import and Activate||Use this to deploy the Virtual Software Package, import the layer, and activate the layer. This means the package contents will be copied to the client computer and the files will be visible to the user.|
|Import||Use this to deploy the Virtual Software Package and import the layer, but not make the files visible to the user.|
|Activate||Use this to activate a Virtual Software Package that has been imported, but is not currently visible to the user.|
|Deactivate||Use this to make an imported Virtual Software Package not visible to the user.|
|Reset||Use this to return the Virtual Software Package to its original imported state and delete all user data and changes. The package remains in the activated/ deactivated state that it is currently in.|
|Reset and Activate||Use this to return the Virtual Software Package to its original imported state by deleting all user data and changes, then making the files visible to the user.|
|Reset and Deactivate||Use this to return the Virtual Software Package to its original imported state by deleting all user data and changes, then make the files not visible to the user.|
|Delete||Use this to delete Virtual Software Packages from the client computers.|
For information on defining Virtual Software Packages, see Creating and Using Notification Server Virtual Software Packages. For information on defining Virtual Software Tasks, see Deploying Virtual Software Packages.
Package Download Overview
When a new package is defined, the package will be automatically downloaded to the appropriate Altiris Agent Package Server the next time the Altiris Agent requests configuration information from Notification Server. If you modify a package definition within the Altiris Console, the changed files in the package will also be downloaded to the appropriate Altiris Agent computers when the Altiris Agents check for configuration information.
To send a package to a group of computers, the package must be assigned to a software virtualization task, the destination computers must be a part of a collection assigned to the task, and the task must be enabled. For information, see Deploying Virtual Software Packages.
If the actual files in a package change, Notification Server automatically recognizes the changes. Notification Server checks for changed package files on a regular basis (once a day by default). If Notification Server determines that files in a package have changed, Notification Server will inform the appropriate Altiris Agents that the package has changed. Only the changed files will be downloaded to the Altiris Agent again. The interval that Notification Server checks for changed files can be modified (for information, see Changing the Check for Updated Package Files Schedule on page 123). The less frequently the check is made, the longer the time is required for a changed package to be available on an Altiris Agent computer. The more frequently the check is made, the more processing resources are required by Notification Server.
If the Software Virtualization Solution Agent cannot download a package due to a link failure or denied access so a connection cannot be established, the Altiris Agent will report a "Download failed - Link failure" status message. The Software Virtualization Solution Agent will back off for N minutes (where N increases exponentially from a default of 3 minutes to a default of 2 hours) before attempting to download the package again.
If the Altiris Agent detects a network status change (a new network link), any package waiting for a retry at being downloaded immediately restarts. The back off interval is then reset to the initial value.
If a connection is lost during the download of a package, the transfer rate is throttled. When the Altiris Agent attempts to download the package again, a buffer transfer delay applies and slows down the download. The Altiris Agent determines which files in the package still need to be downloaded and downloads those files.
If a source or destination fails during a package download, the checkpoint recovery feature lets you continue the download of a package without starting over. Example: You are deploying a package that is 20 MB in size and there is a network failure 15 MB into the deployment process. When your systems are back up, the package deployment resumes at the 15 MB point. The checkpoint recovery feature is always available; you do not need to enable it.
Software Virtualization Solution Usage Overview
Using Software Virtualization Solution involves defining Virtual Software Layers and Packages, creating Software Virtualization Tasks to deploy packages, and monitoring feedback. The following steps outline the virtual software deployment procedure.
To deploy a Virtual Software Package
- Install Software Virtualization Solution on a Notification Server. See Installing Software Virtualization Solution.
- Create Virtual Software Layers and Archive Files to include in Virtual Software Packages. See Getting Started with Virtual Software Layers and Archive Files.
- Rollout the Software Virtualization Agent to client computers. See Deploy the Software Virtualization Agent.
- Use the Software Virtualization Wizard to do the following:
- Create a Virtual Software Package
- Create a Software Virtualization Task to deploy the Virtual Software Package to client computers
You can quickly create both packages and tasks using the Software Virtualization Wizard. For information, see Create a new Virtual Software Package and Task.
For information about manually creating packages and tasks, see Manually Creating Virtual Software Packages and Manually Creating a Virtual Software Task.
Software Virtualization Solution Features
Software Virtualization Solution shares the following features with Software Delivery Solution:
- Bandwidth Throttling
- Software Portal
Bandwidth throttling lets you control the amount of bandwidth used in the delivery of packages. This feature can help minimize the impact of software deployment at peak network usage times.
When the Software Delivery Agent (which is installed along with the Altiris Agent) downloads a file, the agent downloads the file buffer by buffer with a delay between each buffer. The buffer size and the amount of delay between buffers are both configurable through the Altiris Agent. Different values can be used depending on the bandwidth usage.
If bandwidth control is disabled by the user, the Software Delivery Agent will use no (0) delay between buffers when downloading files. Effectively, the agent uses all of the available bandwidth for package download.
If bandwidth control is enabled, the agent will test the data transfer rate by using full bandwidth to download a package for 10 seconds, and then estimate the transfer rate during that period of time. If the estimated transfer rate is less than a threshold, the agent will then use a delay between buffer downloads to slow down the download process. The data transfer rate test is done every two minutes to re-evaluate the link speed during the package download. Therefore, bandwidth usage depends on the transfer rate of the package download. For more information on the throttling feature, see the Altiris Notification Server Reference.
Blockout lets you block out times in which packages are delivered with a high priority, low priority, or not at all. This feature lets you ensure that package delivery does not take up significant network bandwidth during peak usage times. For more information on the blockout feature, see the Altiris Notification Server Reference.
Multicasting lets you transmit packages to a select group of recipients. This feature improves Package Server performance on large networks for large customers using significant amounts of network bandwidth. It protects Package Servers from being overloaded and helps prevent slow network responses when distributing large packages.
Multicasting reduces the load on Package Servers by reducing the number of Altiris Agents that connect to the Package Server and decreases network utilization by multicasting package data to peers.
Sample Multicasting Scenario
A remote network segment consists of five Altiris Agents that remotely communicate to the Notification Server.
When the first Altiris Agent updates its configuration, it is notified that there is a package ready for download. If this Altiris Agent has multicasting enabled, it will begin a multicast session and ask if any other Altiris Agents in the segment already have this package. As other Altiris Agents in turn update their configuration and are also asked to download this package they will join the multicast session to register that they too need to download the package.
The Altiris Agents first negotiate to see who is going to be the 'master' of the session. After the minimum numbers of Agents per multicast session join, one of two things will occur:
- If one of the Altiris Agents has the package, then it becomes the multicast master. The master then waits for the minimum number of agents to join the session.
- If no Altiris Agent in the session has the package, then they negotiate with each other and pick a multicast master based on their respective OS, OS type, CPU speed, and memory. This has a minimum timeout of 240 seconds. After the master is chosen, it downloads the package in the usual manner and then waits for the minimum number of agents to join the session.
The master Altiris Agent then multicasts the package over the physical subnet so that each of the Altiris Agents in the multicast session can receive it.
If an Altiris Agent requests a package after it has been available for some time, it attempts to join an existing session or else it begins a multicast session as normal.
This process optimizes the package download procedure. Only one Altiris Agent per session will communicate with the Package Server or Notification Server to download the package. Previously, each Altiris Agent required bandwidth and CPU usage to communicate directly to the Package Server or the Notification Server. Multicasting reduces this overhead by reducing significant amounts of network bandwidth usage and thereby reducing load on the Package Server or the Notification Server.
Altiris Agents revert to unicast for downloading packages under the following circumstances:
- If the Maximum sessions per physical subnet value has been reached, the backoff period initiates. If this occurs more times than the Maximum transmission attempts per package, the Altiris Agent reverts to unicast.
- If an Altiris Agent is connected to the session at less than 64 Kbytes/second, it is removed from the session.
- If the Maximum bandwidth used for multicasting has been reached.
- If the Maximum sessions per physical subnet value has been reached.
- If the package is smaller than the Disable multicast for packages smaller than value.
Package Servers and Multicasting
The following applies to Package Servers when multicasting:
- Package Servers will always download a package using unicast.
- If there is a Package Server on the subnet that has already downloaded a package, it participates in the multicast session as the master.
You can select to use multicasting on the Advanced tab (Virtual Software Task Page) (page 132). By default, all Software Delivery tasks that meet the criteria use multicasting.
To enable multicasting
- In the Altiris Console, click the Configuration tab.
- Select Configuration > Altiris Agent > Altiris Agent Configuration.
- Click the policy you want to configure multicasting for. For example, All Desktop computers.
- Click the Package Multicast tab.
- Select the Allow Altiris Agents to use multicast for downloading packages checkbox.
For information on multicasting options, click the help icon.
- Click Apply.
The Software Portal lets users install software on their computers by executing Software Delivery programs for which they have been given permission by the administrator. Software Portal options are provided in addition to existing Software Delivery Package and Program settings. For information, see Step 4 - Advanced Settings.