找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 19859|回复: 17

[linux] 公司linux做的路由器经常死机是怎么回事?谢谢大家了

[复制链接]
发表于 2007-11-28 10:52:29 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

×
我刚来公司做网管,有台linux服务器做网关路由功能,但是说每个3—5天就会死一次机。我刚着手来检查这台机器,不知道哪里出了问题
[root@linux root]# lsb_release -a
LSB Version:    1.3
Distributor ID: FedoraCore
Description:    Fedora Core release 3 (Heidelberg)
Release:        3
Codename:       Heidelberg

[root@linux root]# top
10:47:45  up 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% iowait  98.2% idle
CPU1 states:   4.2% user   3.2% system    0.0% nice   0.0% iowait  91.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

[root@linux root]# 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 编辑 ]
routeros
发表于 2007-11-29 14:31:29 | 显示全部楼层
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

这是我的,这算是短的了,以前开过大半年没问题的
routeros
回复

使用道具 举报

发表于 2007-11-29 14:32:48 | 显示全部楼层
不知道你死机是因为硬件还是软件,就你那几句话,神仙才知道为什么死机
如果硬件没问题,你要稳定和高速,用gentoo编译一个出来吧,绝对爽
routeros
回复

使用道具 举报

发表于 2007-11-29 15:07:21 | 显示全部楼层
楼主你的路由器带了多少台机器? 路由器上跑了些什么服务?

从你提供的信息来看. 路由器的内存明显不够用了.   如果路由器提供服务多或者带的客户机多.可以尝试加内存看看还会不会死机?
routeros
回复

使用道具 举报

 楼主| 发表于 2007-11-29 15:41:30 | 显示全部楼层
原帖由 jk0wg 于 2007-11-29 15:07 发表
楼主你的路由器带了多少台机器? 路由器上跑了些什么服务?

从你提供的信息来看. 路由器的内存明显不够用了.   如果路由器提供服务多或者带的客户机多.可以尝试加内存看看还会不会死机?


你好,谢谢你的回复,三十多台电脑吧,我之前头儿跟我说3-5天死机,现在也都4天多了,还没有出现死机
routeros
回复

使用道具 举报

 楼主| 发表于 2007-11-29 15:45:17 | 显示全部楼层
谢谢“ 情灭缘尽”的回复:

现在不太清楚是硬件还是软件原因,大概应该是软件。能有一些排查的方法么?现在公司靠这个路由维持网络呢,不能再装个gentoo编译出一个了
routeros
回复

使用道具 举报

发表于 2007-11-29 20:00:39 | 显示全部楼层
楼主从内存占用方面来检查吧.  你才30台就占用那么多内存? 你看看我150台的内存占用情况:

[[i] 本帖最后由 jk0wg 于 2007-11-29 20:03 编辑 [/i]]
1.JPG
routeros
回复

使用道具 举报

 楼主| 发表于 2007-11-30 11:47:11 | 显示全部楼层
谢谢大家回复,因为开apache服务要做很多测试,可能是http服务器问题,这台机器1G内存是有一点小。我中午加到2G看看一段时间效果如何吧~~thx all the reply

[ 本帖最后由 万贤 于 2007-11-30 14:17 编辑 ]
routeros
回复

使用道具 举报

发表于 2007-11-30 17:06:37 | 显示全部楼层
你的意思是在路由器上提供WEB服务啊?    内存占用多的时候.看看路由器的吞吐量如何?

下一个sysstat-4.0.7-4.i386.rpm安装后.使用sar -n DEV 2 5查看网络的吞吐量.
看看下面的输入结果是多少?
  1. cat /proc/sys/net/ipv4/ip_conntrack_max
复制代码
如果上面的输出为一万多.那么做以下的修改:
  1. echo "net.ipv4.ip_conntrack_max = 26843546" >/etc/sysctl.conf
复制代码

[ 本帖最后由 jk0wg 于 2007-11-30 17:08 编辑 ]
routeros
回复

使用道具 举报

发表于 2007-12-1 22:32:44 | 显示全部楼层
以下几个方面要修改:
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台也够用了
routeros
回复

使用道具 举报

发表于 2007-12-4 14:24:02 | 显示全部楼层
很可能是硬件问题。或者你重新编译个内核看看。
routeros
回复

使用道具 举报

 楼主| 发表于 2007-12-4 14:35:50 | 显示全部楼层
原帖由 jk0wg 于 2007-11-29 20:00 发表
楼主从内存占用方面来检查吧.  你才30台就占用那么多内存? 你看看我150台的内存占用情况:



加到2G后,内存又都被系统占用了~~这是怎么回事???
Mem:  2064188k av, 2023720k used,   40468k free,       0k shrd,  632920k buff
routeros
回复

使用道具 举报

 楼主| 发表于 2007-12-4 14:36:25 | 显示全部楼层
原帖由 jk0wg 于 2007-11-30 17:06 发表
你的意思是在路由器上提供WEB服务啊?    内存占用多的时候.看看路由器的吞吐量如何?

下一个sysstat-4.0.7-4.i386.rpm安装后.使用sar -n DEV 2 5查看网络的吞吐量.
看看下面的输入结果是多少?
cat /proc/sys/ne ...


我已经修改了原来是6w多
routeros
回复

使用道具 举报

 楼主| 发表于 2007-12-4 14:40:07 | 显示全部楼层
原帖由 DreamCat 于 2007-12-4 14:24 发表
很可能是硬件问题。或者你重新编译个内核看看。


机器基本不能关,所以基本最好不能改动什么,公司唯一一台路由器,坏了就麻烦了
routeros
回复

使用道具 举报

发表于 2007-12-22 00:50:20 | 显示全部楼层
找出是什么进程占用的内存资源.
routeros
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|小黑屋|软路由 ( 渝ICP备15001194号-1|渝公网安备 50011602500124号 )

GMT+8, 2024-12-23 16:41 , Processed in 0.072301 second(s), 8 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表