【MOS】OCR/Vote disk 维护操作: (添加/删除/替换/移动) (文档 ID 1674859.1)
文档内容
目标 |
解决方案 |
准备磁盘 |
1. 磁盘大小 |
2. 裸设备或者块设备 (pre 11.2) |
3. ASM disks (11.2+) |
4. 集群文件系统 |
5. 权限 |
6. 冗余 |
添加/删除/替换/移动 OCR device |
1. 当只有一个 OCR 设备时,添加一个 OCRMIRROR 设备: |
2. 删除一个 OCR 设备 |
3. 替换或者移动 OCR 设备位置 |
4. 当集群停止时如何恢复 OCR |
添加/删除/移动 voting disk |
对应于 10gR2 版本 |
对于 11gR1 版本 |
对于 11gR2 版本 |
对于 修改在线的OCR或者Vote file 的操作: |
对于 Extended Cluster 上 Voting disk 维护 |
参考 |
适用于:
Oracle Database - Enterprise Edition - 版本 10.2.0.1 到 11.2.0.1.0 [发行版 10.2 到 11.2]本文档所含信息适用于所有平台
目标
提供在 Oracle Clusterware 10gR2, 11gR1 和 11gR2 环境中添加,删除,替换,移动 Oracle Cluster Repository (OCR) 和/或 Voting Disk 的步骤。并且包括了把OCR/voting 从裸设备移动到块设备和ASM 设备的步骤。对于 Oracle Clusterware 12c,请参考 Document 1558920.1 Software Patch Level and 12c Grid Infrastructure OCR Backup/Restore。
本文适用于需要修改,移动 OCR,voting disk 的 DBA 和技术支持工程师,客户已经在一套存储上部署了集群环境,可能需要在最短的停机时间内迁移到新的存储。
通常来说,一旦存储已经存在,那么可以通过 cp 或者 dd 文件,但是对于集群来说是有一些困难的,这是因为:
1. Oracle Clusterware 的 OCR 和 voting disks 是联机使用的。(包括primary和镜像)
2. 与 cp 和 dd 命令相比,Oracle提供的 API(ocrconfig and crsctl)更适合用来实现这些功能。
执行操作之前,请备份 OC R和 voting disk。
解决方案
准备磁盘
为了添加或者替换 OCR 或 voting disk,请提前准备新的磁盘。请参考各个平台 Clusteware/Gird Infrastructure 安装文档中关于磁盘的要求。
1. 磁盘大小
版本 10.1:
OCR device minimum size (each): 100M
Voting disk minimum size (each): 20M
版本 10.2:
OCR device 最小值 (每个): 256M
Voting disk最小值 (每个): 256M
版本 11.1:
OCR device 最小值 (每个): 280M
Voting disk 最小值 (每个): 280M
版本 11.2:
OCR device 最小值 (每个): 300M
Voting disk 最小值 (每个): 300M
2. 裸设备或者块设备 (pre 11.2)
请参考各个平台 Clusteware/Gird Infrastructure 安装文档。
对于windows平台,请使用命令$CRS_HOME\bin\GUIOracleOBJManager.exe创建新的裸设备链接,例如:
\\.\VOTEDSK2
\\.\OCR2
3. ASM disks (11.2+)
在windows平台,请参考 Document 331796.1 How to setup ASM on Windows
在Linux平台,请参考 Document 580153.1 How To Setup ASM on Linux Using ASMLIB Disks, Raw Devices or Block Devices?
其他平台,请参考 Clusterware/Gird Infrastructure安装手册 OTN (Chapter: Oracle Automatic Storage Management Storage Configuration)。
4. 集群文件系统
如果 OCR 在集群文件系统上,在添加/替换之前,新的 OCR 或者 OCRMIRROR 文件必需提前创建,否则会出现PROT-21: Invalid parameter (10.2/11.) or PROT-30 The Oracle Cluster Registry location to be added is not accessible (针对版本11.2)错误。
# touch /cluster_fs/ocrdisk.dat
# touch /cluster_fs/ocrmirror.dat
# chown root:oinstall /cluster_fs/ocrdisk.dat /cluster_fs/ocrmirror.dat
# chmod 640 /cluster_fs/ocrdisk.dat /cluster_fs/ocrmirror.dat
不需要提前在集群文件系统上创建 voting disk 文件。
执行删除命令后,需要手动在集群文件系统上删除 ocr/voting 文件。
5. 权限
对于 OCR 设备:
chown root:oinstall
chmod 640
对于 Voting 设备:
chown :oinstall
chmod 644
如果 OCR/Voting disk 使用 ASM 磁盘:
chown griduser:asmadmin
chmod 660
6. 冗余
Voting 磁盘(不要使用偶数个):
External 需要最少1个 Voting 磁盘(或者1个 failure group)
Normal 需要最少3个 Voting 磁盘(或者3个 failure group)
High 需要最少5个 Voting 磁盘(或者5个 failure group)
缺少 failure group 会引起 voting disk 创建失败。例如 ORA-15274: Not enough failgroups (3) to create voting files
OCR:
10.2 和 11.1,最多2个 OCR 设备:OCR 和 OCRMIRROR
11.2+,最多5个 OCR。
请参考各个平台对应文档 Oracle? Grid Infrastructure Installation Guide 获得更多信息
添加/删除/替换/移动 OCR device
请确保执行这些操作时 CRS 在所有节点都是运行的,否则在关闭的节点上这些命令将不会生效,那么将来关闭节点的 CRS 启动时会有问题。需要使用"ocrconfig -repair"命令来修复 ocr.loc 文件。
对于 11.2 及以上版本而且 OCR 在 ASM 磁盘组的集群,由于 unpublished Bug 8604794 - FAIL TO CHANGE OCR LOCATION TO DG WITH 'OCRCONFIG -REPAIR -REPLACE'的存在,使用"ocrconfig -repair"命令将 OCR 位置修改到不同的 ASM 磁盘组是不能正常工作的。临时的解决方法是手动编辑 /etc/oracle/ocr.loc 或 /var/opt/oracle/ocr.loc文件 或 Windows registry HYKEY_LOCAL_MACHINE\SOFTWARE\Oracle\ocr剑指,指向设定的磁盘组。
如果 OLR 有任何问题,请参考 How to restore OLR in 11.2 Grid Infrastructure Note 1193643.1.
在做任何改变前确保有一个近期的 OCR 文件备份:
ocrconfig -showbackup
如果没有近期的 OCR 文件备份,可以 export 当前的 OCR 文件。使用下面的命令生成一个在线 OCR 文件的导出文件:
版本 10.2
# ocrconfig -export -s online
版本 11.1 和 11.2
# ocrconfig -manualbackup
node1 2008/08/06 06:11:58 /crs/cdata/crs/backup_20080807_003158.ocr
使用导出文件来恢复 OCR,执行下面命令:
从 11.2 开始,请参考 How to restore ASM based OCR after complete loss of the CRS diskgroup on Linux/Unix systems Document 1062983.1
检查 OCR 是否健康,运行 ocrcheck 命令,应该返回下面的信息:
# ocrcheck
Status of Oracle Cluster Registry is as follows :
Version : 2
Total space (kbytes) : 497928
Used space (kbytes) : 312
Available space (kbytes) : 497616
ID : 576761409
Device/File Name : /dev/raw/raw1
Device/File integrity check succeeded
Device/File Name : /dev/raw/raw2
Device/File integrity check succeeded
Cluster registry integrity check succeeded
对于11.1及以上版本, ocrcheck 命令还应该返回:
Logical corruption check succeeded
1. 当只有一个 OCR 设备时,添加一个 OCRMIRROR 设备:
添加一个 OCR mirror 设备,提供全路径包括文件名。
10.2 和 11.1:
# ocrconfig -replace ocrmirror
eg:
# ocrconfig -replace ocrmirror /dev/raw/raw2
# ocrconfig -replace ocrmirror /dev/sdc1
# ocrconfig -replace ocrmirror /cluster_fs/ocrdisk.dat
> ocrconfig -replace ocrmirror \\.\OCRMIRROR2 - for Windows
11.2+: 版本 11.2 之后,最多可添加4个 ocrmirrors
# ocrconfig -add
eg:
# ocrconfig -add +OCRVOTE2
# ocrconfig -add /cluster_fs/ocrdisk.dat
2. 删除一个 OCR 设备
删除一个 OCR 设备:
10.2 和 11.1:
# ocrconfig -replace ocr
11.2+:
# ocrconfig -delete
eg:
# ocrconfig -delete +OCRVOTE1* 一旦 OCR 设备被删除,ocrmirror 设备自动转换为 OCR。
* 如果只有一个 OCR 设备,那么不允许删除 OCR ,命令将会返回错误 PROT-16。
删除 OCR mirror 设备:
10.2 和 11.1:
# ocrconfig -replace ocrmirror
11.2+:
# ocrconfig -delete
eg:
# ocrconfig -delete +OCRVOTE2
如果是集群文件系统,那么删除之后,旧的 OCR/OCRMIRROR 文件可以被删除。
3. 替换或者移动 OCR 设备位置
2. 如果 OCR 设备被替换为不同大小的设备,那么新的设备大小只有集群重启后才会被显示。
10.2 和 11.1:
替换 OCR 设备,提供全路径包括文件名:
# ocrconfig -replace ocr
eg:
# ocrconfig -replace ocr /dev/sdd1
$ ocrconfig -replace ocr \\.\OCR2 - for Windows
替换 OCR mirror 设备,提供全路径包括文件名:
# ocrconfig -replace ocrmirror
eg:
# ocrconfig -replace ocrmirrow /dev/raw/raw4
# ocrconfig -replace ocrmirrow \\.\OCRMIRROR2 - for Windows
11.2:
替换 OCR 或者 OCRMIRRORs 的命令和之前版本是相同的(至少2个 OCR 存在):
eg:
# ocrconfig -replace /cluster_file/ocr.dat -replacement +OCRVOTE
# ocrconfig -replace +CRS -replacement +OCRVOTE
4. 当集群停止时如何恢复 OCR
如果 OCR 不可访问,CRSD 进程将不会启动,因此集群将不能完全启动。恢复 OCR 需要访问好的 OCR 备份,查看自动 OCR 备份:
从OCR 备份恢复:
对于 11.2: 如果 OCR 位于 ASM 磁盘,但是 ASM DISK 也丢失了,请参考:
How to restore ASM based OCR after complete loss of the CRS diskgroup on Linux/Unix systems Document 1062983.1
How to Restore OCR After the 1st ASM Diskgroup is Lost on Windows Document 1294915.1
如果没有有效的 OCR 备份,那么需要重新初始化 OCR 和 voting。
对于10.2 和 11.1:
请参考 How to Recreate OCR/Voting Disk Accidentally Deleted Document 399482.1
对于 11.2:
需要在集群的所有节点deconfig 集群软件并且重新运行roo.sh 脚本。
添加/删除/移动 voting disk
2. 对于 11.2,如果 OCR 和 voting 使用 ASM 磁盘,那么这个命令在 Windows 和 Unix 平台是相同的。
对于 11.2 之前,备份 voting disk:
$ dd if=voting_disk_name of=backup_file_name
对于 Windows:
ocopy \\.\votedsk1 o:\backup\votedsk1.bak
对于 11.2+,不需要备份 voting disk,在发生任何配置变化是voting disk 会被自动备份到 OCR 上。如果 voting disk 中的内容发生了以下变化之一, Oracle Clusterware 会自动备份 voting disk:
-
配置参数,比如 misscount 被添加或者修改
-
执行 voting disk 添加或者删除操作
当添加或者替换 voting disk后,voting disk 内容会从VF备份中自动恢复到新的VF中。
对应于 10gR2 版本
修改任何 voting disk 前,停止 oracle 集群(使用 root 用户执行 crsctl stop crs)。查看当前 voting disk 位置:
crsctl query css votedisk
1. 添加一个 Voting Disk,提供全路径包括文件名:
# crsctl add css votedisk -force
eg:
# crsctl add css votedisk /dev/raw/raw1 -force
# crsctl add css votedisk /cluster_fs/votedisk.dat -force
> crsctl add css votedisk \\.\VOTEDSK2 -force - for windows
2. 删除一个 Voting Disk,提供全路径包括文件名:
# crsctl delete css votedisk -force
eg:
# crsctl delete css votedisk /dev/raw/raw1 -force
# crsctl delete css votedisk /cluster_fs/votedisk.dat -force
> crsctl delete css votedisk \\.\VOTEDSK1 -force - for windows
3. 移动一个 Voting Disk,提供全路径包括文件名,先添加一个设备,然后删除旧的:
# crsctl add css votedisk -force
# crsctl delete css votedisk -force
eg:
# crsctl add css votedisk /dev/raw/raw4 -force
# crsctl delete css votedisk /dev/raw/raw1 -force
修改 Voting Disk 后,在所有节点启动 oracle 集群
# crsctl start crs
确认 Voting Disk 位置:
# crsctl query css votedisk
对于 11gR1 版本
从 11.1.0.6 开始,下面的命令可以在线执行(CRS 正在运行)
1. 添加一个 Voting Disk,提供全路径包括文件名:
eg:
# crsctl add css votedisk /dev/raw/raw1
# crsctl add css votedisk /cluster_fs/votedisk.dat
> crsctl add css votedisk \\.\VOTEDSK2 - for windows
2. 删除一个 Voting Disk,提供全路径包括文件名:
eg:
# crsctl delete css votedisk /dev/raw/raw1 -force
# crsctl delete css votedisk /cluster_fs/votedisk.dat
> crsctl delete css votedisk \\.\VOTEDSK1 - for windows
3. 移动一个Voting Disk, 提供全路径包括文件名
# crsctl delete css votedisk
eg:
# crsctl add css votedisk /dev/raw/raw4
# crsctl delete css votedisk /dev/raw/raw1
确认 Voting Disk 位置:
对于 11gR2 版本
从 11.2开始,Voting Disk 可以存放于 ASM 磁盘组或者集群文件系统,当 Grid Infrastructure 运行是,执行下面的命令,以 grid 用户:
1. 添加一个 Voting Disk
a. 当 votedisk 位于集群文件系统:
b. 当 votedisk 位于 ASM 磁盘组,没有添加选项。
Votedisk 数量是由磁盘组冗余度决定。如果希望更多 votedisk 副本,可以移动 votedisk 到更高冗余度的磁盘组。见步骤4。
如果 votedisk 从一个正常或者高冗余度的磁盘组被删除,可以使用下面的命令添加回来:
2. 删除一个Voting Disk
a. 当 Voting Disk 位于集群文件系统时:
or
$ crsctl delete css votedisk (vdiskGUID is the File Universal Id from 'crsctl query css votedisk')
b. 当 Voting Disk 位于 ASM时,没有删除选项,只能从一个 asm 磁盘组替换为另外一个 asm 磁盘组。
3. 在集群文件系统上移动一个 Voting Disk
$ crsctl delete css votedisk
or
$ crsctl delete css votedisk
4. ASM 磁盘组冗余度或者位置变化
例子:从外部冗余磁盘组 +OCRVOTE 移动到正常冗余磁盘组 +CRS
2. $ crsctl query css votedisk
## STATE File Universal Id File Name Disk group
-- ----- ----------------- --------- ---------
1. ONLINE 5e391d339a594fc7bf11f726f9375095 (ORCL:ASMDG02) [+OCRVOTE]
Located 1 voting disk(s).
3. $ crsctl replace votedisk +CRS
Successful addition of voting disk 941236c324454fc0bfe182bd6ebbcbff.
Successful addition of voting disk 07d2464674ac4fabbf27f3132d8448b0.
Successful addition of voting disk 9761ccf221524f66bff0766ad5721239.
Successful deletion of voting disk 5e391d339a594fc7bf11f726f9375095.
Successfully replaced voting disk group with +CRS.
CRS-4266: Voting file(s) successfully replaced
4. $ crsctl query css votedisk
## STATE File Universal Id File Name Disk group
-- ----- ----------------- --------- ---------
1. ONLINE 941236c324454fc0bfe182bd6ebbcbff (ORCL:CRSD1) [CRS]
2. ONLINE 07d2464674ac4fabbf27f3132d8448b0 (ORCL:CRSD2) [CRS]
3. ONLINE 9761ccf221524f66bff0766ad5721239 (ORCL:CRSD3) [CRS]
Located 3 voting disk(s).
5. 在 ASM 磁盘组和集群文件系统之间移动 voting disk
a. ASM 磁盘组移动到集群文件系统:
## STATE File Universal Id File Name Disk group
-- ----- ----------------- --------- ---------
1. ONLINE 6e5850d12c7a4f62bf6e693084460fd9 (ORCL:CRSD1) [CRS]
2. ONLINE 56ab5c385ce34f37bf59580232ea815f (ORCL:CRSD2) [CRS]
3. ONLINE 4f4446a59eeb4f75bfdfc4be2e3d5f90 (ORCL:CRSD3) [CRS]
Located 3 voting disk(s).
$ crsctl replace votedisk /rac_shared/oradata/vote.test3
Now formatting voting disk: /rac_shared/oradata/vote.test3.
CRS-4256: Updating the profile
Successful addition of voting disk 61c4347805b64fd5bf98bf32ca046d6c.
Successful deletion of voting disk 6e5850d12c7a4f62bf6e693084460fd9.
Successful deletion of voting disk 56ab5c385ce34f37bf59580232ea815f.
Successful deletion of voting disk 4f4446a59eeb4f75bfdfc4be2e3d5f90.
CRS-4256: Updating the profile
CRS-4266: Voting file(s) successfully replaced
$ crsctl query css votedisk
## STATE File Universal Id File Name Disk group
-- ----- ----------------- --------- ---------
1. ONLINE 61c4347805b64fd5bf98bf32ca046d6c (/rac_shared/oradata/vote.disk) []
Located 1 voting disk(s).
b. 从集群文件系统移动到 ASM 磁盘组
## STATE File Universal Id File Name Disk group
-- ----- ----------------- --------- ---------
1. ONLINE 61c4347805b64fd5bf98bf32ca046d6c (/rac_shared/oradata/vote.disk) []
Located 1 voting disk(s).
$ crsctl replace votedisk +CRS
CRS-4256: Updating the profile
Successful addition of voting disk 41806377ff804fc1bf1d3f0ec9751ceb.
Successful addition of voting disk 94896394e50d4f8abf753752baaa5d27.
Successful addition of voting disk 8e933621e2264f06bfbb2d23559ba635.
Successful deletion of voting disk 61c4347805b64fd5bf98bf32ca046d6c.
Successfully replaced voting disk group with +CRS.
CRS-4256: Updating the profile
CRS-4266: Voting file(s) successfully replaced
[oragrid@auw2k4 crsconfig]$ crsctl query css votedisk
## STATE File Universal Id File Name Disk group
-- ----- ----------------- --------- ---------
1. ONLINE 41806377ff804fc1bf1d3f0ec9751ceb (ORCL:CRSD1) [CRS]
2. ONLINE 94896394e50d4f8abf753752baaa5d27 (ORCL:CRSD2) [CRS]
3. ONLINE 8e933621e2264f06bfbb2d23559ba635 (ORCL:CRSD3) [CRS]
Located 3 voting disk(s).
6. 确认:
对于 修改在线的OCR或者Vote file 的操作:
对于存储的迁移,如果使用的是asm的磁盘组而且保持原来的大小、磁盘组、冗余方式都不改变的话,我们可以直接采取添加新的faiure group (磁盘)的方式,然后drop掉旧的failure group(磁盘),来达到更换磁盘的目的。
更多操作信息,请参考How to Swap Voting Disks Across Storage in a Diskgroup (Doc ID 1558007.1)和Exact Steps To Migrate ASM Diskgroups To Another SAN/Disk-Array/DAS/etc Without Downtime. (Doc ID 837308.1)
对于 Extended Cluster 上 Voting disk 维护
请参考 oracle 白皮书: Oracle Clusterware 11g Release 2 (11.2) – Using standard NFS to support a third voting file for extended cluster configurations
如果使用 asmca 工具有任何问题,请参考 How to Manually Add NFS voting disk to an Extended Cluster using ASM in 11.2 Note 1421588.1 。
参考
NOTE:866102.1 - Renaming OCR Using "ocrconfig -overwrite" FailsNOTE:390880.1 - OCR Corruption after Adding/Removing voting disk to a cluster when CRS stack is running
NOTE:1573574.1 - OCR Placement and Size Specification
NOTE:1558920.1 - Software Patch Level and 12c Grid Infrastructure OCR Backup/Restore
NOTE:1062983.1 - How to Restore ASM Based OCR After Complete Loss of the CRS Diskgroup on Linux/Unix Systems
替换OCR磁盘组的步骤
>
>
>
>
>
>
>
>
>
>
>