使用External Redundancy作为冗余策略,也可以添加多个Vodedisk,只是必须通过crsctl命令来添加,添加多个Votedisk后,这些Votedisk互为镜像,可以防止Votedisk的单点故障。
需要注意的是,Votedisk使用的是一种“多数可用算法”,如果有多个Votedisk,,则必须一半以上的Votedisk同时使用,Clusterware才能正常使用。 比如配置了4个Votedisk,坏一个Votedisk,集群可以正常工作,如果坏了2个,则不能满足半数以上,集群会立即宕掉,所有节点立即重启,所以如果添加Votedisk,尽量不要只添加一个,而应该添加2个。
[root@rac1 ~]# crsctl query css votedisk
0. 0 /dev/raw/raw1
[root@rac1 ~]# crsctl stop crs
必须crs关闭状态操作,与ocr不一样
vbox中增加两块100M的vdi虚拟盘,设置成共享属性,rac1,2两个节点都挂上
el5系统得修改more /etc/udev/rules.d/60-raw.rules文件挂raw设备
增加如下
ACTION=="add", KERNEL=="/dev/sdg1",RUN+="/bin/raw /dev/raw/raw6 %N"
ACTION=="add", ENV{MAJOR}=="8",ENV{MINOR}=="97",RUN+="/bin/raw /dev/raw/raw6 %M %m"
ACTION=="add", KERNEL=="/dev/sdh1",RUN+="/bin/raw /dev/raw/raw7 %N"
ACTION=="add", ENV{MAJOR}=="8",ENV{MINOR}=="113",RUN+="/bin/raw /dev/raw/raw7 %M %m"
ACTION=="add", KERNEL=="raw6", OWNER="oracle", GROUP="oinstall", MODE="0660"
ACTION=="add", KERNEL=="raw7", OWNER="oracle", GROUP="oinstall", MODE="0660"
MINOR号参见图中取值
[root@rac1 ~]# start_udev
Starting udev: [ OK ]
[root@rac1 ~]# ll /dev/raw/*
crw-rw---- 1 oracle oinstall 162, 1 04-30 09:38 /dev/raw/raw1
crw-rw---- 1 root oinstall 162, 2 04-30 09:38 /dev/raw/raw2
crw-rw---- 1 oracle oinstall 162, 3 04-30 09:18 /dev/raw/raw3
crw-rw---- 1 oracle oinstall 162, 4 04-30 09:18 /dev/raw/raw4
crw-rw---- 1 root oinstall 162, 5 04-30 09:38 /dev/raw/raw5
crw-rw---- 1 oracle oinstall 162, 6 04-30 09:38 /dev/raw/raw6
crw-rw---- 1 oracle oinstall 162, 7 04-30 09:38 /dev/raw/raw7
挂好设备开始如下命令
[root@rac1 bin]# ./crsctl add css votedisk /dev/raw/raw6 -force
[root@rac1 bin]# ./crsctl add css votedisk /dev/raw/raw7 -force
[root@rac1 ~]# crsctl query css votedisk
0. 0 /dev/raw/raw1
1. 0 /dev/raw/raw6
2. 0 /dev/raw/raw7
located 3 votedisk(s).
[root@rac1 ~]# crsctl start crs
[root@rac1 ~]# crsctl check crs
CSS appears healthy
CRS appears healthy
EVM appears healthy
ok了