Fellow co-workers know about my general disdain for HPUX. It’s the OS that seems friendly, until you start working on it, and every step that you need to do turns into a 20 step process. We recently got in a HP PA-RISC box, and I was tasked with getting it setup to meet Oracle pre-reqs. Note that I am primarily a Linux sysadmin and not an antiques broker, hence why I am not so good with HPUX.
To make Oracle on HPUX work, there’s a rather lengthy document that tells you what is required. There’s some disk size requirements, the Java SDK needs to be installed, there’s a bunch of patches that need to be installed, and a bunch of kernel parameters that need to be set.
First, Java. Do I go to Sun? Do I go to HP? Well, it looks like I go to HP, since Oracle wanted version 1.4.2.00, and HP has 1.4.2.17. Download and install. I’m annoyed because when I run swinstall to get it installed, it wants to kick me into this curses based “SAM” admin tool to install the software. Why can’t I just keep it in the regular console?
The server came with a 36GB SCSI disk, with about 15GB left free for use. Fortunately this version of HPUX 11.11 auto-partitions with LVM (presumably - it came to us pre-built) so it should be easy to resize things. The first thing I had to do was resize /tmp. It came to us with 100MB of space, and I needed it to be 400MB. I decided to give it a little extra and make it 500GB. Couldn’t do it online, so I had to drop down to single user mode (init 1) and resize the slice (hah, slice, I’m so old school UNIX I can say that now!) The nice thing was that I was expecting to be kicked off my telnet (yeah, I know) session when I did that, but it kept it up. Hey, maybe HPUX isn’t so bad after all!
Alrighty, /tmp is resized. Lets see what else we need. Oracle says we need these patches:
GOLDQPK11i, December 2004 or later
If GOLDQPK is not installed then these two patchkits need to be installed:
GOLDAPPS11i, December 2004 or later
GOLDBASE11i, December 2004 or later11.11 required patches:
o PHNE_31097 s/b PHNE_32477 s/b PHNE_33498 s/b PHNE_35418 s/b PHNE_36168 s/b PHNE_37110
o PHSS_31221 s/b PHSS_33263 s/b PHSS_33944 s/b PHSS_33945
For JDK, refer to HP Java for latest patches:
o PHSS_30970 s/b PHSS_33033 s/b PHSS_35379 s/b PHSS_35385
For PL/SQL/ProC,OCI,OCCI,XDK:
o PHSS_32508 s/b PHSS_34411 s/b PHSS_35099 s/b PHSS_36087
o PHSS_32509 s/b PHSS_34412 s/b PHSS_35098 s/b PHSS_36086
o PHSS_32510 s/b PHSS_34413 s/b PHSS_35100 s/b PHSS_36088
Ok, so GOLDQPK11i is just a rollup of a bunch of patches and whatnot. Lets download that. Whee, 470MB. It took longer to actually install than to download. The server just churned away on it while it was creating a depot for installation. Finally rolled out of the office at 8:30 PM that night. Started working on this thing much, much earlier but I was distracted by various other things.
The next morning, I’m working from home, and up at 7. Lets look at these other patches. PHNE_31097 and then s/b and other patches? Succeeded by? Who knows? Logged onto HP’s site and went to their patch download area and sure enough, those patches have been succeeded by newer ones. Why didn’t Oracle just require the latest? Why should we assume what s/b is supposed to mean? Ask Larry, I have no idea. Download the patches and install. Ugh, not all of them go. What am I missing?
PHSS_36087 (s700_800 11.11 HP aC++ Compiler (A.03.77))
PHSS_36086 (s700_800 11.11 ANSI C compiler B.11.11.16 cumulative patch)
PHSS_36088 (s700_800 11.11 +O4/PBO Compiler B.11.11.16 cumulative patch)
Ugh, so I guess I need to put a compiler on this thing. Off I go to the HP DSPP site to download the aC++ and ANSI C compiler. 150mb later, I’ve got this thing installed.* Attempted to load the patches that I was missing, and they failed. Why? The new compiler is already past the revisions of those patches. Okay, I guess those pre-reqs are met.
* Let me backtrack a bit here. I actually couldn’t get the thing installed, because /opt was not big enough. I attempted to resize it, but even in single user mode I couldn’t dismount it. So I brought it back up in runlevel 3 and uninstalled all of the Mozilla crap, Apache, Tomcat, and Chinese language support. Now I had enough space. Go me.
Now for the kernel parameters. There’s a giant list of them, and Oracle, rather than giving you some of the numbers to put in, expects you to do some math:
KSI_ALLOC_MAX (NPROC*8)
EXECUTABLE_STACK=0
MAX_THREAD_PROC 1024
MAXDSIZ 1073741824 bytes
MAXDSIZ_64BIT 2147483648 bytes
MAXSSIZ 134217728 bytes
MAXSSIZ_64BIT 1073741824
MAXSWAPCHUNKS 16384*
MAXUPRC ((NPROC*9)/10)
MSGMAP (MSGTQL+2)
MSGMNI NPROC
MSGSEG 32767
MSGTQL 4096
NCSIZE (NINODE+1024)*
NFILE (15*NPROC+2048)
NFLOCKS 4096
NINODE (8*NPROC+2048)
NKTHREAD (((NPROC*7)/4)+16)
NPROC 4096
SEMMAP (SEMMNI+2)*
SEMMNI 4096
SEMMNS (SEMMNI*2)
SEMMNU (NPROC - 4)
SEMVMX 32767
SHMMAX AvailMem
SHMMNI 512
SHMSEG 120
VPS_CEILING 64
Alright, I got myself a little shell script to set all of these values. Reboot and I should be all set, right?
A few hours later I got the machine kicked back to me saying that the kernel parameters are not set. I look and it shows:
# kmtune -q maxdsizParameter Current Dyn Planned Module Version =============================================================================== maxdsiz 268435456 - 1073741824
I suggest another reboot. No dice. Well, I look at the man page for kmtune and it says that the kernel needs to be rebuilt (!!!) and the box rebooted before the new parameters take effect. Ugh. So I found someone’s post on the HP forums on how to rebuild the kernel and reboot, still no dice. 7:00 PM on a Friday I give up. Hopefully Monday I will be able to figure it out.
HPUX, I want to get along with you. Why do you make things so difficult for me?
As an aside, I saw a job posting the other day advertising for a HPUX/Veritas sysadmin paying $150k. Now I know why.
Leave a Reply
You must be logged in to post a comment.