IntroductionAfter
the initial release of VERITAS Storage Solutions 4.0 for Linux (Storage
Foundation, Cluster Server, Volume Replicator, Cluster File System, Storage
Foundation for Oracle RAC), it has become clear that AMD Opteron systems can be
supported on a system running the RedHat Enterprise Linux i686 kernel in
32-bit mode. This document outlines the requirements and processes to install
the proper kernel and have the system respond properly to the requirements for
installing VERITAS software. The procedure also includes a workaround that
forces the system's "uname" utility to respond in a way that allows the
installation process for VERITAS products to
succeed.
Procedure:
1. Verify the proper kernel is
installed
2. Install the 32-bit RHEL3 i686 kernel on AMD Opteron
3. Modify
uname return value
4. Install Storage Solutions products
5. Remove the
uname command return value modification workaround
Table of
Contents Step 1: Kernel
verification
Step 2: Installation of the
32-bit RHEL3 i686 kernel on AMD Opteron
Step
3: Uname value modification
workaround
Step 4: Storage Solutions 4.0
Linux or Storage Solutions for Cluster File Systems 4.0 for Linux
installation.
Step 5: Uname value modification
replacement
Reference InformationRed Hat Enterprise
Linux 3 - Installation Guide for x86, Itanium, AMD64, and Intel® Extended
Memory 64 Technology (Intel®
EM64T)
https://www.redhat.com/docs/manuals/enterprise/RHEL-3-Manual/x8664-multi-install-guide/
Implementation process:The
implementation of this workaround is a five step process which will lead you
through verification of the kernel you are currently running, installation of
the 32-bit i686 kernel, modification of the uname return value, installation of
the VERITAS Storage Solutions software, and finally removal of the uname
response replacement.
Step 1: Kernel
verificationInstallation of Storage Solutions 4.0 Linux and
Storage Solutions for Cluster File Systems 4.0 Linux requires the RHEL 3 Update
2 i686 kernel to be installed on the system. The kernel version should be
2.4.21-15.EL or higher. An Opteron AMD64 machine running a 32 bit version OS is
only supported when it is running the i686 series kernels. Athlon series kernels
are not supported. You can verify whether the current running kernel belongs to
the i686 or Athlon series kernel by following these steps:
1. Run
the uname -r command to find the current
running kernel
If the currently running kernel
is an "up" kernel, you will see output similar to the following:
#
uname -r
2.4.21-15.EL
If the currently running kernel
is a "smp" kernel, you will see output similar to the following:
#
uname -r
2.4.21-15.ELsmp
2. If the
output from this command has "smp" for e.g 2.4.21-15.ELsmp then do
the following:
a. #
rpm -q --qf "%{arch}\n"
kernel-smp-2.4.21-15.EL
3. Otherwise
run the following command:
a. #
rpm -q --qf "%{arch}\n" kernel-2.4.21-15.EL
If the output of running the rpm command contains
the"i686" string, you have the right kernel installed and you can install
VERITAS 4.0 rpms. If the output of running the rpm command is Athlon, you have
the wrong kernel installed and you need to install the kernel*.i686.rpm and boot
the system using that kernel to continue installing the VERITAS 4.0 rpms.
Here is what you should see:
If the currently running kernel is a
"smp" kernel, you will see output similar to the
following:
# rpm -q --qf "%{arch}\n"
kernel-smp-2.4.21-15.EL
i686
If
the currently running kernel is an "up" kernel, you will see output similar to
the following:
# rpm -q --qf "%{arch}\n"
kernel-2.4.21-20.EL
i686
Step
2: Installation of the 32-bit RHEL3 i686 kernel on AMD
Opteron
For AMD64 multiprocessor systems, there are two routes to
install the i686 series kernels:
1. Install
the kernel-hugemem package (which is i686 only)
2. Install
the kernel-smp package while running the uniprocessor kernel
Installing the Hugemem kernel:
The
Hugemem kernel is the preferred i686 kernel on the AMD64 architecture for the
following reasons:
1. It has
almost no performance penalty associated with it on AMD64, unlike with standard
x86 hardware
2. It
provides larger kernel and user address space (a 4/4 split)
3. It
supports up to 64 GB of main memory (as opposed to 16 GB for the standard SMP
kernel)
4. It is
easier to install
5. VERITAS
Software recommends hugemem kernels for the Storage Solutions products
The simplest way to install the kernel-hugemem package
is to register the system with RedHat Network and issue the following command in
a root shell prompt:
#up2date
kernel-hugememeg:
up2date
kernel-hugemem-2.4.21-15.EL.i686.rpmTo install the kernel
manually on a running system, mount the second installation CD-ROM and type the
following command as the root user:
#rpm -ivh
/mnt/cdrom/RedHat/RPMS/kernel-hugemem*.rpmAlternatively, you
can download the package
from:
http://rhn.redhat.com
and type:
rpm -ivh
/path/to/rpm/kernel-hugemem*.rpmIn the above
command, replace
/path/to/rpm/
with the path to the kernel package, e.g.
rpm -ivh
/root/kernel-hugemem*.rpmOnce completed, reboot using the
Hugemem kernel and uninstall any kernel packages from the Athlon architecture
using the following command:
rpm -e
<kernel>Replace <kernel> in the above command
with kernel, kernel-smp, or a space separated list with both kernel and
kernel-smp if both are installed
Installing the SMP
kernel:Installing the SMP kernel means the system will recognize
only up to 16 gigabytes of RAM and will use the older memory layout for
applications (the 3/1 split).
First you must boot the system into the
uniprocessor kernel. To verify you are the proper kernel,
type:
uname -rIf you see
"smp" after the kernel version number, you need to reboot into the standard
kernel.
After the machine reboots, type the following command in a root
shell prompt:
rpm -e
kernel-smpAfter the package is uninstalled, the easiest way
to install the i686 SMP kernel is to register the system with RedHat Network and
issue the following command in a root shell
prompt:
up2date --arch=i686
kernel-smpTo install the kernel manually on a running
system, mount the second installation CD-ROM and type the following command as
the root user:
rpm -ivh
/mnt/cdrom/RedHat/RPMS/kernel-smp*i686.rpmAlternatively, you
can download the
kernel-smp package
from:
http://rhn.redhat.com
and type:
rpm -ivh
/path/to/rpm/kernel-smp*i686.rpmIn the above
command, replace
/path/to/rpm/
with the path to the kernel package
Example from the RHEL3-U2
Distribution disks Disk2:
rpm -ivh
/mnt/cdrom/Redhat/RPMS/kernel-hugemem-2.4.21-15.EL.i686.rpmOnce
completed, reboot using the SMP kernel and uninstall the uniprocessor kernel
package from the Athlon architecture using the following
command:
rpm -e
kernelStep 3: Uname return value modification
workaroundChange to allow VERITAS Storage Foundation 4.0 to
install
VERITAS Storage Foundation 4.0 Installer and some rpms have a
check of 'uname -p` = i686. If not true, the installation will abort. To allow
VERITAS Storage Foundation 4.0 to install on an Opteron AMD64 machine running
32bit RHEL 3 update 2, follow these steps:
a. Create the
/etc/vx/sfbin directory:
#mkdir
-p /etc/vx/sfbin
b. The
following three files need to be created in /etc/vx/sfbin/. You can also
find these files below in a tar.gz format. Unzip and untar these files in
/etc/vx/sfbin/. Note: You will need to verify that these
scripts have execute permissions set by issuing the command
chmod +x Filename
<Begin uname_change.sh
script>
ret=`/bin/uname
-p`
if [ "$ret" = "athlon" -a -e
/etc/vx/sfbin/uname.sh
]
then
cp
-f /bin/uname
/bin/uname.vx
ln
-sf /etc/vx/sfbin/uname.sh
/bin/uname
fi
<End
uname_change script>
<Begin uname_restore
script>
ret=`/bin/uname
-p`
if [ "$ret" = "i686" -a -L
/bin/uname -a -s /bin/uname.vx
]
then
ln
-sf /bin/uname.vx
/bin/uname
mv
-f /bin/uname.vx
/bin/uname
fi
<End
uname_restore.sh script >
<Begin uname.sh
script>
#!/bin/bash
if
[ "$#" -eq 0
]
then
/bin/uname.vx
fi
set
-- `getopt "asnrvmpio" "$@"`
if [
! -z "$1"
]
then
case
"$1" in
-a)
/bin/uname.vx -a ;;
-s)
/bin/uname.vx -s ;;
-n)
/bin/uname.vx -n ;;
-r)
/bin/uname.vx -r ;;
-v)
/bin/uname.vx -c ;;
-m)
/bin/uname.vx -m ;;
-p)
echo "i686" ;;
-i)
/bin/uname.vx -i ;;
-o)
/bin/uname.vx -o
;;
esac
fi
<End uname.sh
script>
Once you copy these files to /etc/vx/sfbin/, you
need to run uname_change to change the behavior of uname -p to return
i686.
Step 4: Storage Solutions 4.0 Linux or Storage
Solutions for Cluster File Systems 4.0 for Linux installation
As long
as the uname -p command returns the
value "i686", you should be able to install the Storage Solutions products as
described in the product documentation.
Step 5: Removing the
Uname return value modification replacement
Once you are done with
the installs, you need to run
uname_restore to restore the old uname
behavior. This workaround is temporary, but is required to be reapplied if you
wish to remove the Storage Solutions software from your Opteron
system.
You can remove the uname modification by executing the
uname_restore.sh script shown
above.
Note: Change to allow the VERITAS Storage Foundation 4.0 to
uninstall
a. Perform step a and step b from the above section
"Change to allow the VERITAS Storage Foundation 4.0 to
install"
b. Now you can uninstall the VERITAS Storage Foundation
4.0 using the CPI
c. Once you are done with the installs, you need
to run uname_restore to restore the old
uname behavior
d. Remove the /etc/vx/sfbin/
directory:
# rm -rf
/etc/vx/sfbin/