I have been working with ZENworks Linux Management (ZLM) while deploying our new IBM Bladecenter with a bunch of SUSE Linux Enterprise Server 9 (SLES9) and Open Enterprise Server (OES) servers. During the process of figuring it out for myself, I wrote two short articles about deploying SUSE Linux Enterprise Server (SLES) and Open Enterprise Server (OES) patches with ZLM.
Using the information in these two articles, it is possible to use ZLM to keep your SLES9 and OES servers up to date.
My last article discussed how to mirror SLES9 and OES server update services from Novell's sites to your local ZENworks Linux Management server. This tip discusses how to use those mirrored repositories to update all your local servers from your ZENworks mirrors.
I have tested this with SLES9-i586, SLES9-x86_64, and OES Linux. Presumably the process is similar for other architectures of SLES9, and it should also work for SUSE Linux and Novell Linux Desktop.
First, some assumptions:
First: Our ZLM server is on the local network, and is called zlmserver.company.com.
Second: We have access to the ZLM installation CD, or have a ZLM agent install CD.
Third: We have installed our SLES9 servers using the latest service pack CD set.
In order to use ZLM to deploy updates to SLES9 and OES servers, we need to have catalogs configured on the ZLM server to get the updates from. How to do that was covered in my previous article. If you followed that article, you would have ZLM catalogs configured for OES Linux, SLES9-i586 and SLES9-x86_64. Once that is done, the ZLM agent must be installed on managed servers, and the managed servers must be registered with the ZLM server. Finally, the catalogs for each patch channel must be assigned to each managed server, either directly or via a group or container in the ZLM management interface.
Installing the ZLM Agent
You must be logged into the server you want to manage with ZLM as the root user. Note that the agent installer requires that Python is installed. If you do not have Python installed, use YAST to install it from your original installation media. Insert the ZLM Installation CD or a ZLM agent Installation CD into the server. At the shell prompt, change to the directory of the CD, and type ./zlm-install -a This will start the agent install. Below is an example of the prompts you will see.
Do you want to install ZENworks now? [Y/n]:Y
(License agreement is displayed)
Do you accept? [Y/n]:Y
Installing package: rcd |##############################| 100%
Starting RCD with --no-remote --no-modules --no-services
Installing Component: ZENworks Agent
Installing ZENworks Agent |##############################| 100%
Registration Server Address. (Leave blank for none): zlmserver.company.com
Registration Server Key. (Leave blank for none):
You can verify that registration was successful by running '/opt/novell/ZENworks/bin/rug sl' and looking for a ZENworks service.
Once this has been completed, your server should appear in the Devices tab of the ZENworks management interface. Find the device in the service tab and click on it to view its detailed information. One of the fields displayed should be called "Effective Catalogs". Click the Advanced button on the "Effective Catalogs" to see the Effective Catalogs Editing screen. Choose Add to get to the "Catalogs to be Assigned" screen, and click Add again to select the appropriate catalog. If you followed my previous article, you will have containers called oes_linux, sles9_32 and sles9_64. Choose the container appropriate to the server you are trying to manage. In the container, a catalog should exist for the OS and architecture you want to manage. Select it and click OK, followed by Next, Next, Finish. Now the appropriate catalog should be shown as an Effective catalog for your server.
For reference, the catalog names created automatically when you mirror OES LInux, SLES9-i586, and SLES9-x86_64, are called "oes", "sles-9-i586" and "sles-9-x86_64" respectively.
Once you have assigned the appropriate catalog to each of the servers you wish to manage, the rest of the work is done on the client side. Make sure your mirrored catalogs are up to date, by following the mirroring instructions from my previous article. Then, login as root on the server you wish to patch and use the command-line utility, rug, to update the system.
First type "rug sl" to determine that the server has been correctly registered, as follows.
exampleserver:~ # rug sl
# | Status | Type | Name | URI
1 | Active | ZENworks | ZENworks Linux Management | https://zlmserver.company.com
This shows that the server has been correctly registered to the management server.
Next, subscribe to the appropriate catalog as follows:
For OES Linux,
exampleserver:~ # rug sub oes
Subscribed to 'oes'
exampleserver:~ # rug sub sles-9-i586
Subscribed to 'sles-9-i586'
exampleserver:~ # rug sub sles-9-x86_64
Subscribed to 'sles-9-x86_64'
Once you have subscribed to the appropriate catalog, run "rug refresh" to make rug aware of any available patches, and then run "rug up" to install all available patches.
exampleserver:~ # rug refresh
exampleserver:~ # rug up
The following packages will be upgraded:
procmail 3.22-39.4 (system) -> procmail 3.22-39.7 (oes)
sax2 4.8-103.28 (system) -> sax2 4.8-103.33 (oes)
Proceed with transaction? (y/N) Y
The command "rug up -y" may be added to a shell script and run from cron if you wish to automatically install any updates that are available on your ZLM server. If you prefer a more manual approach, you can periodically run "rug up" as root to get things updated. You can also check what patches are available from your catalog by running "rug list-updates". Rug has other interesting features which are listed by just typing rug with no arguments, and which are explained in detail in the rug manpage.
Disclaimer: As with everything else at Cool Solutions, this content is definitely not supported by Novell (so don't even think of calling Support if you try something and it blows up).
It was contributed by a community member and is published "as is." It seems to have worked for at least one person, and might work for you. But please be sure to test, test, test before you do anything drastic with it.