Joe Grant, Principal Architect
One of the nice things that Oracle has done for patching RAC systems is to introduce the “Opatch auto” command. This one little command does make patching of RAC systems much easier. However, now that Red Hat Enterprise Linux 7 has been certified with 11.2, this command no longer works. The issue is that a few OPatch required Perl modules have been deprecated in Perl 5.10 and have finally been removed in RHEL 7. The good news however, is that it is fairly easy to identify and install the missing modules.
Oracle’s solution to this problem is to manually go through all of the steps that Opatch auto does for you. This is not practical. A better solution is to simply install the missing pieces.
For me, I found the issue with the following set up:
- RHEL 7.1 minimal installation with the addition of development libraries
- 2.0.4 Grid Infrastructure for a two node RAC installation
- 2.0.4 Database installation
- July 2015 PSU
Those who have access to CPAN directly from the DB server can simply install the following Perl modules.
In addition to the Perl modules, a minimal Linux installation does not include the command fuser, which is also used by OPatch. Therefore the package PSmisc will need to be installed.
If your RAC cluster does not have Internet connectivity to install the Perl modules from CPAN, then you can manually compile and install them.
The first thing to do here is to install a few Perl modules from the RHEL media. These allow for the compilation of the Perl modules.
Download the Perl modules from CPAN from a computer connected to the Internet and copy them to the RAC servers. To compile, untar the downloads and install them in the following order.
From the directory created when the download was untarred, run the following commands to compile and install the module. These should be run as root.
# perl Makefile.PL # make # make test # make install
After following these short instructions, you should once again be able to use Opatch auto to patch your RAC systems.