Externalizing OS Targets

5 Likes
over 1 year ago

Objective

The purpose of this cool solution is to bridge the connectivity between the various operating system (OS) releases and the ZENworks releases.

This document provides information about the following:

  • Configuring ZENworks Servers to work with the latest operating systems that are released in the market.
  • Installing the ZENworks agent on devices running the latest operating systems that are still not part of the ZENworks support matrix.
  • Updating the ZENworks agents and servers in the zone to the latest ZENworks version on operating systems that are no longer supported by ZENworks.

Introduction

Often there is a gap between the release schedules across various products and hence there is a delay in achieving compatibility and support.  With ZENworks too, this is no exception. While ZENworks tries to add support for newly released versions of operating systems, there are instances where new versions of operating systems get released soon after the release of a  ZENworks version.

With this solution, administrator can now manage and experiment using ZENworks  with unsupported operating systems as well.

Table of Contents

  • Performing prechecks
  • Creating a custom ostargets.xml file
  • Running the configure action
  • Performing postchecks
  • Cleaning up custom entries
  • Installing the Primary Server using --skip-os-check
  • Performing a fresh install of the agent using –I
  • Updating the agent by adding the skipPlatformCheck.txt file 
  • Conclusion

Performing prechecks

In the ZENworks zone, make a note of the current count of ostarget by running the following query on the database. 

select count(*) from zostarget  (The count might be 810.  It is for reference only.)

Note : You need to run this command after running ZoneConfigUpdateConfigureAction, to ensure that the records are added successfully to the ostarget.xml file

Creating a custom ostargets.xml file

Create a new custom_ostargets.xml file on the ZENworks Primary Server in the following location:

  • Windows Servers : %ZENWORKS_HOME%\conf\
  • Linux Servers : /etc/opt/novell/zenworks/

The following is an example of the content within the custom_ostargets.xml file :

<ostargets>
<ostarget>
<name>osl-15-x86_64</name>
<product_name>openSUSE 15.2</product_name>
<platform>Linux</platform>
<version>15</version>
<arch>x86_64</arch>
<vendor>SUSE</vendor>
<support_pack>2</support_pack>
<pkgmgr>rpm</pkgmgr>
<primary_role>Server</primary_role>
<detect><![CDATA[<file source="/etc/os-release"substring="opensuse:leap:15.2"/>]]></detect>
</ostarget> 
<ostarget>      
<name>windows10-1909-ent-gen-x64</name>
<product_name>Windows 10 Enterprise x64 Version 1909</product_name>
<platform>Windows</platform>
<version>10.0.1909</version>
<arch>x86_64</arch>
<vendor>Microsoft</vendor>
<support_pack>0</support_pack>
<build_number>18363</build_number>
<pkgmgr>msi</pkgmgr>
<primary_role>Workstation</primary_role>
<detect><![CDATA[<OSVersion substring="Windows 10 1909 64 Enterprise (Build 18363)" />]]></detect>
</ostarget>
</ostargets>

You can add as many ostarget entries as required to the custom_ostargets.xml file.  In the above example ostarget files have been added for openSUSE 15.2  and Windows 10 1909.

Note :

i) The versions have been considered for testing purposes only.  The actual released version names might be different. 

ii) To get the build number information for Windows OS,  run 'winver' command on  the'Run' window and take the number which is next to OS Build.  E.g. : On Windows 10 1909 Enterprise system, build number is given as (OS Build 18363.418).  You can enter 18363 against  <build_number> tag as show in the above ostargets.xml file.

Running the Configure Action

At the command prompt on the ZENworks Server or a Linux console, run the following command:

novell-zenworks-configure -c ZoneConfigUpdateConfigureAction

clipboard_image_0.png

Figure 1 – ZoneConfigUpdateConfigureAction completed

Figure 1 shows that the ZoneConfigUpdateConfigureAction completed successfully and the contents of the custom_ostargets.xml file will be added to the Primary Server database.

[As part of this configure action, a queue action is created for each Primary Server in the zone to update the ostargets.xml file, which will be used by the agents during registration.]

 

To confirm that the configure action completed successfully, postchecks can be performed.

 

Note :

If you have more than one Primary Server in the zone, you can create the custom_ostargets.xml file and run novell-zenworks-configure -c ZoneConfigUpdateConfigureAction from any of the Primary Servers.  If the custom_ostargets.xml file has OS information that is already supported by ZENworks, it will not be added. The name and service pack combination will be used to determine whether the platform is unique or not.  In case the custom_ostargets.xml has same platforms that are supported by ZENworks, they will be displayed on the screen when the configure action runs.

Performing postchecks

After the configure action has completed successfully, run the following query to check the current count in the database.

select count(*) from zostarget  (The count might be 811 as we added one ostarget record in the custom_ostargets.xml file)

Note :

Run the following query on the database to check the UserDefined field value.

select * from zostarget where UserDefined = 1

clipboard_image_0.png

 Figure 2 – Database query listing custom-added records with the UserDefined field value as 1

Figure 2 shows that the custom-added OS, windows2020, is added in the ostarget.xml file.  To confirm this, check for the updated entries in the Registration folder.

The Registration folder is available at the %ZENWORKS_HOME%\work\cache\registration location on Windows servers and at the /var/opt/novell/zenworks/cache/registration location on Linux servers.

 

Cleaning up Custom Entries

 

If you decide not to include unsupported operating systems in the ZENworks zone, the custom added OS records can be cleaned up or deleted by running the following configure action on the ZENworks Servers.

novell-zenworks-configure -c ZoneConfigUpdateConfigureAction -Dremove.custom.os.targets=true

 

clipboard_image_1.png

  Figure 3 – ZoneConfigUpdateConfigureAction -Dremove.custom.os.targets=true

Figure 3 shows that novell-zenworks-configure -c ZoneConfigUpdateConfigureAction -Dremove.custom.os.targets=true has run successfully and the custom-added records are deleted from the ostarget.xml file.

To verify that the cleanup is successfully completed, run the following query on the database:

  • select count(*) from zostarget (the original count will be displayed)
  • select * from zostarget where UserDefined = 1 (empty records will be displayed)

Installing a Primary Server using --skip-os-check

If you want to add a new unsupported OS server to the ZENworks zone, run the setup.sh --skip-os-check command for Linux and the setup.exe --skip-os-check command for Windows.  Executing this command will skip the platform check during the ZENworks installation.

clipboard_image_2.png

 Figure 4 – Passing –skip-os-check on Linux servers

Performing a Fresh Install of the Agent Using –I

 

If you want to install the ZENworks agent on a newly released operating system, download the ZENworks agent on the device and run the pre agent package installer with –I.  When this flag is passed, the check for supported platforms will be skipped during the installation process. (Applicable for both Windows and Linux fresh installations).

 

clipboard_image_3.png

 Figure 5 – Preagent package installation skipping OS/platform check 

Figure 5 is a screenshot of a ZENworks agent getting installed on a Windows operating system version that is not supported by ZENworks, by skipping the platform check.

 

Updating the Agent by Adding the skipPlatformCheck.txt File

If the device on which the ZENworks agent is installed is not supported by the current ZENworks version, you can still update the agent on that device by adding an empty file named “skipPlatformCheck.txt" in the conf folder, which is located at %ZENWORKS_HOME%/conf  on Windows agents and at /etc/opt/novell/zenworks/conf on the Linux agents.  The platform check is skipped during the system update.

clipboard_image_0.png

Figure 6 – ZENworks agent update skipping platform check when the System Update started

 

Figure 6 is a screenshot of a ZENworks agent getting updated on a Linux operating system that is no longer supported by the ZENworks version, by skipping the platform check.

 

Conclusion

Externalizing the OS Target will provide the flexibility to add newly released OS details to the ZENworks zone and install the ZENworks agent on these devices.  This solution also enables you to update the existing ZENworks agents running on devices that are no longer supported by the current ZENworks version.

 
 
 

Labels:

New Release-Feature
Comment List
Anonymous
Related Discussions
Recommended