多存储设备时Oracle RAC voting disk(表决盘)的最大可用
前几天银行客户问了一个问题,如果他们目前有两套存储,如何规划ASM diskgroup冗余度防止单存储坏时影响RAC的可用性, 实现数据中心、电、网络、存储、服务器等等全部冗余。常见于Extend RAC环境。对于ASM DATA DISKGROUP 可以使用 normal redundancy(2-ways mirroring)允许坏1个failgroup. 甚至high redundancy(3-ways mirroring),允许坏2个failgroup。对于RAC中的Voteing disk(VD)有些特殊, 当CRS ASM diskgroup使用normal redundancy时3个voting disks. high redundancy时5个voting disks,当有过半数的Voting Disk不可用时RAC将会重启。也就是2存储时,坏一个存储VD,还是有可能会导致过半VD不可用. Nomarl冗余的VD,存在一个中心2个VD,另一中心1个 VD。如下SH数据中心和BJ数据中心,当BJ数据中心的存储坏时RAC重启,因为过半的VD不可用。
$ crsctl query css votedisk ## STATE File Universal Id File Name Disk group -- ----- ----------------- --------- --------- 1. ONLINE 34a93f34e8094f4fbfe611fc3fdcd21a (/dev/oracle/vot_sh1) [CRSDG] 2. ONLINE 1758ce7cfd7a4f87bf4ec88716b7945e (/dev/oracle/vot_bj1) [CRSDG] 3. ONLINE 84b2c9d7352f4ffebf6d0ea0f5c3bdf6 (/dev/oracle/vot_bj2) [CRSDG] Located 3 voting disk(s).
这种情况下需要引入第三个表决存储, 常规有三种方法来避免这个问题:1.独立第三个存储;2.nfs挂载远端设备;3.第三地服务器通过iscsi协议挂载本地磁盘。
11g R2以后以上操作就很简单了, 也不用crsctl replace votedisk, 如,想增加第三个数据中心XA表决存储,直接asm diskgroup 增加XA的ASM DISK, 删除原来的BJ2的ASM disk就可以。
alter diskgroup CRSDGadd FAILGROUP FGXA1 disk '/dev/oracle/vot_xa1';
— 增加新ASM DISK后,vote disk不会有任何改变
先查询vot_bj2的disk name.
select DISK_NUMBER,name ,PATH, MOUNT_DATE from v$asm_disk;
删除vot_bj2 ASM DISK
alter diskgroup DATA drop disk DATA_0032;
— 删除原bj2 ASM disk后, ASM会自动增加新增加xa ASM disk 为voting disk.
$ crsctl query css votedisk ## STATE File Universal Id File Name Disk group -- ----- ----------------- --------- --------- 1. ONLINE 34a93f34e8094f4fbfe611fc3fdcd21a (/dev/oracle/vot_sh1) [CRSDG] 2. ONLINE 1758ce7cfd7a4f87bf4ec88716b7945e (/dev/oracle/vot_bj1) [CRSDG] 3. ONLINE a558160426304fa0bfa18fdc5c56f3bb (/dev/oracle/vot_xa1) [CRSDG] Located 3 voting disk(s).
oracle 19c 引入了flex redundancy.
对不起,这篇文章暂时关闭评论。