Linux Kernel Parameters

To view current values

$ ipcs -l
Shared Memory Limits
max number of segments = 4096 // SHMMNI
max seg size (kbytes) = 32768 // SHMMAX
max total shared memory (kbytes) = 8388608 // SHMALL
min seg size (bytes) = 1
Semaphore Limits
max number of arrays = 1024 // SEMMNI
max semaphores per array = 250 // SEMMSL
max semaphores system wide = 256000 // SEMMNS
max ops per semop call = 32 // SEMOPM
semaphore max value = 32767
Messages: Limits
max queues system wide = 1024 // MSGMNI
max size of message (bytes) = 65536 // MSGMAX
default max size of queue (bytes) = 65536 // MSGMNB

To make permanent

Edit /etc/sysctl.conf

Run sysctl -p

Kernel Upgrade Issues

There are several systems that require additional steps following a kernel upgrade to restore services.

Note: The most important step when performing a kernel upgrade is to use rpm -ivh not rpm -Uvh!! Using the -i option will install a new kernel and leave the existing kernel in place, so you have a rollback option. Also, most of the steps below require the devel kernel, so make sure you have installed that version also.

VMWare - on VMWare-hosted virtual machines the following additional steps are required. If this is not done the system will not boot.

On kernels 4.4 and greater the SCSI driver needs to be LSILogic.

While server is off, Edit Settings and change SCSI driver to LSILogic

After boot the network will not work until VMTools are re-run - /usr/bin/vmware-config-tools.pl

Restart network - service network restart

SAN - on SAN-attached servers the HBA driver and {PowerPath} drivers need to be re-installed. If this is not done the system will not see the SAN disk. Perform these steps after the server is running on the new kernel.

Re-install HBA driver

Re-install {PowerPath}

Start {PowerPath} - service {PowerPath} start

Reboot

ServiceGuard - on servers with {ServiceGuard} (SVG) there are two kernel modules that need to be re-installed. If this is not done the server will not join the cluster. Perform these steps after the server is running on the new kernel.

cd /usr/src/pident/drivers

make modules

make modules_install

cd /usr/local/cmcluster/drivers

make modules

make modules_install

GFS - on systems with Red Hat Cluster Services (RHCS) and Global File System (GFS) there are several kernel modules and kernel-dependent packages to re-install. If this step is not done the server will not join the RHCS cluster and will be unable to mount GFS volumes. Perform these steps before booting to the new kernel.

Comment out SAN filesystems in /etc/fstab to prevent them from mounting on reboot

Prevent RHCS and GFS from starting on reboot: chkconfig ccsd off, chkconfig cman off, chkconfig fenced off, chkconfig clvmd off, chkconfig gfs off

If SVG is also present, prevent SVG from starting on reboot by editing /usr/local/cmcluster/conf/cmcluster.rc, change AUTOSTART_CMCLD=0

Reboot to new kernel

Follow SAN procedure above to re-install SAN drivers

If SVG is also present, follow SVG procedure above to re-install SVG drivers

Install RHCS and GFS kernel rpms

Reboot

Manually start RHCS and GFS: service ccsd start, service cman start, service fenced start, service clvmd start, service gfs start

If successful set service to auto-start: chkconfig ccsd on, chkconfig cman on, chkconfig fenced on, chkconfig clvmd on, chkconfig gfs on

If present manually start SVG: cmrunnode

If successful set cluster to auto-start: edit /usr/local/cmcluster/conf/cmcluster.rc, change AUTOSTART_CMCLD=1