Video Screencast Help
Symantec to Separate Into Two Focused, Industry-Leading Technology Companies. Learn more.

Extending the Life of Symantec Workspace Virtualization Solution

Created: 31 Jan 2011 • Updated: 31 Jan 2011 | 10 comments
Language Translations
SK's picture
+5 5 Votes
Login to vote

Note: The informaton contained in this article is not intended for those who are new to Notification Server, but for those who already have working knowledge of the product.

Software Virtualization Solution (SVS)

SVS was Altiris’s first virtualisation product, and it could be used for personal benefit as a client side product only, or as a corporate management product in the form of a solution that integrates with Notification Server (NS).  Version 2.1 is the last release of this product, and even though it is EOL it is still available for download from the NS’s solution center.

SVS has been replaced by Symantec Workspace Virtualization (SWV), which has matured greatly in the past years.  Although SWV is predominantly a client side product now, Symantec did create an integrated version of it too, however, this has never been made available to the NS’s solution center.  The last version of SWV Solution is 6.1 SP4 and is supplied with this product extension.

 

SVS compared to SWV Solution

SVS provided agent rollout capabilities, reports, VSP deployable resources & their tasks, as well as task server based actions.  SWV Solution provides the same functionality except for reporting, as it doesn’t have any.  SWV also provides the XPF format, but SWV Solution does not provide a XPF resource.  SWV now supports 64bit clients, but SWV Solution does not.

 

Extending the life of SWV Solution

The following items bring SWV Solution in par with the present day SWV client feature set. 

 

Configuration > Solution Center

Even though it is possible to modify the solutioncenter.xml file so that it reflects SWV and the current version of the agent being used, this cosmetic change will be removed the next time the NS downloaded a new XML file, so this action has not been included.  After installing SWV Solution cleanly, the Currently Installed tab will display the following:

 

Configuration > Licensing

The Licensing page still displays this product as Software Virtualization, so there is no change there:

 

Configuration > Solution Settings

SWV Solution provides the following configuration items, which still reflect its earlier SVS days:

It is recommended that the Package Server Assignment for the existing “Software Virtualization Agent Package” is set to “Package Servers individually” with no package servers assigned so that this package is no longer/not anymore deployed.

 

This extension provides a new tree structure containing a larger number of items. 

The above collections have been created allowing customers to choose which version of SWV they want to deploy in an easy fashion.  The latest current version dominates this selection; however, customers can easily clone and modify these collections to suit their needs.

Although SWV Solution provides a SP4 package, a new one was created so that the new name is reflected.  The “Package Servers individually” assignment option has been set on these packages, so that customers can first test this extension before targeting the full product environment.

The package name & description will need to be modified after the agent package has been cloned in order to reflect the version being deployed.

 

The available programs for the SP4 package are as follows:

As SP6 includes new command lines and features, the following programs have been created for the SP6 packages:

The registry plug-in program name & description, as well as the uninstall program name & description will need to be modified after the agent package has been cloned in order to reflect the version being deployed.

The above policies have been created and tested.  New SP4 install, update and uninstall policies were not created as the SWV Solution policies can still be used.  The SP6 policies will need to have their names and descriptions changed after being cloned in order to be used with a different version of the agent.

 

Issues found and addressed concerning configuration items

  1. Creation of plug-in registry key

During testing, it was found that the SP4 “ALTIRIS_NS=1” and SP6 “SWV.ADDLOCAL=Altiris_NS” parameters sometimes did not create the SWV plug-in registry key, so a plug-in program was created to address this utilising a registry file. 

A custom inventory file was created, SWV.xml, allowing the 32bit plug-in collections to interrogate its inventory table, Inv_AeX_SW_SWV_Plugin, in order to determine which machines have SWV installed that do not have the registry key created.

For 64bit systems, this doesn’t work as SWV is 64bit but the Notification Server Agent (NSA) is 32bit, so even if the 64bit SWV install creates its registry key the NSA will not find it, so the collection assigned to its plug-in policy uses the Cmn_OS_Add_Remove_Programs_Common inventory table instead, and its registry file creates the key in the NSA’s registry environment as well as its default one.

As two different data classes are needed to address this situation, one for 32bit systems and the other for 64bit platforms, the custom inventory file was added to the INI file that also ran the hardware inventory. 

To test this, a SWV install policy, a second SWV program, and a HW inventory scan was used.  Obviously, a sequential task or a Task Server Job could be used instead (rebooting the machine after the install and then carrying on) which would run all three actions one after the other without the wait.

 

  1. Uninstalling the SWV Agent

SP6 doesn’t provide an uninstall command, so the MSIEXEC syntax is used:

MsiExec.exe /X {product guid}

As each release has a different product guid, this will need to be changed in the command line.  To find the correct product guid, traverse the "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall" registry key until you find it.  Each upgrade of SWV will empty out the old key but still leave it in the registry and will create a new key for its own version.

The SWV uninstall does exactly that, it uninstalls the SWV Agent.  As SP6 provides Visual C++ Runtimes as part of its install, these will be left behind by the SWV uninstall.  If you wish to have them removed as well, various methods can be used to run a similar MSIEXEC uninstall for them.

 

Reports

SVS customers who upgrade to SWV Solution will still retain the SVS reports, and these will still function correctly, albeit referencing the wrong product name.  It is possible to export these reports, modify their XML and then import them again so that they reflect the new name, however, if you repair the report pack these changes will be lost.

Due to the above, the reports were cloned and then modified, so that new customers will also have reports for this solution.  The only drawback this decision has caused is that the reports are not localised so will only display in English, due to the relevant strings, etc that are created by the SVS Report Pack not being provided with this extension of the product.

A new report has also been created which maps the actual agent version with its build release, due to the fact that even though we are now on version 6.3.2065 its release is 6.1 SP6 MP1 HF1.

 

Resources > VSP

SVS as well as SWV Solution provide the ability to create a Virtual Software Package, as they add a VSP resource to the NS.

A VSP resource offers the following programs by default:

The import syntax for a VSP resource is as follows:

SVSCMD.exe 17e1b514-cf4e-4257-808c-fb6b6c297468 IMPORT -PATH "$Altiris_Agent_Cache_Path$\{e0a5e862-e642-457a-ac2b-bde9d6e51fde}\Cache\UltraVNC.vsa"

A cool feature of a VSP resource is that if the “Use Alternate Download Destination on Client:” option is used, then the import syntax is automatically changed to reflect that new location.

SVSCMD.exe 17e1b514-cf4e-4257-808c-fb6b6c297468 IMPORT -PATH "C:\Layers\UltraVNC.vsa"

 

Unfortunately, a VSP resource only allows VSA files.

VSP resources cannot be deployed to 64bit machines as their programs do not work in that environment.

 

Adding the ability to deploy XPF files

As previously mentioned, SP4 provided a new layer format called XPF.  To deploy this file type, a Software Delivery (SWD) package resource was used to create a XPF template package, which has had all of the available VSP resource programs created for it.  This same template can be used to deploy VSA files to 64bit machines.

Using this template requires some extra steps; however, performing them is quicker than creating a new package from scratch each time you want to deploy a XPF file.

  1. Clone and rename the package.
  2. Modify the package description and other details, including its source (this was removed after testing so that no errors are recorded when it is imported).
  3. Export the clone.
  4. Use a xml editor to layer guids and file names.  You can obtain the layer guid by enabling the Details view of the SWV Admin Tool:

As the VSP resource import syntax doesn’t work in 64bit environments, it was decided to change the install syntax slightly so it will work on 32bit and 64bit machines:

SVSCMD.exe fc4c0388-fbef-44c1-bda4-e6cb57e9244c IMPORT -PATH ".\Empty layer.xpf"

 

Tasks > Virtual Software Tasks

The SP4 Virtual Software Tasks work in just the same way with the XPF template as they do with VSP resources.

 

Task Management > SVS Command

The SP4 Task Server based SVS tasks work in just the same way with the XPF template as they do with VSP resources.

Just like with SP4, you still have to enter the full path to the file when using the “Import layer” command, which means that you need to know where the NSA has been installed on the machine(s) that you are targeting with this task.

X86 example:

C:\Program Files\Altiris\Altiris Agent\Software Delivery\{848E8056-9CF0-495B-AED6-A6AADCDE377B}\cache\Empty layer.xpf

X64 example:

C:\Program Files (x86)\Altiris\Altiris Agent\Software Delivery\{848E8056-9CF0-495B-AED6-A6AADCDE377B}\cache\Empty layer.xpf

 

Implementation

In order to implement this SWV Solution extension, the following steps should be taken in this order.  All required files are provided.

  1. Install SWV Solution 6.1 SP4 via either its EXE or MSI file.

    EXE = Software_Virtualization_Solution.exe_.zip

    MSI = Software_Virtualization_Solution.msi_.zip

  2. Decide what version of SWV will be used.
  3. Create the following agent directories (the install paths may or may not be the same in customer environments so change if necessary):

  4. Add the relevant SWV Agent (obtained from our download site) file and registry file to these folders as per the screenshot.  SWV Solution 6.1 SP4 creates the SVSolnAgent directory by default.
  5. Place the empty layer in a location accessible to the NS if you wish to use this layer for initial testing of this product extension.
  6. Add the SWV.xml file to the “.\Altiris\Notification Server\NSCap\Bin\Win32\X86\Inventory Solution\” directory, as well as add the following syntax to either an existing hardware inventory scan INI file or a new one:  aexcustinv.exe /in .\swv.xml /out swv.nsi
  7. Run the following commands to import the Console items:
    1. The XPF Template resource will be found in the “Resources > Software Management > Software Virtualization > Windows > Virtual Software Packages” resource folder after being imported.  “<PATH>\Altiris\Diagnostics\ImportExportUtil.exe” /Import “<PATH>\XPF Template Package.xml”
    2. The SWV configuration items will be found in the “Configuration > Solution Settings > Software Management” folder tree after being imported.  “<PATH>\Altiris\Diagnostics\ImportExportUtil.exe” /Import “<PATH>\Symantec Workspace Virtualization.xml”
    3. The SWV reports will be found in the “Reports > Software Management” folder tree after being imported.  “<PATH>\Altiris\Diagnostics\ImportExportUtil.exe” /Import “<PATH>\Symantec Workspace Virtualization Reports.xml”

 

Implementation files found in ImplementationFiles.zip

 

This product extension was created and tested on NS 6.0 SP3 R13 only, so there may be import problems with certain older rollups.

Comments 10 CommentsJump to latest comment

Tenacious Geo's picture

Thank you SK. Is there a similar reference document available for configuring SWV in an NS 7 environment? We are working on migrating now.

-Geo

0
Login to vote
SK's picture

Hello Geo,

Symantec included SWV into v7 in the form of a resource and a couple of reports only, and have left it up to the customer as to how they wish to deploy it.

Creating a similar article for v7 will require a loit of time, which is something I unfortunately do not have right now, sorry.

You would need to create a new software resource for the new SWV agent version, as well as filters and then decide which delivery method to use.

SK.

Connect Etiquette: "Mark as Solution" those posts which resolve your problem, and give a thumbs up to useful comments, articles and downloads.

0
Login to vote
Pano's picture

Excellent write-up SK!

Very detailed.  I never realized that the SWV plugin information was sometimes not populated.  We'll have to adopt your custom inventory to identify these systems and correct them with the registry import.  We currently deploy the SWV Agent (SP4) with a transform that only makes some registry changes.  Looks like I'll have to see about getting the additional reg keys included to ensure SWV plugin information gets populated as well.

Also, utilizing Software Delivery Packages are definitely the way to go.  We maintain Task Server functionality with XPF capabilities.

Thanks,
Pano

0
Login to vote
boozzard's picture

Hi,

Finally got round to implementing this and have fallen over at the first hurdle!

In the section where you add the exe's to the folders which you created, it also says to put the registry files in there..Where do you get these files? or how are they generated?

Thanks

0
Login to vote
boozzard's picture

Re-downloaded the zip and extracted and the files were there!

 

Cheers

0
Login to vote
BobSilver's picture

SK, We've found a number of issues with SWV_6_1_SP6_MP1_HF1, one in particular was the updating of all user profiles every day, essentially crippling our delete profile policy. Since profilies are never older than a day in our labs, they never get deleted. We would really like to use SWV_6_1_SP7_6.4.1266 but without NS and DS support, it wil never happen. Is there a package availble for NS(6.0sp6r11)/DS(6.9sp3) compatibility with SWV_6_1_SP7_6.4.1266?

Any help would be appreciated

Thanks

 

0
Login to vote
SK's picture

Hello Bob,

You can easily clone and modify the collections, packages, report and registry files that I have provided, so that SP7 can be used.

SK

Connect Etiquette: "Mark as Solution" those posts which resolve your problem, and give a thumbs up to useful comments, articles and downloads.

0
Login to vote
BobSilver's picture

Fantastic, SK. Thanks for the orginal article and for following up so quickly with a response. I give it a try.

0
Login to vote
SK's picture

NP Bob.  Please let me know if you need any help, as I do have keeping this article up-to-date on my to-do list, and I just need the time for it.

SK

Connect Etiquette: "Mark as Solution" those posts which resolve your problem, and give a thumbs up to useful comments, articles and downloads.

0
Login to vote
BobSilver's picture

SK, I am manually editing the XML file and have made the following changes:

1. Changed NS(HUNGRYCROCLTD) server pointer

2. Created the SWV_Agent folder and copied over all edited SWV_6_1_SP7_6.4.1266 Reg files and the 32 and 64 bit Exe's.

3. Since I didn't install the SWV Solution 6.1 (Your Step1 )yet, I used ORCA to view the msi product code and replaced the XML Symantec Work Space Virtualization ProductGuid with the code I found in ORCA

4. Modified the 6_1-MP1_HF1 entries to reflect SWV_6_1_SP7_6.4.1266 (32&64)productguids from uninstall registry.

5. Am about to procede on to the NSPlug-in registry keys in the XML file .

If I am proceding in an acceptble manner, what do I do about packageguid entries.

Your comments would be appreciated,

Thanks,

Bob

 

 

0
Login to vote