Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1852373
  • 博文数量: 524
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 2483
  • 用 户 组: 普通用户
  • 注册时间: 2011-06-25 18:36
个人简介

打杂

文章分类

全部博文(524)

文章存档

2022年(3)

2021年(9)

2019年(1)

2018年(32)

2017年(11)

2016年(152)

2015年(198)

2014年(118)

分类: Oracle

2014-12-11 10:55:15

原文地址:节点重启的故障分析 作者:brjl

遇到10G RAC单节点重启的故障按照以下步骤检查:
首先可以结合操作系统的dump文件确定是哪个进程导致的重启。或者是否是其他问题。

如果时cssd.bin导致重启,最常见的重启问题:

一:察看crs下ocssd.log集群日志文件。搜索关键字:WARNING察看有没有问题存在。

如果出现连续30个如下错误报警导致重启:

[ CSSD]2008-10-30 15:23:36.483 [3086] >WARNING: clssnmPollingThread: node p595-2 (2) at 50% heartbeat fatal, eviction in 14.701 seconds

检查网络心跳链路:主机私有网卡,交换机,线路,hosts文件是否正常。

如出现短暂的如下错误,例如只出现一两个,一个节点就被驱逐导致重启:

[ CSSD]2008-10-30 15:23:36.483 [3086] >WARNING: clssnmPollingThread: node p595-2 (2) at 50% heartbeat fatal, eviction in 14.701 seconds

请检查磁盘心跳votedisk和ocr是否正常,确定是否使用文件系统(确定文件系统工作正常)。

检查votedisk:crsctl query css votedisk

检查ocr:ocrcheck

如果出现以下错误:WARNING: clssnmPollingThread: node p595-2 (2) at 50% heartbeat fatal, eviction in 13.644 seconds

问题出在磁盘心跳请依照上面检查。


二:

2.检查看看系统是否处在高负载状态,cpu,内存等。

3.察看是否为误操作,删除crs_home。

4.Css的设置问题,hosts文件等

5.杀死init.cssd fatal进程和 ocssd进程

6.Oracle bug问题

- An Oracle bug. Known bugs that can cause CSS reboots:


Note 264699.1 - CSS Fails to Flush Writes After Installing 10.1.0.2 CRS on Linux with OCFS


Bug 3942568 - A deadlock can occur between 2 threads of the CSS daemon process.

Fixed in 10.1.0.4 and above.

SOLARIS ONLY: See these bugids that fixed the problem (in Solaris 9; the fixes were backported to Solaris 8 Update 6):

三:检查操作系统设置参数:

检查操作系统中/etc/init.d/init.cssd文件中参数:

OPROCD_DEFAULT_MARGIN最少设置为为500。(避免节点重启)

-t : 超时时间,缺省1000,单位毫秒 (OPROCD_DEFAULT_TIMEOUT=1000)
-m : 重启前可接受的延迟,单位毫秒,缺省500 (OPROCD_DEFAULT_MARGIN=500)

检查ORACLE提供的CLUSTER来说,是否设置为最少css MISSCOUNT是600秒。(crsctl命令修改)

 
 
 
RAC节点宕机解决技巧步骤二:问题的解决技巧
 
      通过对上面两个日志的分析,我们基本可以确定的是,由于IPC包发送失败导致CRS认为心跳失败,为了避免“脑裂”现象,节点1主动驱逐了节点2;此外的几次down情况类似。
 
      我们知道,在一个共享存储的集群中,当集群中hearbeat丢失时,如果各节点还是同时对共享存储去进行操作,那么在这种情况下所引发的情况是灾难的。ORACLE RAC采用投票算法来解决这个问题,思想是这样的:
 
      首先,每个节点都有一票,考虑有A,B,C三个节点的集群情形,当A节点由于各种原因不能与B,C节点通信时,那么这集群分成了两个DOMAIN,A节点成为一个DOMAIN,拥有一票;B,C节点成为一个DOMAIN拥有两票,那么这种情况B,C节点拥有对集群的控制权,从而把A节点踢出集群,对要是通IO FENCING来实现。如果是两节点集群,则引入了仲裁磁盘,当两个节点不能通信时,请求最先到达仲裁磁盘的节点拥用对集群的控制权。
 
      在网络正常的情况下,IPC包发送超时,首先想到是不是遇到了bug,到Metalink上查了查,发现一个bug与我们的现象吻合。Bug编号为:6782276,在10.2.0.4中得到了修复。接下来就是按部就班的打补丁了。
转自
 
 

oracle RAC节点驱逐原因分三种,《参照oracle文档(Doc ID 559365.1)

1Node is not pinging via the network heartbeat

2Node is not pinging the Voting disk

3Node is hung/busy and is unable to perform either of the earlier tasks

 

故障解决建议

    因为发生故障时间很短,从日志中没有查到相关的进程信息,建议安装OSW来监控服务器信息。如果下次发现同样的问题,可以从OSW中抓取到具体进程信息。再来调试相关的出错进程。

 

转自 http://blog.csdn.net/csucxcc/article/details/5685048

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