公司linux做的路由器经常死机是怎么回事?谢谢大家了
我刚来公司做网管,有台linux服务器做网关路由功能,但是说每个3—5天就会死一次机。我刚着手来检查这台机器,不知道哪里出了问题# lsb_release -a
LSB Version: 1.3
Distributor ID: FedoraCore
Description: Fedora Core release 3 (Heidelberg)
Release: 3
Codename: Heidelberg
# top
10:47:45up 4 days, 18:11,8 users,load average: 0.21, 0.42, 0.33
158 processes: 156 sleeping, 2 running, 0 zombie, 0 stopped
CPU0 states: 0.2% user 1.0% system 0.0% nice 0.0% iowait98.2% idle
CPU1 states: 4.2% user 3.2% system 0.0% nice 0.0% iowait91.4% idle
Mem:1030032k av, 1021056k used, 8976k free, 0k shrd,356420k buff
773200k actv, 2420k in_d, 21936k in_c
Swap: 2040244k av,334904k used, 1705340k free 303380k cached
# uname -a
Linux linux 2.4.20-8smp #1 SMP Thu Mar 13 17:45:54 EST 2003 i686 i686 i386 GNU/Linux
能帮我想想是哪里问题么?谢谢
[ 本帖最后由 万贤 于 2007-11-28 10:55 编辑 ] debian:~# uptime
14:35:58 up 38 days, 1 min,1 user,load average: 0.36, 0.23, 0.14
debian:~# uname -a
Linux debian 2.6.21-2-686 #1 SMP Wed Jul 11 03:53:02 UTC 2007 i686 GNU/Linux
debian:~# top
top - 14:36:22 up 38 days, 1 min,1 user,load average: 0.31, 0.23, 0.14
Tasks:76 total, 1 running,75 sleeping, 0 stopped, 0 zombie
Cpu(s):0.7%us,0.2%sy,0.0%ni, 97.3%id,1.7%wa,0.0%hi,0.0%si,0.0%st
Mem: 256748k total, 221416k used, 35332k free, 41808k buffers
Swap: 771080k total, 23984k used, 747096k free, 81356k cached
这是我的,这算是短的了,以前开过大半年没问题的 不知道你死机是因为硬件还是软件,就你那几句话,神仙才知道为什么死机
如果硬件没问题,你要稳定和高速,用gentoo编译一个出来吧,绝对爽 楼主你的路由器带了多少台机器? 路由器上跑了些什么服务?
从你提供的信息来看. 路由器的内存明显不够用了. 如果路由器提供服务多或者带的客户机多.可以尝试加内存看看还会不会死机? 原帖由 jk0wg 于 2007-11-29 15:07 发表 http://bbs.routerclub.com/images/common/back.gif
楼主你的路由器带了多少台机器? 路由器上跑了些什么服务?
从你提供的信息来看. 路由器的内存明显不够用了. 如果路由器提供服务多或者带的客户机多.可以尝试加内存看看还会不会死机?
你好,谢谢你的回复,三十多台电脑吧,我之前头儿跟我说3-5天死机,现在也都4天多了,还没有出现死机 谢谢“ 情灭缘尽”的回复:
现在不太清楚是硬件还是软件原因,大概应该是软件。能有一些排查的方法么?现在公司靠这个路由维持网络呢,不能再装个gentoo编译出一个了 楼主从内存占用方面来检查吧.你才30台就占用那么多内存? 你看看我150台的内存占用情况:
[ 本帖最后由 jk0wg 于 2007-11-29 20:03 编辑 ] 谢谢大家回复,因为开apache服务要做很多测试,可能是http服务器问题,这台机器1G内存是有一点小。我中午加到2G看看一段时间效果如何吧~~thx all the reply
[ 本帖最后由 万贤 于 2007-11-30 14:17 编辑 ] 你的意思是在路由器上提供WEB服务啊? 内存占用多的时候.看看路由器的吞吐量如何?
下一个sysstat-4.0.7-4.i386.rpm安装后.使用sar -n DEV 2 5查看网络的吞吐量.
看看下面的输入结果是多少?
cat /proc/sys/net/ipv4/ip_conntrack_max
如果上面的输出为一万多.那么做以下的修改:
echo "net.ipv4.ip_conntrack_max = 26843546" >/etc/sysctl.conf
[ 本帖最后由 jk0wg 于 2007-11-30 17:08 编辑 ] 以下几个方面要修改:
1. ps ax 看是哪个进程占用了内存,如果是snmpd,停之.
如果是httpd,修改/etc/httpd/conf/httpd.conf里面的
MaxRequestsPerChild 为 200
service httpd restart重新启动apache
2. 最好使用REDHAT AS或CentOS, 能支持下面参数的修改
modprobe ip_conntrack hashsize=8192
modprobe ip_conntrack_ftp
iptables -F
echo 120 > /proc/sys/net/ipv4/netfilter/ip_conntrack_generic_timeout
echo 10> /proc/sys/net/ipv4/netfilter/ip_conntrack_icmp_timeout
echo 1200 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established
echo 10> /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_fin_wait
echo 10> /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_close_wait
echo 10> /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_time_wait
echo 5 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_syn_recv
echo 5 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_syn_sent
echo 10> /proc/sys/net/ipv4/netfilter/ip_conntrack_udp_timeout
echo 60> /proc/sys/net/ipv4/netfilter/ip_conntrack_udp_timeout_stream
1G内存的机器,别说是30台机器,就是1000台也够用了 很可能是硬件问题。或者你重新编译个内核看看。 原帖由 jk0wg 于 2007-11-29 20:00 发表 http://bbs.routerclub.com/images/common/back.gif
楼主从内存占用方面来检查吧.你才30台就占用那么多内存? 你看看我150台的内存占用情况:
加到2G后,内存又都被系统占用了~~这是怎么回事???
Mem:2064188k av, 2023720k used, 40468k free, 0k shrd,632920k buff 原帖由 jk0wg 于 2007-11-30 17:06 发表 http://bbs.routerclub.com/images/common/back.gif
你的意思是在路由器上提供WEB服务啊? 内存占用多的时候.看看路由器的吞吐量如何?
下一个sysstat-4.0.7-4.i386.rpm安装后.使用sar -n DEV 2 5查看网络的吞吐量.
看看下面的输入结果是多少?
cat /proc/sys/ne ...
我已经修改了原来是6w多 原帖由 DreamCat 于 2007-12-4 14:24 发表 http://bbs.routerclub.com/images/common/back.gif
很可能是硬件问题。或者你重新编译个内核看看。
机器基本不能关,所以基本最好不能改动什么,公司唯一一台路由器,坏了就麻烦了 找出是什么进程占用的内存资源.
页:
[1]
2