oracle clusterware 10.2.0.5 on OEL 5.8
配置了三块votesdisk:
./crsctl query css votedisk
[root@sdb1 bin]# ./crsctl query css votedisk
0. 0 /dev/raw/raw3
1. 0 /dev/raw/raw4
2. 0 /dev/raw/raw5
located 3 votedisk(s)
其实每一块的内容都是一样的,但是建议每一块都备份一下,这个地方不知为何):
在
dd if=/dev/raw/raw3 of=/tmp/votedisk bs=4k
测试一:
现在将第三块 /dev/raw/raw5 人为损坏,完成之后,发现使用crs_stat -t查看状态还是正常的。
dd if=/dev/zero of=/dev/raw/raw5 bs=4k
关闭crs然后再开启,可以正常开启
测试二:
在测试一的基础上关闭所有节点的crs,删除第二个votedisk,即/dev/raw/raw5
[root@sdb2 bin]# ./crsctl delete css votedisk /dev/raw/raw5 -force
successful deletion of votedisk /dev/raw/raw5.
然后开启crs,可以正常开启
说明两块votedisk的内容是一样的,即使在测试一种破坏了第一块votedisk,但是资料应该是内部有同步。
测试三
在有两块votedisk情况下,模拟某一块votedisk遇到硬件故障。
[root@sdb2 bin]# ./crsctl query css votedisk
0. 0 /dev/raw/raw3
1. 0 /dev/raw/raw5
located 2 votedisk(s).
在rawdevice里面将/dev/raw/raw3的映射去掉。(奇怪的事情是,即使我重启rawdevices ,但是实际映射的raw disk还在)所以就重启服务器,重启后rawdeive映射消失
crs无法正常启动,显示无法读取/dev/raw/raw3,但是/dev/raw/raw5是正常的
[root@sdb2 tmp]# cat crsctl.4234
Failure -2 opening file handle for (raw3)
Failure 1 checking the CSS voting disk 'raw3'.
Not able to read adequate number of voting disks
此时解决可以采取两种措施:
- 恢复/dev/raw/raw3的映射
- 使用crsctl delete css votedisk /dev/raw/raw3 -force 删除该votedisk
如果是第二块/dev/raw/raw5消失,同样也无法启动crs。删除有问题的votedisk后就能正常启动了
root@sdb2 ~]# cat /tmp/crsctl.4238
Failure -2 opening file handle for (raw5)
Failure 1 checking the CSS voting disk 'raw5'.
Not able to read adequate number of voting disks