管理Oracle clusterware (Voting Disk)


管理Oracle clusterware (Voting Disk)

Voting Disk 这个文件主要用于记录节点成员状态,在出现脑裂时,决定那个Partion获得控制权,其他的Partion必须从集群中剔除。Voting disk使用的是一种“多数可用算法”,如果有多个Voting  disk,,则必须一半以上的Votedisk同时使用,Clusterware才能正常使用。 比如配置了4个Votedisk,坏一个Votedisk,集群可以正常工作,如果坏了2个,则不能满足半数以上,集群会立即宕掉,所有节点立即重启,所以如果添加Votedisk,尽量不要只添加一个,而应该添加2个。这点和OCR 不一样。OCR 只需配置一个。

多路复用表决磁盘
表决磁盘是提供集群可用性的重要资源。 
如果表决磁盘存储在可靠磁盘中,则使用一个表决磁盘即可。 
对于其他情况,应使用多路复用表决磁盘: 
  – 不必依赖多路径解决方案。 
  – 多路复用副本应存储在独立的设备中。 
  – 确保表决磁盘设备具有足够的 I/O。 
  – 至少使用三个多路复用副本。 
CSS 使用简单的多数决定规则来确定表决磁盘读数是否一致:  v = f*2+1 

更改表决磁盘配置 
可以动态更改表决磁盘配置。 
要添加新的表决磁盘,请使用以下命令: 
  # crsctl add css votedisk <new voting disk path>
要删除表决磁盘,请使用以下命令: 
  # crsctl delete css votedisk <old voting disk path>
如果所有节点上的 Oracle Clusterware 都已关闭,请使用 –force 选项: 
  # crsctl delete css votedisk <old voting disk path> -force
  # crsctl add css votedisk <new voting disk path> -force
  注:添加新的表决磁盘或删除表决磁盘时,最好将所有节点的clusterware全部关闭,以免存活节点损坏配置。
 
备份和恢复表决磁盘 
不需要做,仅需删除和添加操作
建议使用符号链接。 
请使用 dd 命令备份一个表决磁盘。 
  – 在安装 Oracle Clusterware 之后 
  – 在添加或删除节点之后 
  – 可以联机执行 
    $ crsctl query css votedisk
    $ dd if=<voting disk path> of=<backup path> bs=4k  
可以使用以下方法恢复表决磁盘:使用 dd 命令恢复第一个表决磁盘,然后根据需要对该磁盘进行多路复用。 
如果没有可用的表决磁盘备份,则应重新安装 Oracle Clusterware。 

示例:

  1. --查看voting disks位置   
  2. [root@rac1 ~]# crsctl query css votedisk  
  3.  0.     0    /dev/raw/raw2  
  4.   
  5. located 1 votedisk(s).  
  6.   
  7. --备份voting disks   
  8. [root@rac1 ~]# dd if=/dev/raw/raw2 of=/oracle/backup/votedisk_0.bak  
  9. 208864+0 records in  
  10. 208864+0 records out  
  11. 106938368 bytes (107 MB) copied, 88.7502 seconds, 1.2 MB/s  
  12. [root@rac1 ~]# ll /oracle/backup/votedisk_0.bak  
  13. -rw-r--r-- 1 root root 106938368 Feb 21 00:03 /oracle/backup/votedisk_0.bak   
  14.   
  15. --恢复voting disks   
  16. [root@rac1 ~]# dd if=/oracle/backup/votedisk_0.bak of=/dev/raw/raw2  
  17. 208864+0 records in  
  18. 208864+0 records out  
  19. 106938368 bytes (107 MB) copied, 97.1257 seconds, 1.1 MB/s  
  20.   
  21. --更改表决磁盘配置,添加voting disk   
  22. [root@rac1 ~]# crsctl add css votedisk /dev/raw/raw3  
  23. Cluster is not in a ready state for online disk addition --添加失败   
  24.   
  25. --关闭所有节点Oracle Clusterware,并添加-force选项   
  26. [root@rac1 ~]#  crsctl add css votedisk /dev/raw/raw3 -force  
  27. Now formatting voting disk: /dev/raw/raw3  
  28. successful addition of votedisk /dev/raw/raw3.  
  29. [root@rac1 ~]# crsctl query css votedisk  
  30.  0.     0    /dev/raw/raw2  
  31.  1.     0    /dev/raw/raw3  
  32.   
  33. located 2 votedisk(s).  
  34.   
  35. --更改表决磁盘配置,删除voting disk   
  36. [root@rac1 ~]# crsctl delete css votedisk /dev/raw/raw3 -force  
  37. successful deletion of votedisk /dev/raw/raw3.  

相关内容