rac某节点asm磁盘启动失败故障定位及恢复

RAC环境:

甲骨文数据库:oracle11gr2

操作系统:rhel6.4_x86_64


故障现象:

1, RAC其一个节点的oracle与asm相关的进程和实例启动失败;

查看方法:ps ef | grep ora_

,,,,,,,,,ps ef | grep asm_

,,,,,,,,,crsctl stat res - t(只能看到节点1上启动的甲骨文实例和asm实例)

2,在节点2上查看不到asm磁盘设备标签;

查看方法:oracleasm listdisks,(没有内容)

会/dev/oracleasm/disks/*(没有内容)

3,在节点2上扫描asm磁盘时报以下错误;

查看方法:oracleasm磁盘检查工具

,,,,,,,,,重新加载磁盘分区:做

,,,,,,,,,清洁任何过期ASM磁盘…

,,,,,,,,,扫描系统对ASM磁盘…

,,,,,,,,,实例化磁盘“VOL4”

,,,,,,,,,不能实例化磁盘“VOL4”

,,,,,,,,,实例化磁盘“VOL1”

,,,,,,,,,不能实例化磁盘“VOL1”

4,查看oracleasm日志信息提示权限问题;

查看方法:猫/var/log/oracleasm

,,,,,,,,,,

分析过程:

为了排除其它因素的干扰,我重启了节点2的操作系统,重启后节点2上的asm磁盘依旧不能正常加载,通过查看oracleasm日志依然提示是权限问题,大胆猜想下,可能有以下原因导致asm


磁盘不能正常加载:

1, asm相关的rpm包安装不正常,如版本不对应的;

2,操作系统相关的安全服务导致;

3,系统重启时规则规则配置不正确,导致asm磁盘不能正常加载;


排除:

1, rpm aq | grep oracleasm需要安装3个包(kmod-oracleasm oracleasmlib oracleasm-support)

2,服务iptables状态(iptables服务关闭)

getenforce,(查看状态执行,说明selinux服务没有关闭)

3,本实例并没有使用原始裸设备,因此没有配置规则规则在启动时加载

处理方法:

由于节点2的selinux服务没有关闭,因此关闭selinux服务

setenforce 0

,,vi/etc/sysconfig/selinux

将SELINUX=执行改为SELINUX=禁用,这样重启服务器则不会启动SELINUX服务

关闭SELINUX服务后,执行asm磁盘扫描操作,正常识别asm磁盘。

,,

oracleasm磁盘检查工具

rac某节点asm磁盘启动失败故障定位及恢复