Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2040185
  • 博文数量: 220
  • 博客积分: 8531
  • 博客等级: 中将
  • 技术积分: 4976
  • 用 户 组: 普通用户
  • 注册时间: 2007-07-18 13:33
文章分类

全部博文(220)

文章存档

2017年(1)

2015年(1)

2014年(5)

2013年(6)

2012年(6)

2011年(30)

2010年(37)

2009年(53)

2008年(41)

2007年(40)

分类: LINUX

2011-03-16 15:14:44

故障描述:
     同事上周远程实施的黑龙江电信HA标准版,3.16用户打电话说jboss可以从主机切换到备机,但是无法从备机切换到主机。

故障分析:
     远程登录后,发现主机名sxit2,备机名sxit5。HA使用的heartbeat-2.1.4-4.3,命令可操作性比hb3差很多。
     jboss运行在sxit5上。通过crm_mon -Vrf -1查看,发现sxit2上resource_jboss的failcount=-10000。
     从现象看,jboss在sxit2上是无法启动的。
     因为jboss不需要存储和fip支持,所以手工在sxit2上用ocf的jboss脚本启动jboss,发现以下现象[fan3838文章标示]:

export OCF_ROOT=/usr/lib/ocf/
sh -x /usr/lib/ocf/resource.d/heartbeat/jboss
中间略
+ start_jboss
+ monitor_jboss
+ isrunning_jboss
+ wget -O /dev/null http://127.0.0.1
此处等待将近5分钟
+ return 1


    为了验证为何一个wget却等待了5分钟,所以在sxit2试了以下wget这条命令,发现如下现象:

wget -O /dev/null http://127.0.0.1
Trying 127.0.0.1...
Connecting to 127.0.0.1:80... failed: Cannot assign requested address.
retry 1
然后反复重试。


    此现象不正常,如果本机没有80端口,应该马上返回拒绝:

wget -O /dev/null http://127.0.0.1
--2011-03-16 14:09:39-- http://127.0.0.1/
正在连接 127.0.0.1:80... 失败:拒绝连接。


    后多次测试发现其他机器可以telnet、ssh到本机,但是本机无法telnet、ssh到任何IP地址。
    领导怀疑端口被占满,导致无法分配新的端口。

    通过lsof发现打开文件数很多,继而发现18221进程异常打开将近65535个sock。
    此进程是oracle用户打开的一个进程,进程名为pop3-login。
    而lsof中也可以看到此文件已经被删除,原来的位置:/dev/shm/ddos/pop3-login
    /dev/shm一般不会存放任何东西,只有入侵时有人在此暂存某些文件。
    通过last看到oracle用户在领成经常登录,说明被入侵。

[root@sxit2 ~]# lsof -p 18221|wc -l
65545
[root@sxit2 ~]# lsof -p 18221|head -n 50
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
pop3-logi 18221 oracle cwd DIR 0,19 40 2606707 /dev/shm/ddos (deleted)
pop3-logi 18221 oracle rtd DIR 104,3 4096 2 /
pop3-logi 18221 oracle txt REG 0,19 152108 2606720 /dev/shm/ddos/pop3-login (deleted)
pop3-logi 18221 oracle mem REG 104,3 76504 2621468 /lib/libresolv-2.5.so
pop3-logi 18221 oracle mem REG 104,3 125896 2622707 /lib/ld-2.5.so
pop3-logi 18221 oracle mem REG 104,3 1611416 2621457 /lib/libc-2.5.so
pop3-logi 18221 oracle mem REG 104,3 21924 2621478 /lib/libnss_dns-2.5.so
pop3-logi 18221 oracle mem REG 104,3 46764 2621480 /lib/libnss_files-2.5.so
pop3-logi 18221 oracle 0u sock 0,5 2606797 can't identify protocol
pop3-logi 18221 oracle 1u sock 0,5 2606983 can'
t identify protocol
pop3-logi 18221 oracle 2u sock 0,5 2606996 can't identify protocol
pop3-logi 18221 oracle 3u IPv4 2606793 UDP *:59888
pop3-logi 18221 oracle 4u sock 0,5 2607012 can'
t identify protocol
pop3-logi 18221 oracle 5u sock 0,5 2607035 can't identify protocol
pop3-logi 18221 oracle 6u sock 0,5 2607044 can'
t identify protocol
pop3-logi 18221 oracle 7u sock 0,5 2607049 can't identify protocol
pop3-logi 18221 oracle 8u sock 0,5 2607080 can'
t identify protocol
pop3-logi 18221 oracle 9u sock 0,5 2607096 can't identify protocol
pop3-logi 18221 oracle 10u sock 0,5 2607119 can'
t identify protocol
pop3-logi 18221 oracle 11u sock 0,5 2607124 can't identify protocol
pop3-logi 18221 oracle 12u sock 0,5 2607129 can'
t identify protocol
pop3-logi 18221 oracle 13u sock 0,5 2607160 can't identify protocol
pop3-logi 18221 oracle 14u sock 0,5 2607176 can'
t identify protocol
pop3-logi 18221 oracle 15u sock 0,5 2607199 can't identify protocol
pop3-logi 18221 oracle 16u sock 0,5 2607204 can'
t identify protocol
pop3-logi 18221 oracle 17u sock 0,5 2607209 can't identify protocol
pop3-logi 18221 oracle 18u sock 0,5 2607240 can'
t identify protocol
pop3-logi 18221 oracle 19u sock 0,5 2607256 can't identify protocol
pop3-logi 18221 oracle 20u sock 0,5 2607279 can'
t identify protocol
pop3-logi 18221 oracle 21u sock 0,5 2607284 can't identify protocol
pop3-logi 18221 oracle 22u sock 0,5 2607289 can'
t identify protocol
pop3-logi 18221 oracle 23u sock 0,5 2607320 can
't identify protocol
[root@sxit2 ~]# ps -ef|grep 18221
oracle   18221     1  0 Mar14 ?        00:00:06 pop3-login


解决办法:

   杀掉18221进程,HA标准版一切正常。
   在图形界面下添加磁盘管理,将multipath生成的dm-0加入HA中并将顺序调至jboos之前。

阅读(2076) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~