Applying Server-Side Patches
From ARSWiki
Contents |
Overview
The following sub-sections will outline any special notes that should be considered when updating the various server-side aspects of the AR System® family of products. Before mixing and matching different major releases of products (e.g., using 6.0and 7.0 products together), consult the compatibility matrix found on the Remedy Support Web under the Issues and Solutions -> Compatibility Matrix.
NOTE: The hyperlink will require a BMC Support User Id and Password.
AR System Server Special Considerations
The AR System® server daemon, arserverd, is compiled specifically for use with a given database. As such, when Remedy Corporation releases a patch to the arserverd program file, they provide different versions for each database supported by that version. When preparing the patch installation package (described below), be sure to rename the arservora file downloaded from the Remedy Technical Support Web site to arserverd.
| File Name | Database |
|---|---|
| arservora | Oracle |
| arservinf | Informix |
| arservsyb | Sybase |
| arservdb2 | DB/2 |
Standardized Patch Application Process
In order to ensure proper application of patches and provide a quick and easy way to “roll back” patches should a problem arise, the following patch methodology has been developed and should be followed when applying patches to AR System® server products.
Prepare Patch Installation Package
This section of the document will outline the process that should be followed to prepare a patch for installation on one of our AR System® application servers.
NOTE: In the discussion that follows, <INSTALL_ROOT> is intended to represent the fully qualified path to a specific installation of the AR System® server software being updated. On a standard AR System® server, <INSTALL_ROOT> is equivalent to /opt/arsystem/servername. On a server, the <INSTALL_ROOT> for the AR System® E-Mail Engine is /opt/arsystem/AREmail.
In the <INSTALL_ROOT> folder contains a patches folder which is used to store the patched files provided by Remedy/BMC Corporation as well as the backup of existing files that was taken just before the named patch was applied. The patches folder will contain a directory named for the patch number. This patch directory contains all files related to the application of the patch.
<INSTALL_ROOT>
|--- patches
|--- 1258
|--- 1288
When preparing the application of a patch, support personnel should download the patch to a “working directory” on their local machines. The following process will guide support personnel through the process of preparing a patch for deployment.
NOTE: For the purposes of this sample discussion, it will be assumed that we are applying AR System® Server 6.3 patch 14 to a Solaris server and you are using C:\Temp as your local working directory.
1.In the working directory, create a sub-directory named for the patch you are in the process of preparing.
2.Download the patch files for the relevant operating system (Solaris) to the patch sub-directory in your local working directory (C:\Temp\14).
3.Review the readme.txt file accompanying the patch release to ensure you understand any configuration steps that may be required beyond simply replacing files.
4.Place the patch files in a directory structure that replicates how they will be deployed on the AR System® application server. Using patch 1288 as an example, the following directory should be created: C:\Temp
|--- 14
|--- api
|--- lib
|--- bin
|--- locale
|--- C
|--- de
|--- fr
|--- it
|--- ja
|--- plugins
|--- ardbcldap
|--- solaris
|--- arealdap
|--- solaris
This structure is dictated by the files contained in the patch and their location in the file system on the AR System® application server.
5.Once the directory structure has been replicated, ensure that the patched files are placed in the appropriate sub-directory.
NOTE: The arserverd program file is compiled specifically for the database it is intended to be used with. Before it is placed in the bin directory of your working directory, it has to be renamed to arserverd.
6.The next step in the process will be to create a list of files that are to be replaced. This will be used when we create a backup of existing files before applying the patch. Go to a command prompt and issue the following commands to create a list of files to backup:
C:\> cd C:\Temp\1288 C:\Temp\1288> dir /b /a-d /s > C:\Temp\14_backup.lst
7.Open the newly created 14_backup.lst file in notepad and make the following changes:
a.Left-click on the ‘Edit’ menu and choose the ‘Replace…’ menu option. b.When presented with the “Replace” dialog, enter “C:\Temp\14\” in the ‘Find what:’ field and leave the ‘Replace with:’ field blank. c.Left-click on the ‘Replace All’ button. d.Change the value in the ‘Find what:’ field from “C:\Temp\14\” to “\” and this time, place a forward slash (“/”) in the ‘Replace with:’ field. e.Left-click on the ‘Replace All’ button. f.Left-click on the ‘Cancel’ button. g.Left-click on the ‘File’ menu and choose the ‘Save’ menu option. h.Left-click on the ‘File’ menu and choose the ‘Exit’ menu option.
8.Now we must prepare the files in the C:\Temp\14 directory for copying up to the AR System® application server. From a command prompt, execute the following commands:
C:\> cd C:\Temp\14 C:\Temp\14> tar cvf 14.tar C:\Temp\14> gzip 14.tar
9.Move the 1288.tar.gz file from the C:\Temp\14 directory to the C:\Temp directory. From a command prompt, this can be accomplished using the following command:
C:\Temp\1288> move C:\Temp\14\14.tar.gz C:\Temp
10.Change to the C:\Temp directory and then open up an FTP session with the AR System® application server. For the purposes of this text, we will be uploading the patches to the development server.
C:\Temp\14> cd .. C:\Temp> ftp remedy-dev
11.Enter the appropriate values for the User ID and Password Prompts.
12.Change to the /opt/arsystem/yamato/patches directory using the following command:
ftp> cd /opt/arsystem/yamato/patches
13.Make a new directory for the number of the patch you are preparing to upload. in this example, the new directory should be named 1288.
ftp> mkdir 1288 257 MKD command successful. ftp>
14.Change to the newly created directory.
ftp> cd 1288 250 CWD command successful. ftp>
15.Change the FTP session’s transfer mode to ASCII and upload the 1288_backup.lst file to the 1288 directory by entering the following commands:
ftp> ascii ftp> put 1288_backup.lst 200 PORT command successful. 150 ASCII data connection for 1288_backup.lst (10.62.10.139,33808). 226 Transfer complete. ftp: 327 bytes sent in 0.02Seconds 20.44Kbytes/sec. ftp>
16.Change the FTP session’s transfer mode to binary mode and upload the 1288.tar.gz file using the following commands.
ftp> bin 200 Type set to I. ftp> put 1288.tar.gz 200 PORT command successful. 150 Binary data connection for 1288.tar.gz (10.62.10.139,33821). 226 Transfer complete. ftp: 10037121 bytes sent in 16.25Seconds 617.67Kbytes/sec. ftp>
17.Exit from the FTP session.
ftp> quit 221 Goodbye.
C:\Temp>
The next section of the document outlines the process that should be followed to backup the files that are replaced by the patch before the actual patch is installed on the application server. Backing Up Files Before Patch Application Before a patch is applied, the files to be replaced by the patch need to be backed up. The process of backing up files to be replaced can occur during the maintenance window or any time prior to the maintenance window as these actions are not user/system affecting.
NOTE: For the purposes of this discussion, it is assumed that AR System® server patch 1288 is being applied to the development server - yamato. As such, the <INSTALL_ROOT> for the instance on this box is /opt/arsystem/yamato.
1.Left-click on the ‘Start’ button and then choose the ‘Run…’ menu option.
2.In the ‘Open:’ field, enter the telnet catl0x105.
3.Left-click on the ‘OK’ button to initiate the telnet session. Enter the appropriate values for the ‘User ID’ and ‘Password’ prompts.
4.Once logged in, change to the <ARS_ROOT> directory using the following command:
yamato | /home/remedy > cd /opt/arsystem/yamato yamato | /home/remedy >
5.Issue the following command to create a backup of the files that are going to be replaced when patch 1288 is applied.
yamato | /home/remedy > tar cvf patches/1288/
1288_backup.tar -I patches/1288/1288_backup.lst
a api/lib/arapi51.jar 268K a api/lib/libar.a 2189K a api/lib/libarjni51.so 3290K a api/lib/libarxmlutil.so 3608K a bin/arforkd 132K a bin/armonitor 195K a bin/arplugin 653K a bin/arservdsd 1742K a bin/arserverd 14622K a bin/arsignal 1500K a bin/driver 1754K a locale/C/arsystem.cat 1163K a locale/de/arsystem.cat 1188K a locale/es/arsystem.cat 1201K a locale/fr/arsystem.cat 1198K a locale/it/arsystem.cat 1188K a locale/ja/arsystem.cat 1178K yamato | /home/remedy >
NOTE: The command listed in the example above is a single line. It appears on two lines due to space considerations.
The tar utility is used to to create a file called 1288_backup.tar in the patches/1288 directory. The –I parameter tells the tar utility to archive the files specified in the patches/1288/1288_backup.lst text file.
6.Now we must check to ensure that the tar file exists and contains a backup of the files that will be replaced by the patch. This can be done by issuing the following command.
yamato | /home/remedy > tar –tf patches/1288/
1288_backup.tar
api/lib/arapi51.jar api/lib/libar.a api/lib/libarjni51.so api/lib/libarxmlutil.so bin/arforkd bin/armonitor bin/arplugin bin/arservdsd bin/arserverd bin/arsignal bin/driver locale/C/arsystem.cat locale/de/arsystem.cat locale/es/arsystem.cat locale/fr/arsystem.cat locale/it/arsystem.cat locale/ja/arsystem.cat yamato | /home/remedy >
NOTE: The command listed in the example above is a single line. It appears on two lines due to space considerations.
7.Since the tar utility only bundles a number of files together into a single archive, but does not compress the files, the next step in our backup process will be to compress the 1288_backup.tar file using the following command.
yamato | /home/remedy > gzip patches/1288/
1288_backup.tar
yamato | /home/remedy >
NOTE: The command listed in the example above is a single line. It appears on two lines due to space considerations.
Now that the files to be replaced by the application of the patch have been backed up, the updated files can be applied. However, it is important to remember that the application of a patch will require that the AR System® application server be stopped. As such established change management processes and policies should be followed. Applying an AR System® Patch The text that follows outlines the process to be followed for applying patches to the AR System® server. The following conditions must be met prior to starting the process outlined below.
The patch installation package must have been prepared as outlined in the “Prepare Patch Installation Package” section (previous). The files to be updated have been backed up as outlined in the “Backing Up Files Before Patch Application” section (previous). Change Management processes and procedures have been followed and the patch is being applied in accordance with those policies.
NOTE: For the purposes of this discussion, it is assumed that AR System® server patch 1288 is being applied to the development server. As such, the <INSTALL_ROOT> for the instance on this box is /opt/arsystem/yamato.
This work MUST be completed by the remedy UNIX user. If using another UNIX user account to log into the AR System® application server, the user must issue the su –remedy command to assume the identify of the remedy UNIX user.
1.Left-click on the ‘Start’ button and then choose the ‘Run…’ menu option.
2.In the ‘Open:’ field, enter the telnet catl0x105.
3.Left-click on the ‘OK’ button to initiate the telnet session. Enter the appropriate values for the ‘User ID’ and ‘Password’ prompts.
4.Once logged in, change to the <ARS_ROOT> directory using the following command:
yamato | /home/remedy > cd /opt/arsystem/yamato yamato | /home/remedy >
5.Copy the patch archive to the current directory using the following command:
yamato | /home/remedy > cp patches/1288/1288.tar.gz . yamato | /home/remedy >
6.Since the patch files are contained in a compressed archive, we must uncompress the .tar file before we can extract the updated files. This is done by issuing the following command:
yamato | /home/remedy > gunzip 1288.tar.gz yamato | /home/remedy >
7.Before applying the AR System® server patch, the application server must be stooped. Issue the following commands:
yamato | /home/remedy > bin/arsystem stop
Once the AR System® application server indicates that it has stopped, continue with the next step in the patch application process.
8.Now that the AR System® application server has been stopped, the patch can be applied. This is accomplished by issuing the following command:
yamato | /home/remedy > tar xvf 1288.tar x api/lib/arapi51.jar, 274422 bytes, 536 tape blocks x api/lib/libar.a, 2241244 bytes, 4378 tape blocks x api/lib/libarjni51.so, 3368168 bytes, 6579 tape blocks x api/lib/libarxmlutil.so, 3694436 bytes, 7216 tape blocks x bin/arforkd, 134224 bytes, 263 tape blocks x bin/armonitor, 198888 bytes, 389 tape blocks x bin/arplugin, 668672 bytes, 1306 tape blocks x bin/arservdsd, 1783444 bytes, 3484 tape blocks x bin/arserverd, 14972728 bytes, 29244 tape blocks x bin/arsignal, 1535256 bytes, 2999 tape blocks x bin/driver, 1795400 bytes, 3507 tape blocks x locale/C/arsystem.cat, 1190583 bytes, 2326 tape blocks x locale/de/arsystem.cat, 1216358 bytes, 2376 tape blocks x locale/es/arsystem.cat, 1229084 bytes, 2401 tape blocks x locale/fr/arsystem.cat, 1226585 bytes, 2396 tape blocks x locale/it/arsystem.cat, 1216112 bytes, 2376 tape blocks x locale/ja/arsystem.cat, 1206201 bytes, 2356 tape blocks yamato | /home/remedy >
9.After extracting the patch files, the patch archive can be removed from the <ARS_ROOT> directory using the following command
yamato | /home/remedy > rm 1288.tar yamato | /home/remedy >
10.The application server should now be restarted. Issue the following command:
yamato | /home/remedy > bin/arsystem start
Once the AR System® application server has been restarted, validate that it is running properly. Watch the console for any error messages that may be displayed on the console. The following section will outline the process for rolling back a patch if this becomes necessary. Rolling Back a Patch The text that follows outlines the process to be followed in order to restore the backup files if the application of a patch does fails and the previous AR System® state needs to be restored. The following conditions must be met prior to starting the process outlined below.
The patch installation package must have been prepared as outlined in the “Prepare Patch Installation Package” section (previous). The files to be updated have been backed up as outlined in the “Backing Up Files Before Patch Application” section (previous). Change Management processes and procedures have been followed and the patch is being applied in accordance with those policies.
NOTE: For the purposes of this discussion, it is assumed that AR System® server patch 1288 failed to install properly on the development server, so we will walk through the process of rolling back to the pre-patch1288 state. The <INSTALL_ROOT> for the yamato instance on this box is /opt/arsystem/yamato.
This work MUST be completed by the remedy UNIX user. If using another UNIX user account to log into the AR System® application server, the user must issue the su –remedy command to assume the identity of the remedy UNIX user.
1.Left-click on the ‘Start’ button and then choose the ‘Run…’ menu option.
2.In the ‘Open:’ field, enter the telnet catl0x105.
3.Left-click on the ‘OK’ button to initiate the telnet session. Enter the appropriate values for the ‘User ID’ and ‘Password’ prompts.
4.Once logged in, change to the <ARS_ROOT> directory using the following command:
yamato | /home/remedy > cd /opt/arsystem/yamato yamato | /home/remedy >
5.Copy the patch archive to the current directory using the following command:
yamato | /home/remedy > cp patches/1288/
1288_backup.tar.gz .
yamato | /home/remedy >
NOTE: The command listed in the example above is a single line. It appears on two lines due to space considerations.
6.Since the patch files are contained in a compressed archive, we must uncompress the .tar file before we can extract the updated files. This is done by issuing the following command:
yamato | /home/remedy > gunzip 1288_backup.tar.gz yamato | /home/remedy >
7.Before rolling back to the pre-patch 1288 system state, the AR System® application server must be stooped if it is running. If the application server is not running, then this step can be skipped. Issue the following commands:
yamato | /home/remedy > bin/arsystem stop
Once the AR System® application server indicates that it has stopped, continue with the next step in the rollback process.
8.Now that the AR System® application server has been stopped, the patch can be applied. This is accomplished by issuing the following command:
yamato | /home/remedy > tar xvf 1288_backup.tar x api/lib/arapi51.jar, 274422 bytes, 536 tape blocks x api/lib/libar.a, 2241244 bytes, 4378 tape blocks x api/lib/libarjni51.so, 3368168 bytes, 6579 tape blocks x api/lib/libarxmlutil.so, 3694436 bytes, 7216 tape blocks x bin/arforkd, 134224 bytes, 263 tape blocks x bin/armonitor, 198888 bytes, 389 tape blocks x bin/arplugin, 668672 bytes, 1306 tape blocks x bin/arservdsd, 1783444 bytes, 3484 tape blocks x bin/arserverd, 14972728 bytes, 29244 tape blocks x bin/arsignal, 1535256 bytes, 2999 tape blocks x bin/driver, 1795400 bytes, 3507 tape blocks x locale/C/arsystem.cat, 1190583 bytes, 2326 tape blocks x locale/de/arsystem.cat, 1216358 bytes, 2376 tape blocks x locale/es/arsystem.cat, 1229084 bytes, 2401 tape blocks x locale/fr/arsystem.cat, 1226585 bytes, 2396 tape blocks x locale/it/arsystem.cat, 1216112 bytes, 2376 tape blocks x locale/ja/arsystem.cat, 1206201 bytes, 2356 tape blocks yamato | /home/remedy >
9.After extracting the patch files, the patch archive can be removed from the <ARS_ROOT> directory using the following command
yamato /home/remedy > rm 1288_backup.tar yamato | /home/remedy >
10.The application server should now be restarted. Issue the following command:
yamato | /home/remedy > /opt/arsystem/bin/arsystem start
After completing this process the AR System® application server should be restored to the same state it was before patch 1288 was applied. Everything should be restored to a normal, running state; however, this should be confirmed by following the process of validating that the application server is accessible and running properly.

