I'm running redhat v7.1, 2.4.2-2smp on a dual intel with the processor
specs from /proc/cpuinfo shown below. I'm also running iplanet v4.1,
sp9, installed as user nobody and mysql as a database.
I have a gig of ram and when I run top, it shows that the OS knows
about the full gig of ram, but it only will allocate approx. 15%. See
below for the output from top. As you can see, many httpd processes
are showing, but the ram isn't being utilized. It's a new box and is
getting a lot of traffic from the webserver (900 processes in top) and
iplanet is locking up and refusing to accept any connections because
the ram isn't being utilized (i think).
Anyone hear of a similar problem? Is it a linux or an iplanet problem?
Is there some configurations that I should check on linux, iplanet,
bios, other? Is there an incompatibility problem with the versions of
iplanet and linux I'm using?
The weird thing is that earlier I had installed the non-smp version of
the OS and everything worked perfectly. I have had the same problem
using the smp version of linux 7.1 on both an intel and an AMD box.
This seems like too much of a coincidence.
Any help would be greatly appreciated.
Cheers.
output from running top:
------------------------------------------ 8:30pm up 9:13, 5
users, load average: 4.99, 3.13, 1.72
984 processes: 981 sleeping, 3 running, 0 zombie, 0 stopped
CPU0 states: 8.13% user, 50.8% system, 0.0% nice, 41.8% idle
CPU1 states: 7.11% user, 48.17% system, 0.0% nice, 44.1% idle
Mem: 1028420K av, 156840K used, 871580K free, 0K shrd,
6920K buff
Swap: 1028120K av, 0K used, 1028120K free
70308K cached
PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME COMMAND
3250 nobody 17 0 34304 33M 3260 R 6.0 3.3 0:01 ns-httpd
21045 root 20 0 1652 1652 840 R 2.4 0.1 41:48 top
31134 root 10 0 1680 1680 840 R 2.1 0.1 1:01 top
3443 mysql 9 0 3980 3980 1640 S 0.4 0.3 0:00 mysqld
3337 nobody 9 0 35700 34M 3260 S 0.3 3.4 0:00 ns-httpd
3263 nobody 9 0 34484 33M 3260 S 0.2 3.3 0:00 ns-httpd
3266 nobody 9 0 34628 33M 3260 S 0.2 3.3 0:00 ns-httpd
3318 nobody 9 0 35280 34M 3260 S 0.2 3.4 0:00 ns-httpd
3325 nobody 9 0 35680 34M 3260 S 0.2 3.4 0:00 ns-httpd
3362 nobody 9 0 35872 35M 3260 S 0.2 3.4 0:00 ns-httpd
3378 nobody 9 0 36240 35M 3260 S 0.2 3.5 0:00 ns-httpd
3405 nobody 9 0 36396 35M 3260 S 0.2 3.5 0:00 ns-httpd
3264 nobody 9 0 34504 33M 3260 S 0.1 3.3 0:00 ns-httpd
3287 nobody 9 0 35172 34M 3260 S 0.1 3.4 0:00 ns-httpd
3292 nobody 9 0 35172 34M 3260 S 0.1 3.4 0:00 ns-httpd
3295 nobody 9 0 35220 34M 3260 S 0.1 3.4 0:00 ns-httpd
3307 nobody 9 0 35228 34M 3260 S 0.1 3.4 0:00 ns-httpd
3319 nobody 9 0 35308 34M 3260 S 0.1 3.4 0:00 ns-httpd
3320 nobody 9 0 35316 34M 3260 S 0.1 3.4 0:00 ns-httpd
3333 nobody 9 0 35696 34M 3260 S 0.1 3.4 0:00 ns-httpd
3334 nobody 9 0 35700 34M 3260 S 0.1 3.4 0:00 ns-httpd
3356 nobody 9 0 35828 34M 3260 S 0.1 3.4 0:00 ns-httpd
3445 mysql 9 0 3980 3980 1640 S 0.1 0.3 0:00 mysqld
3446 mysql 9 0 3980 3980 1640 S 0.1 0.3 0:00 mysqld
3485 nobody 9 0 36480 35M 3260 S 0.1 3.5 0:00 ns-httpd
3739 nobody 9 0 36820 35M 3268 S 0.1 3.5 0:00 ns-httpd
4071 nobody 9 0 36824 35M 3268 S 0.1 3.5 0:00 ns-httpd
1 root 8 0 544 544 472 S 0.0 0.0 0:47 init
2 root 8 0 0 0 0 SW 0.0 0.0 0:00 keventd
3 root 9 0 0 0 0 SW 0.0 0.0 0:00 kswapd
4 root 9 0 0 0 0 SW 0.0 0.0 0:00
kreclaimd
5 root 9 0 0 0 0 SW 0.0 0.0 0:00 bdflush
6 root 9 0 0 0 0 SW 0.0 0.0 0:30 kupdated
7 root -1 -20 0 0 0 SW< 0.0 0.0 0:00
mdrecoveryd
77 root 9 0 0 0 0 SW 0.0 0.0 0:00 khubd
----------------------------------------------------------------------
output from /proc/cpuinfo:
------------------------------------------
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 8
model name : Pentium III (Coppermine)
stepping : 10
cpu MHz : 1004.523
cache size : 256 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
mca cmov pat pse36 mmx fxsr sse
bogomips : 2005.40
processor : 1
vendor_id : GenuineIntel
cpu family : 6
model : 8
model name : Pentium III (Coppermine)
stepping : 10
cpu MHz : 1004.523
cache size : 256 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
mca cmov pat pse36 mmx fxsr sse
bogomips : 2005.40
---------------------------------------------------------------------- |
Request for Question Clarification by
haversian-ga
on
04 Nov 2002 16:46 PST
Early versions of the 2.4 kernel had quite a few bugs in them, not the
least of which were some nasty VM subsystem issues. If you look at
top's output, you are not using any swapspace, and the httpd processes
aren't using much CPU time either, yet your load average is high.
Typically that means the processes are waiting on the disk, though
since webserving is highly read-only, linux should cache the relevant
files in RAM and speed things up enormously. How big is your website?
If you are serving out CD images, they won't fit in memory and you
will definately be I/O bound.
What I would suggest is that you upgrade your kernel and see if your
problems remain. If so, send us the output of top again. Also, look
through your logs for any indication of what is going wrong, and run
some sort of network monitor for a bit. There's something called
iptraf that will give you all sorts of good information about what
connections you have open.
|
Clarification of Question by
softwareguy-ga
on
04 Nov 2002 17:27 PST
Wow, that was a very fast reply - much appreciated.
I think we're definitely I/O bound. When a request comes in to us, we
crawl a bunch of other sites, download info from them and resend some
of that info back out to the requesting client. The httpd processes
are calling a servlet which waits on content not from the disk, but
from the network (web).
I thing the swap isn't being eaten into because the ram hasn't even
been dented yet - that's the problem; linux isn't utilizing the ram it
has. We handle a lot of traffic and this is one of our new servers we
just put up, that's why there's such a heavy load on it.
More clarification from you:
when you say logs, you mean the OS logs, right? Where are they
located?
Also, can I upgrade the kernel without installing a different version
of linux?
What version of linux would you recommend using?
thanks again for your help.
|
Request for Question Clarification by
haversian-ga
on
04 Nov 2002 20:56 PST
Ok, if you're fetching things from the web and parsing them, you're
going to need to have a bunch of transactions in progress. I'm
unfamiliar with iplanet so I can't help much with the configuration
there but assuming you have things setup properly in that regard, only
150M of memory used seems rather low. It's probably true that you're
not using swap because the RAM isn't exhausted, but the distinction is
important.
> when you say logs, you mean the OS logs, right? Where are they
located?
OS logs or iPlanet's logs. Usually they're in /var/log - take a look
at /var/log/messages and the like.
> Also, can I upgrade the kernel without installing a different
version of linux?
You don't need to install Redhat 8, if that's what you're asking.
You'll need a machine with the kernel sources, gcc, some header files,
libraries, etc. If you've got that, download the kernel and configure
/ build / install it (there are good howtos on the web for doing
this). Alternately, Redhat probably has a preconfigured and -compiled
kernel that you can download and install very easily, though I've
always compiled kernels myself so I can't say how easy the other
option is.
> What version of linux would you recommend using?
Read the release notes, but pretty much anything later than what
you're using would be better. Certain versions are known to be bad
but you won't see them offered for download much. I really don't know
how far along the 2.4 kernel is, but I suspect at least 2.4.20...
-Haversian
|