Centralis AXE: The Power Utility for ZENworks for Desktops
Articles and Tips: article
Centralis AXE Product Manager
ewen_anderson@centralis.co.uk
01 May 2001
One of the most challenging aspects of managing application distribution with Novell's ZENworks for Desktops is in creating Application objects. This AppNote introduces a tool that can reduce the time and effort involved in creating efficient and portable Application objects, especially for complex applications.Since this AppNote was written in the U.K., it retains the British spelling used by the author.
- Introduction
- Product Description
- Example: Processing an IE 5.5 Snapshot with Centralis AXE
- Conclusion
Introduction
Centralis AXE is a utility designed to assist users of Novell's ZENworks for Desktops by simplifying, standardising, and accelerating the process of creating NDS Application objects. Creating efficient and portable Application objects for complex applications-particularly in a server-based computing (thin client) environment-requires a lot of time, knowledge, and experience. In many cases it is simply not feasible to work through the entire AXT file manually and make the adjustments required to ensure that the Application object is accurate, efficient, and flexible.
Centralis created AXE originally for their own consultants, to minimise the time and effort associated with creating Application objects. Centralis AXE imports ZENworks for Desktops AXT files into a database, creating Application Profiles which can then be edited using the software's powerful processing capabilities.
Centralis AXE contains built-in editing rules to correct common problems in turning ZENworks for Desktops snapshots (AXT files) into Application objects. It allows the creation of user-defined rules so that new knowledge can be captured, stored, and applied easily to future AXT files, and also to allow specific editing requirements to be added for applications individually.
Dynamic, rules-based editing, means faster, more accurate NDS Application object creation and can minimise the size of the AXT file, and therefore the Application object, by eliminating unnecessary registry entries and files. Rules can be shared between administrators and between Application Profiles, allowing you to build up a central repository of knowledge gained from experience of creating Application objects.
It should be noted that ZENworks for Desktops administrators have a unique knowledge of the environment in which they work. Centralis AXE is not designed to replace that knowledge, but rather to provide a means of storing, applying, and sharing that knowledge.
Overview of the Benefits of Centralis AXE
An analysis of the main processing capabilities of Centralis AXE is presented in the following table. In the table, "No" indicates a manual text-editing process; "Yes" indicates an automated process.
Area
|
Standard
|
Centralis AXE
|
Replace specific snapshot entries with system variables |
||
User ID |
No |
Yes |
Drive mappings |
No |
Yes |
File paths |
No |
Yes |
.INI files |
No |
Yes |
Registry settings |
No |
Yes Identify and remove redundant entries |
Registry settings |
No |
Yes |
System files |
No |
Yes |
Temporary files |
No |
Yes Identify and dynamically apply system settings |
Version information for "Copy if Newer" option |
No |
Yes |
User files for "Track Distribution per User" |
No |
Yes Typical time required (for MS Office 2000 Professional) |
Process application for deployment to PC or Thin Client Server |
2 days |
3 hours |
Deploy application to Thin Client Server user |
20 min. |
10 sec. |
Script portability between multiple client PC builds |
Limited |
High |
Standard PC Snapshots. Centralis AXE significantly reduces the time required to process applications and increases the object portability between different client configurations. Advantages include the following:
Saves time. AXE cuts "snapshot to object" time by automating manual script editing tasks and storing company-standard editing rules.
Improves portability. Standardisation improves portability of scripts between different client configurations.
Increases functionality. AXE improves handling of variables within Application objects.
Supports rules. AXE is supplied with a set of user-defined rules that will allow most applications to work without any further modification, plus the ability to create and then modify new rules.
Creates Knowledge Base. User-defined rules become a knowledge base that can be applied to all Application Profiles.
Allows Advanced Rules. These allow fine-tuning of how to determine if the rule is applied to an entry.
Enables knowledge sharing. Rules can be shared by administrators, and exported/ imported by other AXE users.
Microsoft Windows Terminal Server/Citrix MetaFrame Snapshots. Centralis AXE extends the functionality of ZENworks for Desktops to the Microsoft Windows Terminal Server/Citrix MetaFrame environment by enabling the effective use of application snapshot-based installs. The features of this include:
Simplifies deployment. AXE separates snapshots into user and workstation objects.
Reduces overhead. AXE enables removal of redundant entries captured in snapshotting Windows Terminal Server/MetaFrame installations.
Administrator installs. AXE allows a single, shared Application object to be deployed by the administrator.
User installs. Individual user Application objects are smaller, faster, and more secure.
Functionality. AXE allows user- or administrator-driven verify/install options.
Flexibility. AXE extends functionality of NDS eDirectory and ZENworks for Desktops to provide a directory-managed solution for Microsoft Windows Terminal Server/Citrix MetaFrame server farms.
Product Description
Centralis AXE is a rules-based processor of ZENworks for Desktops snapshots. The text format snapshot (.AXT file) is imported into the AXE database where analysis, automatic processing, user defined processing, and manual editing are carried out.
An overview of the product's processing is presented in Figure 1, and the key features and functions of the software are described below.
How Centralis AXE works.
Snapshots Overview
Novell's ZENworks for Desktops product uses 'snAppShots' (referred to here as 'snapshots') for the creation of Application objects which can be stored and distributed via NDS. A snapshot works by examining the configuration of the PC before and after installation of some software, and then determining the changes that are required to install that software by recording the differences in files, folders, registry settings, INI files, and environment variables.
This snapshot information is stored as text in the style of a standard Windows INI file, with an AXT file extension. The files that were installed during the snapshot are copied into a directory alongside the AXT file and are renamed using a serial number and an FIL file extension.
The AXT file is made up of a number of sections. There are different sections for different types of information recorded in the snapshot. Centralis AXE divides these sections into ten data categories. The purpose of these categories is to allow rules in Centralis AXE to be applied to different types of information independently, if required.
Centralis AXE Snapshot Data Categories. The following table lists the data categories in Centralis AXE.
Category
|
Description
|
Macro Entries |
These sections define internal macros that are used throughout the Application Profile, such as the path to the installation folder. |
Application Settings |
These control the way in which the application will be represented in NDS and how it will be distributed. |
Registry Entries |
These sections contain details of the registry settings that were added, changed, or removed during the snapshot. |
Files |
The files that are added or upgraded during the snapshot are recorded in the AXT file and are also copied into the directory in which the snapshot is saved. |
.INI File Entries |
Any modifications to .INI files that were identified during the snapshot are recorded in the AXT file. |
Directories |
These sections specify the directories that were created or deleted during the snapshot process. |
Shortcut Entries |
Shortcuts and Program Manager groups or icons are recorded in their own section type since the files modified to implement these will almost certainly be different on each target computer. |
Environment Variables |
These sections specify any changes to environment variables during the snapshot process. |
System Requirements |
It is possible to stipulate a number of criteria for various aspects of PC specification, which must be met in order for the application to be installed or displayed in NAL. |
Miscellaneous Settings |
This category is included to cope with unknown or additional section types that are not identified by the current version of Centralis AXE. |
Application Profiles. When an AXT file is imported into the Centralis AXE database, it is stored as an Application Profile. This profile contains all the information from the AXT File and also some extra information collected during the import process, some of which can be edited by choosing Modify on the Application context menu.
Application Profiles can be exported from Centralis AXE as new AXT Files using the Export Wizard. It is at this point that the editing and routing rules will be applied so the original AXT file is never changed in the database.
It is possible to group Application Profiles together by storing them in user- defined Application Folders. These folders can be arranged in a hierarchical fashion as required either by creating a new folder from the Create option of the parent's context menu, or by dragging and dropping one folder into another in the Browser window.
Application Profile Properties. Once a snapshot has been imported, it is stored as an Application object in the Centralis AXE database where it can be edited and rules can be assigned. This is done from the Application Properties dialog invoked either by choosing the Modify option from the application's context menu or by double-clicking an application item in the Browser window. This dialog box is shown in Figure 2.
The Application Profile Properties window.
There are 15 pages available within the Application Properties dialog, which expose all the information imported from the AXT snapshot and also the rules that will be applied on export and other Centralis AXE specifics:
Application Profile Details
User Rules
Redundant Rules
User & Machine Rules
Text Replacement Rules
Application Entries
Application Folders
Application Files
Registry Settings
INI Settings
Environment Variables
Macros
Icons/Shortcuts
System Requirements
Miscellaneous
The Browser Window. Navigating and manipulating the Centralis AXE database begins in the Database Browser window, which is accessed from the toolbar or by selecting the AXE Browser option from the View menu.
The Browser provides a hierarchical tree view of the Application Profiles and rules that are stored in the Centralis AXE database (see Figure 3).
The AXE Database Browser window.
A right-click on objects in the database displays a context menu to allow them to be edited, renamed, or deleted as appropriate. Additionally, some objects can be dragged into different folders within the hierarchy.
Centralis AXE Rules
Centralis AXE rules can be used to make adjustments to snapshot files by using a "find and replace" mechanism, or by moving whole data sections to an alternative output file based on either a basic or advanced text comparison criterion.
Replace Rules. If you want to find and replace all occurrences of a text string within an .AXT file (for example, to replace the environment variable %SYSTEMDRIVE% with the equivalent internal NAL variable %*WINDISK%), this can be accomplished using a Replace Rule.
To create a new Replace Rule, use the Centralis AXE Rule Wizard, which will display the Rule Properties form shown in Figure 4.
Rule Properties form in the AXE Rule Wizard.
The Rule Properties form displays the available parameters for a rule and for a Replace Rule. It allows the "search for" and "replace with" text strings to be specified, along with the fields and data categories to which the rule is applicable.
Replace Rules can be applied to multiple fields across multiple data categories as required. To specify which fields should be processed, use the Advanced Settings dialog accessible from the first tab of the Rule Properties form.
Text comparisons for Replace Rules are not case-sensitive.
Basic Move Rule. A Basic Move Rule can move sections to a particular output file based on a simple text comparison criterion. These rules can be applied to multiple fields across multiple data categories, and require only the search string and the target file to be specified.
For example, if you want to remove backups of user's INI files, a Basic Move Rule could be created to look for application files and INI files that match a pattern such as 'P:\Windows\*.ctx' as shown in Figure 5.
Basic Move Rule dialog box.
Using the Advanced Settings button, you can specify the exact fields in each category to match to the pattern string, as shown in Figure 6.
Specifying match fields.
Advanced Move Rule. Occasionally, the simple text criterion used by the Basic Move Rule is not sufficient to select specific sections where it cannot be guaranteed that the text will not appear elsewhere, especially when dealing with Registry settings. To address this, the Advanced Move Rule allows multiple criteria to be specified within a single data category.
For example, an Advanced Move Rule needs to be used to remove the update of the system shutdown time from snapshots where there was a reboot during the install process. Figure 7 shows how the rule can be applied to the registry settings with the key name specified along with the value name to ensure only that particular setting is removed.
Where multiple criteria are specified, all criteria must be met to satisfy the rule conditions. For details on the pattern matching used in the text comparison for this type of rule, refer to the Centralis AXE manual.
Specifying match fields.
Rule Folders
To help administrators organize rules, Centralis AXE provides Rule Folders in which related rules can be grouped (see Figure 8). New Rule Folders can be created from within the Rule Wizard, or by using the Create | Rule Folder option of the File menu, or from the Browser context menus. Note that unlike Application Folders, Rules Folders cannot be organized as a hierarchy.
AXT File Splitting
Centralis AXE allows the creation of Routing Rules to facilitate Application Profile splitting. When an Application is exported, you have the option of creating a Machine file, a User file, and a Redundant file (see Figure 9).
The Machine File. Centralis AXE creates a Machine file by default. This is an .AXT file which contains all the processed snapshot settings which have not been removed to either User or Redundant files. The Machine file may therefore be the full Application object, or (where a User file has also been created) the portion of the install which will be common to all users.
AXE import and splitting process.
If the user install has been split into a separate object, the Machine file may be deployed as a pre-install, as a standard build on every client, or as an administrator install to a Windows Terminal Server/MetaFrame server. (This will be explained later.)
The User File. Separating the User install can be very worthwhile where only a small percentage of an application snapshot is specific to each individual user. Pre-deploying a common Machine file allows the majority of the installation to be carried out by ZENworks for Desktops only once for each machine. The resulting individual user installation is then much smaller and faster in both PC and Microsoft Windows Terminal Server/Citrix MetaFrame environments.
As the Application Profile is processed, Centralis AXE will apply built-in and user-defined rules to each section of the Application Profile to determine whether it should be placed in the User File. This is then exported as a separate .AXT.
The Redundant File. Centralis AXE uses the concept of a Redundant file for removing unnecessary information from the Application Profile when it is exported. As the Application Profile is processed, Centralis AXE will apply built-in and user-defined rules to each section of the Application Profile to determine whether it should be removed and placed in the Redundant file. This is particularly useful in a Windows Terminal Server/MetaFrame environment (explained later).
The purpose of storing the Redundant file is to act as a reference file to enable administrators to store, review, and-if necessary-restore entries removed from the Application Profile.
Features for Windows Terminal Server/MetaFrame
In a Windows Terminal Server/MetaFrame environment, a number of additional considerations must be made when installing applications via ZENworks for Desktops. One of the design goals for Centralis AXE has been to overcome the major issues encountered with using ZENworks for Desktops in a server-based computing (thin client) environment.
The specific areas for concern are:
Users may access applications from any one of many servers in a server farm, and would force an install on each server.
User driven application installs may seriously affect the performance / stability of the server for other users.
Verification and self-healing driven by a user can affect the shared installation.
Installations may require a reboot of the server, which is not appropriate in a multi-user environment.
Application snapshots in the Microsoft Windows Terminal Server/Citrix MetaFrame environment capture a large amount of unwanted data, particularly registry settings.
Applying unprocessed snapshots containing these settings can cause problems running the application, or affect other applications on the Windows Terminal Server/MetaFrame server.
The complexity of managing applications in a multi-user environment makes administrator driven installs preferable.
To overcome these issues, Centralis AXE uses the following features:
Script Splitting. In the Windows Terminal Server/MetaFrame environment, script splitting can be used to separate the shared application object (Machine file) from the user install object (User file).
The shared object can be applied to each server in the farm by the administrator. Any reboots of the server, testing, and so on can be carried out and managed by the administrator while the Microsoft Windows Terminal Server/Citrix MetaFrame server is out of the farm.
User installs are then driven by the user as required, but take only a fraction of the time. Users do not affect the shared application install, and carry out any verification and self-healing against their own object, rather than the shared object.
Redundant Entries. Centralis AXE contains in-built rules to identify and automatically remove unwanted entries. In addition, user-defined rules can be added to cope with specific customer issues.
Typical applications (such as Microsoft Internet Explorer 5.5) can have several thousand unwanted registry settings removed by this process.
Additional Centralis AXE Features
Track Distribution per User. Centralis AXE supports the "Track Distribution per User" flag for NDS Application objects, which signals that the relevant actions (file copies, registry settings, and so on) are applicable to each separate user account on a machine independently. When this flag is set, ZENworks for Desktops will track the implementation of the relevant action on a "per user" basis rather than the standard "per machine" basis.
This facility is especially useful for the User file created during the export process. For full details on the "Track Distribution per User" flag, refer to your ZENworks for Desktops documentation from Novell.
NAL Variables. Centralis AXE allows administrators to identify NAL variables that may appear in the snapshot files so that these will not be reproduced as environment variables (enclosed in double percent characters) during the export processing.
Copy/Flag Override Options. Some types of data in a snapshot have flags that can be set to determine what considerations should be made when writing the information to the target computer during an install.
File. The File flags specify when the file should be copied to the target computer. They provide the following options:
Write Always
Copy if Exists
Copy if does not Exist
Copy if Newer
Copy if Newer and Exists
Copy if Newer Version
Request Confirmation
Copy if Different
Delete
Additionally, Centralis AXE provides a "Dynamically Assign" setting, which will select an option automatically for each file individually. If this setting is enabled, AXE will check the source file for a version resource block. If that is found, AXE sets the flag to "Copy if Newer Version"; otherwise it is set to "Copy if Newer".
Registry. Similarly, the registry flags specify when the registry information should be copied onto the target computer and the following options are available:
Create Always
Create if Exists
Create if [does] not Exist
Delete
INI File Settings. It is also possible to specify how INI files are updated on the target computer, from the following options:
Create if Exists
Create if does not Exist
Create or Add to Existing Section
Create or Append to Existing Value
Delete Entry
Delete or Remove from Existing Value
Delete Section
Output Options. When exporting the processed file, the Wizard will ask you to confirm the filenames for each file that you elected to create. There is also the option here to specify the version of ZENworks for Desktops for which the new AXT file will be created (see Figure 10).
Confirming the ZEN AXT file format.
The choices are:
AXT_FILE 2.5 (ZENworks v1.1)
AXT_FILE 3.0 (ZENworks v2.x)
AXT_FILE 3.5 (ZENworks v3.x)
Note: There may be functional limitations when using older AXT versions such as with the "Track Distribution per User" flag, which is not valid for ZENworks for Desktops v1.1. Consult your ZENworks for Desktops documentation for further details on which options are supported.
Merging Application Profiles. The Application Profile Merge Wizard can be used to merge two Profiles together. The Wizard takes the entries from one or more of the data categories in the source Profile and copies them into the target profile. For Application Files, Registry Settings and INI Settings, there are additional options that determine the conditions or the method used to merge these settings.
To start the Application Profile Merge Wizard, drag and drop the source Applica- tion Profile onto the target Application Profile within the Browser window.
Sharing Centralis AXE Rules. Centralis AXE Rules can be exported as a .RUL file to be sent to another user from the Export Rules option on the Tools menu.
Rules can be imported via the "Import Rules" dialog. Once a valid file has been selected, all the rules contained within that file are displayed in the tree view with check boxes which allow the required rules to be selected on an individual basis.
Example: Processing an IE 5.5 Snapshot with Centralis AXE
There has been considerable discussion on the best way to deliver Microsoft's Internet Explorer version 5.5 as a portable ZENworks for Desktops Application object. While most ZENworks for Desktops administrators would choose to deploy by snapshot, there have been a number of well-publicised issues about deploying a snapshot of IE 5.5 as a portable Application object. These include:
Application Installation. Components of the application often do not install correctly.
File Versions. Problems can also occur where files within the installation package have dates which are not consistent with their version numbers, and overwrite newer files.
Installed Components. Under the Explorer shell, Active Setup configures installed components during start-up after installation for each user, overwriting your snapshot settings.
Redundant Entries. Snapshots also contain temporary files, system and user information not related to the application, which could cause problems if installed.
In many cases organisations have had to fall back to using the Microsoft administration toolkit (IEAK). However, this method has a number of issues, including:
New Administration. IEAK requires administrators to learn a new setup and administration tool to mimic what would have been captured by the snapshot.
Reboot. The installation requires a reboot, and the NAL shell does not process the "run once" sections, so multiple application objects may be required.
Active Setup. The Active Setup during install is also dependent on running the Explorer shell.
There are further issues when seeking to deploy IE 5.5 to Microsoft Windows Terminal Server/Citrix MetaFrame environments where the following problems have been experienced:
User setup. Identifying which entries are required to be processed as part of the user installation, rather than shared system setup.
Redundant entries. Microsoft Windows Terminal Server / Citrix MetaFrame based snapshots capture even more redundant registry entries than PC based snapshots.
Processing MS IE 5.5 Using Centralis AXE
Processing applications such as IE 5.5 was the driving force behind Centralis developing the AXE utility. The software contains in-built processing rules to overcome many of the problems identified above, and also provides the administrator with the capability of creating, applying and sharing rules to overcome specific problems.
This section identifies the procedure for taking a standard snapshot of MS Internet Explorer version 5.5 and using the Centralis AXE software to turn it into an Application object suitable for deployment to standard PC clients or Microsoft Windows Terminal Server/Citrix MetaFrame servers.
Taking the IE 5.5 Snapshot. Follow these steps to take the snapshot:
Use the latest version of ZENworks for Desktops you have to snapshot the installation.
Note that you can export as any version of ZENworks you want, and Centralis AXE will store the additional details and features for future use when you upgrade your production environment.
Run the Explorer shell.
Start the snapshot tool.
Install IE 5.5.
Complete the reboot and run once procedures.
Complete the Active Setup of Installed Components for the user.
Configure IE 5.5 as required.
End the snapshot.
Create the .AXT file.
Processing the IE 5.5 Snapshot. Follow these steps to process the snapshot:
Download Centralis AXE from http://www.centralsoft.net/downloads.
On receipt of the license key by E-mail, install Centralis AXE on a client PC.
Run Centralis AXE and select Tools | Import .AXT File.
The Import Wizard will take you through importing the snapshot .AXT file into the Centralis AXE database. Just locate your .AXT, enter the snapshot information, and accept the defaults.
Use the graphical editor to make any additional customisation / system requirement changes.
Select Tools | Export Application Profile.
The Export Wizard will take you through exporting the snapshot .AXT file. Just accept the defaults.
At Step 6 (Confirm Output File Names), select the ZENworks version for your production environment.
On completion note that Centralis AXE has removed a number of redundant entries. You can view these to confirm what has been discarded if you want.
Use NWAdmin to create an application object from the .AXT file.
Deploy IE 5.5!
Windows Terminal Server/MetaFrame Installation
If you want to deploy a snapshot taken on Windows Terminal Server/MetaFrame, proceed as above and add the following steps:
Use the Export wizard (Step 3, AXT File Splitter Options) to enable Machine File Routing rules.
Centralis AXE will create two .AXT files, the larger of which will be a shared install, the smaller a user only install.
Conclusion
This AppNote has described the main features and benefits of the Centralis AXE utility for ZENworks for Desktops. It has shown how the utility can be used to reduce the time and effort needed to create working Application objects for both PC and Windows Terminal Server/MetaFrame environments. The major issues and their resolutions are summarised in the table below.
Problem
|
AXE Resolution
|
Comment
|
Installation Issues |
Yes |
Resolved by internal rules |
File Version |
Yes |
Resolved by automatically detecting version information and dynamically setting the "Copy if Newer Version" flag |
Installed Components |
Yes |
A shipped rule will prevent Active Setup from configuring installed components during Explorer shell start-up and overwriting the settings in your snapshot |
PC Redundant Entries |
Partial |
Resolved by shipped rules (although there is plenty of scope for new rules specific to your snapshot environment) |
New Administration |
Yes |
Centralis AXE uses a familiar graphical interface and Novell standards |
Run Once |
n/a |
Included in the snapshot |
Active Setup |
n/a |
Included in the snapshot |
Terminal Server User Setup |
Yes |
Resolved by automatically detecting user information and dynamically setting the "Track Distribution per User" flag |
Terminal Server Redundant Entries |
Partial |
Shipped rules can remove several thousand redundant Registry settings (again, there is plenty of scope for new rules) |
For more information about Centralis AXE, visit the company's Web site at http://www.centralis.co.uk.
* Originally published in Novell AppNotes
Disclaimer
The origin of this information may be internal or external to Novell. While Novell makes all reasonable efforts to verify this information, Novell does not make explicit or implied claims to its validity.