集群启动报错CRS-1714:Unable to discover any voting files
环境介绍:
操作系统:aix 7.1
数据库版本:11.2.0.4 rac
现象:
在服务器断电之后,启动操作系统完成后,在操作完crsctl start crs后,等了好长时间后,集群的几个堆栈进程无法启动,只有ohasd进程启动,检查集群的alert日志,发现一直报错"
[cssd(59006)]CRS-1714:Unable to discover any voting files, retrying discovery in 15 seconds;
Details at (:CSSNM00070:) in /u01/app/11.2.0/grid/log/hostname/cssd/ocssd.log"
原因分析:
在启动cssd进程的时候,无法找到votedisk,而这个磁盘在集群安装的时候,是共享的。其次,如果votedisk损坏也会导致无法找到。
问题排查:
1、检查votedisk的共享属性
由存储工程师在存储上划盘通过san交换机映射给两个节点的操作系统,在aix操作系统上通过
lscfg -vpl hdiskx
检查ODM数据库中的磁盘配置信息,确定两个节点的磁盘序列号是一样的,从而确定是两个磁盘为同一块磁盘。同时检查磁盘头的信息
lquerypv -h hdiskX
进行检验。
2、在aix上,检查磁盘的保留策略
通过lsattr -El hdisk*
官方上对这个属性的解释
To enable simultaneous access to a disk device from multiple nodes,
you must set the appropriate Object Data Manager (ODM) attribute listed in the following table to the value shown, depending on the disk type:
Disk Type Attribute Value
SSA, FAStT, or non-MPIO-capable disks reserve_lock no
ESS, EMC, HDS, CLARiiON, or MPIO-capable disks
reserve_policy no_reserve
To determine whether the attribute has the correct value, enter a command similar to the following on all cluster nodes for each disk device that you want to use:
# /usr/sbin/lsattr -E -l hdiskn
If the required attribute is not set to the correct value on any node, then enter a command similar to one of the following on that node:
■ SSA and FAStT devices
# /usr/sbin/chdev -l hdiskn -a reserve_lock=no
■ ESS, EMC, HDS, CLARiiON, and MPIO-capable devices
# /usr/sbin/chdev -l hdiskn -a reserve_policy=no_reserve
对于aix上通常将这个属性设置为no_reserver来支持多个节点同时访问,设置的命令如下
chedev -l hdiskx -a reserver_policy=no_reserve -p
3、本次情况
本次案例中,出现的无法找到共享磁盘的这个节点的这个属性值是exclusive,需要修改。
修改完成后,再次检查,确保为no_reserve
lsattr -El hdiskx
然后重启操作系统,再次启动集群,正常启动。
个人小碎念:no_reseve属性正常是aix搭建rac时磁盘的必要步骤。没设置的这个现象倒是一直没有看到过