Computer Running out of resources
Running a Pentium 4 with HT
max 60 simultaneous calls
What can I do
top - 02:31:05 up 6 days, 11:25, 1 user, load average: 3.95, 5.38, 6.56
Tasks: 85 total, 1 running, 84 sleeping, 0 stopped, 0 zombie
Cpu(s): 62.3% us, 8.3% sy, 0.0% ni, 29.2% id, 0.0% wa, 0.2% hi, 0.0% si
Mem: 2074748k total, 1195372k used, 879376k free, 34120k buffers
Swap: 779144k total, 124k used, 779020k free, 704280k cached
Obviously you know how to use top, so what's taking up the most CPU?
Normally I'd say that I wouldn't worry about the RAM, but something is actually eating a tiny bit of swap. It's probably nothing to be concerned about, but it's worth a look.
Concentrate on the CPU first, though. Are you having negative symptoms? Choppy audio or anything?
Hello Vijay,
I recommend disabling HT as your first step.
Swap: 779144k total, 124k used, 779020k free, 704280k cached
This indicates that you are just at the cusp of running out of memory, but are still OK for the most part.
top - 02:31:05 up 6 days, 11:25, 1 user, load average: 3.95, 5.38, 6.56
This indicates that you are going beyond a 1.00 load average. This is bad for a phone system; 60 concurrent calls on a Pentium 4 depending on how your dialplan is setup is not sufficient.
Ahh,
well disabling anything from bios will take a while as computer is on another continent
Can you recommend any dell machine which will meet my need?
top - 14:51:08 up 41 min, 1 user, load average: 3.00, 3.83, 3.94
Tasks: 82 total, 4 running, 77 sleeping, 0 stopped, 1 zombie
Cpu(s): 73.5% us, 8.1% sy, 0.0% ni, 17.4% id, 0.0% wa, 1.0% hi, 0.0% si
Mem: 2585560k total, 494456k used, 2091104k free, 28372k buffers
Swap: 779144k total, 0k used, 779144k free, 360068k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
3382 asterisk 17 0 16908 11m 1908 R 48.3 0.5 14:07.21 op_server.pl
3148 asterisk -11 0 45296 20m 5688 S 31.0 0.8 11:29.04 asterisk
3479 root 16 0 52940 5812 3060 S 2.7 0.2 2:53.33 python
4651 root 16 0 3012 952 764 R 0.3 0.0 0:03.17 top
1 root 16 0 2828 548 468 S 0.0 0.0 0:00.25 init
2 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
3 root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0
4 root 5 -10 0 0 0 S 0.0 0.0 0:00.00 events/0
5 root 5 -10 0 0 0 S 0.0 0.0 0:00.00 khelper
6 root 5 -10 0 0 0 S 0.0 0.0 0:00.00 kblockd/0
7 root 15 0 0 0 0 S 0.0 0.0 0:00.18 khubd
41 root 20 0 0 0 0 S 0.0 0.0 0:00.00 pdflush
42 root 15 0 0 0 0 S 0.0 0.0 0:00.17 pdflush
44 root 12 -10 0 0 0 S 0.0 0.0 0:00.00 aio/0
39 root 15 0 0 0 0 S 0.0 0.0 0:00.06 kapmd
43 root 25 0 0 0 0 S 0.0 0.0 0:00.00 kswapd0
118 root 25 0 0 0 0 S 0.0 0.0 0:00.00 kseriod
I've had good luck with PowerEdge 2950's and I know other people have been using SC440's with a lot of success. The thing to remember about the Dell's is that unless you are running the trixbox 2.3 code (hopefully to becomes 2.4 very soon) you will not have builtin driver support for the Braodcon NIC's in these servers. You can add them manually, as has been documented before in these forums.
Just a heads up.
Something that would help a bit until you get a new box would be to disable FOP. Obviously you can't if you're using it, but it is an option.
If you are, you might be able to run it on a separate box. I've never tried it, and you'd have to generate the config files by hand and then copy them over to the other box, but otherwise FOP just communicates with asterisk through the management port, so it could, theoretically, run on a remote server.
Also, FreePBX doesn't generate the most efficient dial plans possible. It's built for ease of use, not efficiency. You could probably generate your extensions.conf by hand and be able to squeeze out more performance. It's up to you to determine if that's worth your while. FreePBX adds some very nice features that would be painful to lose.
If you don't want to or can't create your own dial plans outside of FreePBX, you should at least take a good hard look at your call routing and everything to see if there are any call routing steps you could remove.
Lastly, go through your startup directories and see if can stop services from running that you don't need. Every little bit of extra performance you can do right now would be helpful. For example, you can probably turn off, say, cups since you're probably not printing, and you can turn off pcmcia services since it's (probably -- I hope not!) not a laptop, etc. A default CentOS install runs a lot of services by default that you might not need.
HTH.
I am scraping out some processes that are not needed
FOP is needed all the time, running on a separate server might be a good idea
I always want to save bandwidth also
Would I save more bandwidth if i put FOP server on one of my local machine as opposed to this remote server?
Depends, you'd generate a small bit more traffic on the admin port going across the Internet. Not a lot. If other people are accessing FOP directly on that server then you might save some bandwidth by moving it to another network. But I don't know how you're using it.
Depending on what you're using FOP for, though, it might make sense to run it locally.
I've never done that and I don't know that it would work, but it is worth a shot.
That being said: I would certainly try the HT thing if at all possible -- all of this might go away if that's the problem, and it's an easy fix.
Edit: while you're at it, consider installing an IP KVM or remote access box so that you can reboot and modify BIOS settings remotely. You may want to consider a remote power switch too, just in case you ever need to kill the power on the box remotely.
For one system you can use a box like this:
http://www.tigerdirect.com/applications/SearchTools/item-details....
Also, if all you're doing is monitoring trunk usage, you could easily code something locally that did that for you over the management port, and you'd free up quite a bit of cpu on the server.
The obvious answer is upgrade your CPU.
Depending on what is going on when you have high CPU usage you can also look into reducing the amount of transcoding going on. So if there is lot's of IVR, Voicemail etc. then try keep it native or low transcoding formats. If your using ulaw for your calls then you should be using ulaw sound files.
If your using g729 on some calls then that is obviously going to eat a lot of CPU resources.
The Dell 2950 should be more than fine for 100 calls with a pair of 2 ghz Xeons (and possibly even lesser speed). I have not had trouble with the 860 to 2950 series as far as drivers, all load out of the box on trix 2.2.x. The lower models like 440 are a different story as told by several other forum threads.
You might want to look into a FOP replacement like HUDlite, isymphony or ASTassistant.
The transcoding issue can be a big thing - mustardman covered it pretty good, mainly if you are running a codec, you want to match that codec from end to end as much as possible to achieve maximum performance.
So if you have G729 trunks, then running G729 on your phones, and converting all played back sound to g729 would greatly reduce server load.
I ordered a dell 440, will be shipped out on the 5th of jan
There is plenty of trans coding from g723 to endpoint because endpoint does not like g723
how can i stop fop completely
at this time if I kill it from top it comes back up and same if i restart
Thanks for KVM advice
even if webpage is closed and i stop fop, it still starts back
I have one server on which i would like to stop it completely (at least for now)
I dont mind loading nic drivers manually and I also need a second nic so it should work out for me
but I will review 840/860
Thanks
Hello forum,
I also faced the similar problem. I had configured 280 zaptel channel 20 for outgoin and 260 for internal extensions. Everything seems to be fine except cpu load increases to 10 and reduces back to 1-2 and after some moments it will again rise to 9-10. while doing top i see op_server.pl and asterisk are eating so much cpu.
Is there anyway to reduce the load.?
Is this a problem because of the miss-configuration of the system?
HOW TO DEAL WITH THIS PROBLEM ? PLEZ HELP..!
You might want to look into a FOP replacement like HUDlite, isymphony or ASTassistant.
I watch trunks exclusively
I don't care about extensions
can any of the others do it?
I have used hud (full version) before but it was for extensions, can it be modified for just trunks?
not sure on trunk watching.
if you want to turn off fop you can do this command:
amportal stop_fop
Next - use the following at your own risk (I am not a scriptor)
If you want to keep it from running, edit this file (make a backup first):
/var/lib/asterisk/bin/freepbx_engine
towards the bottom find (ignore the < br /> put in by the forum):
then run_fop fi ;; stop) stop_asterisk stop_fop ;; restart) stop_asterisk stop_fop sleep 1 chown_asterisk run_asterisk if [ -z "$FOPRUN" -o "$FOPRUN" == "true" -o "$FOPRUN" == "TRUE" -o "$FOPRUN" == "True" -o "$FOPRUN" == "yes" -o "$FOPRUN" == "YES" -o "$FOPRUN" == "Yes" ] then run_fop fi ;; stop_fop) stop_fop ;; start_fop) run_asterisk run_fop ;; restart_fop) stop_fop run_asterisk run_fop
comment out the pieces in that entire section that say then run_fop, or stop_fop, like so:
#then #run_fop fi ;; stop) stop_asterisk #stop_fop
that should keep it from running - make sure to make a backup first!!


Member Since:
2006-11-11