rpcbind

November 26th, 2007 by chifeng Leave a reply »

rpcbind

周末切换了一台文件服务器到FreeBSD。打开服务后,发现rpcbind占用非常多的CPU,非常不明白为什么他一直在哪儿rpcbind。
9110 root 1 103 0 4812K
1336K CPU3 2 800:43 48.34% rpcbind
9201 root 1 -8 0 2512K 920K CPU1 2 399:10
17.97% nfsd
9202 root 1 4 0 2512K 920K CPU2 2 155:34 6.40% nfsd

重启rpcbind,没用,刚起来没1分钟,CPU占用就又上去了。然后tcpdump抓一下udp的包
chifeng# tcpdump -i bce0 udp port 111 > tcpdump.log
然后看看那个机器发的包较多。
chifeng# awk ‘{print $3}’ tcpdump.log | sort | uniq -c | sort -nr | more
找到大概3,4台机器,跟rpcbind进程通讯的量非常大,登录过去看看,看一下状态。
3210 root      15   0     0    0    0 S 11.4  0.0  19:07.30 rpciod 
client这儿有这个进程在不停的跟主机的rpcbind联系。
[root@]# kill -9 3210
[root@]# kill -9 3210
[root@]# kill -9 3210
[root@]# kill -9 3210
死活杀不掉,难道是个僵尸进程。reboot一下之后,client哪儿正常,并且rpciod进程也自动消失,最终再在主机上抓包看,重复这般操作。在对client几度折腾之后,rpcbind占用高的问题解决,看来是客户端的rpciod进程导致的这个问题。

Advertisement

2 comments

  1. helo says:

    chifeng的技术水平还是有待提高。

  2. chifeng says:

    何止是有待提高,提高的空间还很大啊。:-(现在是越来越觉得啥都不懂。

Leave a Reply