I had a customer POC this week and needed to make sure my SES skills were up to scratch. Some of the requirements for this POC required that we used the very latest version of SES (10.1.8.4) and therefore I thought I would write up my experience installing this on OEL5.
Preparing Oracle Enterprise Linux 5 update 3
I first downloaded the installer for SES 10.1.8.2 from the Oracle website. I also needed to get the patch sets to take SES from .2 to .3 and then .4. The documentation for 10.1.8.4 says you can go from .2 to .4 direct but I had advice which said a safer route was to go via the .3 patch first. The following are patch numbers you need to download from metalink. Note you obviously need a valid Oracle metalink account to download the following.As per the SES instructions, I created my oracle user and the required groups, oinstall, dba and oracle. Now the documentation currently for SES doesn't mention that release 5 of Oracle Enterprise Linux is certified, but even though it isn't officially supported one of the product managers did say he had installed it without issues. That was good enough for me and I took the package requirements from RedHat Enterprise Linux 4 as part of my pre installation tasks.
- glibc-2.3.4-2.9
- make-3.80
- binutils-2.15.92.0.2
- openmotif-2.2.3-9.RHEL4.1
- compat-db-4.1.25-9
- setarch-1.6-1
Make sure you also setup the right kernel parameters and shell limits. For reference I made the following changes to my system.
- Added the following lines to /etc/sysctl.conf.
# Added for SES
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
kernel.shmmni = 4096
- Added the following lines to /etc/security/limits.conf.
* soft nproc 16384
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536
- Added the following to /etc/pam.d/login.
session required /lib/security/pam_limits.so - Added the following to /etc/profile.
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
I rebooted after these changes, logged into a VNC session as the Oracle user and was set to do the installation.
Installing SES 10.1.8.2
Logging into an X Windows session via VNC (yes, yes Avi, I will be installing NoMachine NX soon) I started the installer, ./runInstaller.Go through the first few dialogs.


And then you will be asked to run this script as root.

Then you'll find that it fails on some packages.
Checking for compat-gcc-7.3-2.96.128; found Not found. Failed <<<<
Checking for compat-gcc-c++-7.3-2.96.128; found Not found. Failed <<<<
Checking for compat-libstdc++-7.3-2.96.128; found Not found. Failed <<<<
Checking for compat-libstdc++-devel-7.3-2.96.128; found Not found. Failed <<<<
Yet I do have versions installed that will suffice.
[oracle@ses Desktop]$ rpm -qa compat\*
compat-gcc-34-3.4.6-4
compat-libgcc-296-2.96-138
compat-libstdc++-33-3.2.3-61
compat-db-4.2.52-5.1
compat-libstdc++-296-2.96-138
compat-gcc-34-c++-3.4.6-4
So continue and accept the question that some of the checks have failed. The installer will then copying some files, then configure the embedded database and finally setup SES.

The installation ends with the dialog giving you both URLs for the search page and the admin pages, they will be something like.
http://ses:7777/search/query/search
http://ses:7777/search/admin
After a few minutes, all the services are installed and started and I was able to login to the admin pages, add a crawler to my gallery website and then search for some content. Before I attempt the upgrade I want to ensure that the system is working as expected. I rebooted the machine and after logging in as the oracle user, I ran the command from the %ORACLE_HOME%\bin directory.
[oracle@ses bin]$ ./searchctl startall
Again logging into both the query page and the admin pages confirms everything is working as expected.
Upgrade to patch 10.1.8.3
Now that I have a valid SES installation, I need to move to the .3 version. First thing the readme asks is to login to sqlplus. What it doesn't explain is that the environment for the oracle user hasn't been setup and you'll need to do this yourself. I added the following to my /home/oracle/.bash_profile so that I could login to sqlplus easily. Note that my ORACLE_HOME and the ORACLE_SID is visible when the above startall command was run, like so.
... processed key-value: action=startall
... processed key-value: oh=/oracle/ses1
... processed key-value: db_sid=ses
So the following lines were added to my .bash_profile.
# SES profile data
ORACLE_BASE=/oracle
ORACLE_HOME=$ORACLE_BASE/ses1
ORACLE_SID=ses
ORACLE_HOSTNAME=ses.mylocal.network
PATH=$ORACLE_HOME/bin:$PATH
export PATH
export ORACLE_BASE ORACLE_HOME ORACLE_SID ORACLE_HOSTNAME
I was then able to login to sqlplus and run the following.
SQL> show parameter job_queue_processes
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
job_queue_processes integer 10
SQL> alter system set job_queue_processes=0;
System altered.
Then I could run the installer, runInstaller from the 10.1.8.3 patch install directory. The following dialog is displayed.
Make sure you set the right destination otherwise the installer will report there are no patches that apply! If you setup the environment variables above you should be able to select the sid ses from the name drop down.
After entering in the password and hitting next will give you a list of patches it will apply and clicking on Finish will start the process.
Once all the steps have succeeded, it's time to reverse the SQL we ran at the start.
SQL> alter system set job_queue_processes=10;
System altered.
SQL> show parameter job_queue_processes
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
job_queue_processes integer 10
I also logged into the search query and admin pages just to check everything is working as expected.
Upgrade to patch 10.1.8.4
The final step! This is exactly the same as the .3 upgrade. Login to sqlplus, change the job_queue_processes to 0, run the installer (remember to ensure the destination parameters are correct) and then after set the processes back to the original value.My main reason for doing this upgrade was to get some very nice new functionality regarding the customisation of the SES web pages. In 10.1.8.4 they have implemented the use of FreeMarker templates. Once i've got the hang of making such customisations i'll post up another article.
Comments (1)
Hey Simon,
Note that the oracle-validated RPM will do a lot of that pre-req work for you (installing the RPMs, configuring sysctl, creating the oracle users and groups).
Also, I have the same problem with either VNC or NoMachine NX: they both require the GUI to be active on the server, i.e. the X Server started and the machine in runlevel 5.
You should rather install a X Server on your desktop (Xming for Windows, or built-into MacOS X and Linux) and use SSH with X11 forwarding enabled. That way you can still run GUI applications (like the OUI), but your server doesn't waste precious memory/CPU running a full desktop.
Though, I only really care about this for production servers. :) For demo machines (my own included), I do run an X-based Desktop as it is much simpler!
Posted by Avi Miller | July 10, 2009 2:36 PM
Posted on July 10, 2009 14:36