sun的一台机子运行两天以后变的奇慢,请教

发表于:2007-06-09来源:作者:点击数: 标签:
#vmstat2 kthrmemorypagediskfaultscpu rbwswapfreeremfpipofrdesrs0s1s6--insycsussyid 00414893521160144252649043146156886389420065911792320594 00315143681604824268154681127129565746000536194703664 003151436816072434506834610304880840300052111

# vmstat 2
 kthr      memory            page            disk          faults      cpu
 r b w   swap  free  re  mf pi po fr de sr s0 s1 s6 --   in   sy   cs us sy id
 0 0 4 1489352 1160144 25 264 90 43 146 15688 6389 4 2 0 0 659 1179 232 0 5 94
 0 0 31 514368 16048 24  26  8 154 681 12712 956574 6 0 0 0 536 19 47  0 36 64
 0 0 31 514368 16072 43  45  0 68 346 10304 880840 3 0 0 0 521 11  39  0 34 66
 0 0 31 514368 16056 43  45  0 68 342 8352 792549 3 0 0 0 520 11   38  0 30 70
 0 0 31 514368 16088 42  44  0 64 334 6768 637450 8 0 0 0 556 11   43  0 33 67
 0 0 31 514368 16048 35  37  0 56 283 5488 673222 2 0 0 0 520 11   39  0 27 73
 0 0 31 514368 16032 36  38  0 60 287 4456 654223 2 0 0 0 518 11   39  0 26 74
 0 0 31 514368 16024 35  37  0 56 279 3616 620400 3 0 0 0 519 11   38  0 25 75
 0 0 31 514368 16016 35  37  0 56 279 2936 606050 2 0 0 0 519 11   37  0 24 76
 0 0 31 514368 16008 35  37  0 56 279 2384 574555 2 0 0 0 518 11   42  0 23 77
这是两天后的vmstat的状态

负载一直是2.00多,后来pkill vold后变为了1.4多,奇怪为什么vold占了这么多负载,服务器在机房,没有人动
top

last pid:  3097;  load averages:  1.06,  1.04,  1.05                                                                15:01:19
22 processes:  21 sleeping, 1 on cpu
CPU states: 64.1% idle,  0.1% user, 35.8% kernel,  0.0% iowait,  0.0% swap
Memory: 2048M real, 16M free, 10M swap in use, 502M swap free

kernel 怎么这么高?开始运行了solaris9自带的apache和我自己装的proftpd1.2.8

请教高手怎么会这样,以前是solaris8这,我才换了9,没想到还是这样

 非凡公子 回复于:2003-06-19 15:36:36
mpstat 5的显示

CPU minf mjf xcal  intr ithr  csw icsw migr smtx  srw syscl  usr sys  wt idl
  0    8   0  162   415  315   11    0    0    0    0     2    0  40   0  60
  2    9   0    6   101  100   20    0    0    0    0     2    0   0   0 100
 都是系统占用的,系统在做什么呢?怎么查呀?

 race 回复于:2003-06-19 16:06:43
prstat看看那个没sleep的进程是什么

 非凡公子 回复于:2003-06-19 16:19:48
sar 的报告
# sar  -g 5 10

SunOS yt168sun220 5.9 Generic_112233-03 sun4u    06/19/2003

16:12:55  pgout/s ppgout/s pgfree/s pgscan/s %ufs_ipf
16:13:00     2.80    14.80    41.20 1038847.00     0.00
16:13:05     2.40    11.40    28.40 981807.81     0.00
16:13:10     2.81    10.42    25.45 772992.00     0.00
16:13:15     2.40    10.40    24.20 659052.81     0.00
16:13:20     2.99    10.38    24.15 598419.12     0.00
16:13:25     2.00    10.42    24.25 572330.50     0.00
16:13:30     2.79    10.38    24.15 518945.28     0.00
16:13:35     2.00    10.40    24.20 494178.41     0.00
16:13:40     2.61    11.42    31.66 492911.44     0.00
16:13:45     2.40    10.38    24.15 482154.88     0.00


prstat的报告,除了它本身,都在sleep

 PID USERNAME  SIZE   RSS STATE  PRI NICE      TIME  CPU PROCESS/NLWP
  3136 root     5416K  248K cpu0    59    0   0:00:00 0.1% prstat/1
   835 root     4680K    0K sleep   59    0   0:00:03 0.0% sshd/1
   845 oracle   1056K    0K sleep   59    0   0:00:00 0.0% sh/1
  3064 oracle   1056K    0K sleep   59    0   0:00:00 0.0% sh/1
  1440 root     2600K    0K sleep   59    0   0:00:00 0.0% bash/1
  3088 root      328K    0K sleep   59    0   0:00:00 0.0% sh/1
   250 root     2856K    0K sleep   59    0   0:00:00 0.0% sshd/1
   246 root     1784K    0K sleep   59    0   0:00:00 0.0% ttymon/1
   248 root     1776K    0K sleep   59    0   0:00:00 0.0% ttymon/1
   207 root     3184K    0K sleep   59    0   0:00:00 0.0% htt_server/2
   205 root     1096K    0K sleep   59    0   0:00:00 0.0% htt/1
  3062 root     4640K    0K sleep   59    0   0:00:04 0.0% sshd/1
   934 root      328K    0K sleep   59    0   0:00:00 0.0% sh/1
   168 root     2432K    0K sleep   59    0   0:00:00 0.0% cron/1
   181 root     1400K    0K sleep   59    0   0:00:00 0.0% powerd/2
   188 root     1040K    0K sleep   59    0   0:00:00 0.0% utmpd/1
    60 root     2808K    8K sleep   59    0   0:00:00 0.0% picld/4
    50 root     2424K    8K sleep   59    0   0:00:00 0.0% syseventd/13
   142 root     1960K    0K sleep   59    0   0:00:00 0.0% .netd/1
   160 root     3608K    8K sleep   59    0   0:02:39 0.0% syslogd/13
   245 root     1776K    0K sleep   59    0   0:00:00 0.0% sac/1
     1 root     1960K    0K sleep   59    0   0:00:01 0.0% init/1

 非凡公子 回复于:2003-06-19 16:22:44
top也一样,除了它本身都在sleep,可是kernel就是高
last pid:  3137;  load averages:  1.15,  1.06,  1.04                                                                16:19:35
22 processes:  21 sleeping, 1 on cpu
CPU states: 74.7% idle,  0.0% user, 25.3% kernel,  0.0% iowait,  0.0% swap
Memory: 2048M real, 16M free, 10M swap in use, 502M swap free

   PID USERNAME THR PRI NICE  SIZE   RES STATE    TIME    CPU COMMAND
  3137 root       1  59    0 2616K  312K cpu/0    0:00  0.25% top
  3062 root       1  59    0 4640K    0K sleep    0:05  0.24% sshd
  3088 root       1  59    0  328K    0K sleep    0:00  0.01% sh
   160 root      13  59    0 3608K    8K sleep    2:39  0.00% syslogd
   835 root       1  59    0 4680K    0K sleep    0:03  0.00% sshd
     1 root       1  59    0 1960K    0K sleep    0:01  0.00% init
    60 root       4  59    0 2808K    8K sleep    0:00  0.00% picld
    50 root      13  59    0 2424K    8K sleep    0:00  0.00% syseventd
   207 root       2  59    0 3184K    0K sleep    0:00  0.00% htt_server
   250 root       1  59    0 2856K    0K sleep    0:00  0.00% sshd
  1440 root       1  59    0 2600K    0K sleep    0:00  0.00% bash
   168 root       1  59    0 2432K    0K sleep    0:00  0.00% cron
   142 root       1  59    0 1960K    0K sleep    0:00  0.00% inetd
   246 root       1  59    0 1784K    0K sleep    0:00  0.00% ttymon
   248 root       1  59    0 1776K    0K sleep    0:00  0.00% ttymon

系统刚装好还没5天,应该可以排除被人入侵的可能

 *.9010               *.*                0      0 49152      0 LISTEN
      *.22                 *.*                0      0 49152      0 LISTEN
      *.22                              *.*                             0      0 49152      0 LISTEN
就这两个端口了,都关了

 race 回复于:2003-06-19 17:19:42
Memory: 2048M real, 16M free, 10M swap in use, 502M swap free,SWAP到底多大?

是不是网卡负载重?

 sql2000 回复于:2003-06-19 17:26:46
25.3% kernel
内核怎么这么高
你是不是该多什么参数了

 非凡公子 回复于:2003-06-19 17:57:46
# uptime
  5:55pm  up 5 day(s),  4:55,  2 users,  load average: 0.66, 0.92, 0.98

我没有动系统的东西呀,刚起来的时候没事,运行几天就这样了

 非凡公子 回复于:2003-06-19 18:00:01
[quote:5c1703f9dd="race"]Memory: 2048M real, 16M free, 10M swap in use, 502M swap free,SWAP到底多大?

是不是网卡负载重?[/quote:5c1703f9dd]     


# swap -s
total: 7792k bytes allocated + 1632k reserved = 9424k used, 514920k available
我分区的时候分了512M给swap

网卡负载重,可是我现在把所有的服务都停了呀,负载还是下不来呀

如果是的话怎么来解决一下呢?谢谢

 sql2000 回复于:2003-06-19 18:01:41
日志里抱什么了吗?

 非凡公子 回复于:2003-06-19 18:56:45
刚刚我重启了,这是当前的状态
last pid:   275;  load averages:  0.00,  0.00,  0.01                                                                18:54:30
20 processes:  19 sleeping, 1 on cpu
CPU states: 99.9% idle,  0.0% user,  0.1% kernel,  0.0% iowait,  0.0% swap
Memory: 2048M real, 1908M free, 9080K swap in use, 2178M swap free

   PID USERNAME THR PRI NICE  SIZE   RES STATE    TIME    CPU COMMAND
   275 root       1  59    0 2600K 1656K cpu/2    0:00  0.16% top
   233 root       1  59    0 4632K 2512K sleep    0:01  0.00% sshd
   191 root       2  59    0 3216K 1824K sleep    0:00  0.00% htt_server
    60 root       4  59    0 2808K 1800K sleep    0:00  0.00% picld
   161 root      13  59    0 3576K 1608K sleep    0:00  0.00% syslogd
    50 root      13  59    0 2424K 1344K sleep    0:00  0.00% syseventd
   226 root       1  59    0 2856K 1304K sleep    0:00  0.00% sshd
   223 root       1  59    0 1816K 1104K sleep    0:00  0.00% ttymon
   225 root       1  59    0 1784K 1096K sleep    0:00  0.00% ttymon
   163 root       1  59    0 2408K 1064K sleep    0:00  0.00% cron
   222 root       1  59    0 1776K 1024K sleep    0:00  0.00% sac
   165 root       2  59    0 1400K 1016K sleep    0:00  0.00% powerd
   182 root       1  59    0 1728K  992K sleep    0:00  0.00% smcboot
   148 root       1  59    0 1952K  816K sleep    0:00  0.00% inetd
   189 root       1  59    0 1096K  672K sleep    0:00  0.00% htt




# uptime
  6:54pm  up 46 min(s),  1 user,  load average: 0.00, 0.00, 0.01

 非凡公子 回复于:2003-06-19 18:58:35
[quote:d7f00d76cd="sql2000"]日志里抱什么了吗?[/quote:d7f00d76cd]     


# tail -20 messages
Jun 19 18:08:29 yt168sun220 gfxp: [ID 722914 kern.notice] TSI: gfxp0 is GFX8P @ 1152x900
Jun 19 18:08:29 yt168sun220 unix: [ID 987524 kern.info] cpu0: SUNW,UltraSPARC-II (upaid 0 impl 0x11 ver 0xa0 clock 450 MHz)
Jun 19 18:08:29 yt168sun220 unix: [ID 987524 kern.info] cpu2: SUNW,UltraSPARC-II (upaid 2 impl 0x11 ver 0xa0 clock 450 MHz)
Jun 19 18:08:29 yt168sun220 unix: [ID 721127 kern.info] cpu 2 initialization complete - online
Jun 19 18:08:30 yt168sun220 ebus: [ID 521012 kern.info] se0 at ebus0: offset 14,400000
Jun 19 18:08:30 yt168sun220 genunix: [ID 936769 kern.info] se0 is /pci@1f,4000/ebus@1/se@14,400000
Jun 19 18:08:31 yt168sun220 hme: [ID 517527 kern.info] SUNW,hme0 : PCI IO 2.0 (Rev Id = c1) Found
Jun 19 18:08:31 yt168sun220 pcipsy: [ID 370704 kern.info] PCI-device: network@1,1, hme0
Jun 19 18:08:31 yt168sun220 genunix: [ID 936769 kern.info] hme0 is /pci@1f,4000/network@1,1
Jun 19 18:08:32 yt168sun220 genunix: [ID 454863 kern.info] dump on /dev/dsk/c0t0d0s0 size 512 MB
Jun 19 18:08:34 yt168sun220 hme: [ID 517527 kern.info] SUNW,hme0 : Internal Transceiver Selected.
Jun 19 18:08:34 yt168sun220 hme: [ID 517527 kern.info] SUNW,hme0 :   100 Mbps Full-Duplex Link Up
Jun 19 18:08:35 yt168sun220 pseudo: [ID 129642 kern.info] pseudo-device: devinfo0
Jun 19 18:08:35 yt168sun220 genunix: [ID 936769 kern.info] devinfo0 is /pseudo/devinfo@0
Jun 19 18:08:54 yt168sun220 pseudo: [ID 129642 kern.info] pseudo-device: tod0
Jun 19 18:08:54 yt168sun220 genunix: [ID 936769 kern.info] tod0 is /pseudo/tod@0
Jun 19 18:08:54 yt168sun220 pseudo: [ID 129642 kern.info] pseudo-device: pm0
Jun 19 18:08:54 yt168sun220 genunix: [ID 936769 kern.info] pm0 is /pseudo/pm@0
Jun 19 18:08:57 yt168sun220 ebus: [ID 521012 kern.info] se0 at ebus0: offset 14,400000
Jun 19 18:08:57 yt168sun220 genunix: [ID 936769 kern.info] se0 is /pci@1f,4000/ebus@1/se@14,400000


只有启动的信息

 非凡公子 回复于:2003-06-19 18:59:40
# tail -30 syslog
Jun 18 03:52:16 yt168sun220 sendmail[13156]: [ID 702911 mail.crit] My unqualified host name (yt168sun220) unknown; sleeping for retry
Jun 18 03:53:16 yt168sun220 sendmail[13156]: [ID 702911 mail.alert] unable to qualify my own domain name (yt168sun220) -- using short name
Jun 18 03:53:16 yt168sun220 sendmail[13156]: [ID 801593 mail.info] h5HJrGgV013156: from=root, size=397, class=0, nrcpts=1, msgid=<200306171953.h5HJrGgV013156@yt168sun220>, relay=root@localhost
Jun 18 03:53:16 yt168sun220 sendmail[13156]: [ID 801593 mail.info] h5HJrGgV013156: to=root, ctladdr=root (0/1), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30076, relay=[localhost] [127.0.0.1], dsn=4.0.0, stat=Deferred: Connection refused by [localhost]

 race 回复于:2003-06-19 23:15:10
2G的内存怎么才用了512M的SWAP?感觉问题就在这里了。手工扩充以下试试

 iricyan 回复于:2003-06-20 00:44:15
按照race的意见先处理一下,看看

 非凡公子 回复于:2003-06-20 01:52:52
嗯,我想就是这个原因了,谢谢各位老大,bow:)

 junfer 回复于:2003-06-23 18:00:55
刚刚看到这个话题。
的确是内存不够, vmstat 的 sr 列的值只要200就说明内存不够了。
w的值太大,由于swap空间太小,大量的process处于waiting。
增加个1.5G的swap file,应该能解决这个问题。

 非凡公子 回复于:2003-06-24 09:26:30
好像还是不行:(
Memory: 2048M real, 1746M free, 58M swap in use, 6000M swap free

# swap -l
swapfile             dev  swaplo blocks   free
/dev/dsk/c0t0d0s0   32,0      16 1048688 1048688
/export/home/swap/swapfile  -       16 8191984 8191984

swap应该有4.5G,512M的一个单独分区,加上4G的swapfile

昨天晚上重启过,可能内存是1800多,现在只有1744了,过两天看看再说吧,郁闷

 非凡公子 回复于:2003-06-24 09:29:48
# df -h
Filesystem             size   used  avail capacity  Mounted on
/dev/dsk/c0t0d0s1      940M    67M   817M     8%    /
/dev/dsk/c0t0d0s3      2.9G   1.2G   1.6G    44%    /usr
/proc                    0K     0K     0K     0%    /proc
mnttab                   0K     0K     0K     0%    /etc/mnttab
fd                       0K     0K     0K     0%    /dev/fd
/dev/dsk/c0t0d0s4      4.8G    77M   4.7G     2%    /var
swap                   5.9G    40K   5.9G     1%    /var/run
/dev/dsk/c0t1d0s0       13G   6.4G   7.0G    48%    /data
/dev/dsk/c0t0d0s5      1.9G    39K   1.8G     1%    /tmp
/dev/dsk/c0t1d0s7       20G    13G   7.0G    65%    /export/home
/dev/dsk/c0t0d0s7       22G    14G   7.6G    66%    /export/home0

跟我分区的方案有关系吗?

 中原一片红 回复于:2003-06-24 11:42:49
想知道结果

 mmmmn 回复于:2003-06-24 12:47:15
你的机器到底起的什么服务??你打patch没有?你的/etc/system文件是怎么写的??既然你刚才单独写了个tail syslog,那你肯定也改动了/etc/syslog.conf文件了,你还做了什么改动?都应该说清楚吧?

 随意江湖行 回复于:2003-06-24 12:49:04
2G的内存至少要给相同的swap呀!

另外,系统配了几个ip地址,ip转发是不是关了,有没有可能是把自己当成路由器了。

 mmmmn 回复于:2003-06-24 13:01:58
[quote:9bbf9c41db="随意江湖行"]2G的内存至少要给相同的swap呀!
[/quote:9bbf9c41db]     
no

 非凡公子 回复于:2003-06-25 14:37:59
mm的话提醒了我,可能是我装oracle的时候改/etc/system改的有问题

我加了这几行
#set for install oracle
set shmsys:shminfo_shmmax=134217728
set shmsys:shminfo_shmmin=1
set shmsys:shminfo_shmmni=100
set shmsys:shminfo_shmseg=10
set semsys:seminfo_semmni=100
set semsys:seminfo_semmsl=200
set semsys:seminfo_semmns=200
set semsys:seminfo_semopm=100
set semsys:seminfo_semvmx=32767

补丁没有打,是solaris9 sparc

 非凡公子 回复于:2003-06-25 14:38:40
我改回以前的system,过几天把结果告诉大家

 mmmmn 回复于:2003-06-25 15:57:18
靠,你仔细看oracle的安装说明了没有?oracle对swap的要求是什么???还不打patch?真厉害啊

 南非蜘蛛 回复于:2003-06-25 15:58:26
还是mmmmn牛,佩服

 mmmmn 回复于:2003-06-25 16:06:23
[quote:b1e2fclearcase/" target="_blank" >cc1d1="南非蜘蛛"]还是mmmmn牛,佩服[/quote:b1e2fcc1d1]     
你给我去吃大X!!!
晚上把书给我带上

 非凡公子 回复于:2003-06-27 08:49:36
[quote:b0739ffbb3="mmmmn"]靠,你仔细看oracle的安装说明了没有?oracle对swap的要求是什么???还不打patch?真厉害啊[/quote:b0739ffbb3]


是,老大,可是我并没有运行oracle呀。

 mmmmn 回复于:2003-06-27 09:03:16
[quote:da795ef716="非凡公子"]


是,老大,可是我并没有运行oracle呀。[/quote:da795ef716]     
你没加到启动脚本里吗?
那你起着什么服务呢?
一个一个单独运行一下,看看是不是和你的软件有关。
排除软件的关系后再考虑系统

 非凡公子 回复于:2003-07-01 10:09:45
应该是我改system改的:(
机子没有启什么服务,apache是自带的,还有一个就行proftpd了
现在把system改回去了(因为并没有启oracle),几天过去了,还没有什么问题,估计是那几个信号量有问题,不过以前只运行oracle的时候倒是没有这个问题,以前只运行的oracle,别的什么也没有开。

再去翻翻oracle 的文档了,看看那几个参数到底要改为多少

 chaoping 回复于:2004-09-30 08:20:38
扯淡。
该/etc/system的shm, sem不可能造成什么问题的。

而且你的top 室不会显示系统自己的daemon进程的,比如什么ufsflush等。

 lypszf 回复于:2004-09-30 10:30:29
正常的Swap大小应该为内存的2倍

原文转自:http://www.ltesting.net