It has been awhile since my last post. My pathetic excuses are all pretty much mentioned here.
Last month we’ve worked with the storage team to migrate the SAN storage of our Oracle 11gR1 database to a new one. The drive of migration is mainly for SAN consolidation which is, of course, ultimately for cost saving. In addition to migrating the ASM disk groups storing database’s data files, all clusterware files (OCR and voting disk) must be migrated too. The rebalance feature in Oracle ASM makes data migration very easy and seamless. And since the clusterware files have redundancy, they can be seamlessly migrated as well. With 11gR1, all migration tasks can be performed online.
Prerequisites/Assumptions:
- New SAN LUNs/disks are already visible to all RAC nodes. In case of the disks for ASM diskgroups, they are already discovered by ASM. The minimum numbers and permissions of the OCR and voting disks must be met.
- It is recommended to perform the migration tasks during off-peak hours or even better if during planned maintenance window period.
Note that the sample shown here is specific to my environment (11.1.0.7 on Solaris 10 with dual-pathing to Hitachi SAN, and OCR and voting disks are on raw devices).
SAN Migration of the ASM diskgroups
If you’re more comfortable with GUI, all tasks here can be accomplished using the Enterprise Manager.
1. Add new disks to ASM diskgroups.
ALTER DISKGROUP PMDW_DG1 ADD DISK '/dev/rdsk/c4t60060E80056FB30000006FB300000823d0s6' NAME PMDW_DG1_0003, '/dev/rdsk/c4t60060E80056FB30000006FB300000826d0s6' NAME PMDW_DG1_0004, '/dev/rdsk/c4t60060E80056FB30000006FB300000829d0s6' NAME PMDW_DG1_0005 REBALANCE POWER 11;
We go with the rebalance power of 11 which is full throttle because it is planned maintenance.
2. Check rebalance status from Enterprise Manager or v$ASM_OPERATION.
3. When rebalance completes, drop the old disks.
ALTER DISKGROUP PMDW_DG1 DROP DISK PMDW_DG1_0000, PMDW_DG1_0001, PMDW_DG1_0002 REBALANCE POWER 11;
When adding or removing several disks, it is recommend to add or remove all disks at once. This is to reduce the number of the rebalance operations that are needed for storage changes.
SAN Migration of the OCR Files
1. Backup all OCR-related files.
# {CRS_HOME}/bin/ocrcheck
Status of Oracle Cluster Registry is as follows :
Version : 2
Total space (kbytes) : 921332
Used space (kbytes) : 4548
Available space (kbytes) : 916784
ID : 776278942
Device/File Name : /dev/rdsk/c4t50060E800000000000002892000003F8d0s6
Device/File integrity check succeeded
Device/File Name : /dev/rdsk/c4t50060E800000000000002892000003F9d0s6
Device/File integrity check succeeded
Backup the /var/opt/oracle/ocr.loc file:
# cp ocr.loc ocr.loc.old
Manually backup OCR:
# {CRS_HOME}/bin/ocrconfig -manualbackup
2. As root, run the following commands to replace OCR files. This change can be performed on-line, and will be reflected across the entire cluster.
# {CRS_HOME}/bin/ocrconfig -replace ocr /dev/rdsk/c4t60060E80056FB30000006FB300001014d0s6
# {CRS_HOME}/bin/ocrconfig -replace ocrmirror /dev/rdsk/c4t60060E80056FB30000006FB300001015d0s6
3. Verify the new configuration.
Check new ocr.loc file updated:
# cat /var/opt/oracle/ocr.loc #Device/file /dev/rdsk/c4t50060E800000000000002892000003F9d0s6 getting replaced by device /dev/rdsk/c4t60060E80056FB30000006FB300001015d0s6 ocrconfig_loc=/dev/rdsk/c4t60060E80056FB30000006FB300001014d0s6 ocrmirrorconfig_loc=/dev/rdsk/c4t60060E80056FB30000006FB300001015d0s6
Check OCR:
# {CRS_HOME}/bin/ocrcheck
Status of Oracle Cluster Registry is as follows :
Version : 2
Total space (kbytes) : 921332
Used space (kbytes) : 4548
Available space (kbytes) : 916784
ID : 776278942
Device/File Name : /dev/rdsk/c4t60060E80056FB30000006FB300001014d0s6
Device/File integrity check succeeded
Device/File Name : /dev/rdsk/c4t60060E80056FB30000006FB300001015d0s6
Device/File integrity check succeeded
Cluster registry integrity check succeeded
Logical corruption check succeeded
SAN Migration of the voting disks
1. Backup the voting disks.
Query the original locations:
# /opt/oracrs/bin/crsctl query css votedisk 0. 0 /dev/rdsk/c4t50060E800000000000002892000003FBd0s6 1. 0 /dev/rdsk/c4t50060E800000000000002892000003FCd0s6 2. 0 /dev/rdsk/c4t50060E800000000000002892000003FFd0s6
Backup voting disks using dd:
dd if={voting_disk_name} of={backup_file_name}
Example,
dd if=/dev/rdsk/c4t50060E800000000000002892000003FBd0s6 of=/tmp/voting1
2. Move voting disks.
Starting with 11.1 onwards, the voting disk migration can be performed on-line.
# /opt/oracrs/bin/crsctl delete css votedisk /dev/rdsk/c4t50060E800000000000002892000003FBd0s6 # /opt/oracrs/bin/crsctl add css votedisk /dev/rdsk/c4t60060E80056FB30000006FB300001017d0s6 # /opt/oracrs/bin/crsctl delete css votedisk /dev/rdsk/c4t50060E800000000000002892000003FCd0s6 # /opt/oracrs/bin/crsctl add css votedisk /dev/rdsk/c4t60060E80056FB30000006FB300001018d0s6 # /opt/oracrs/bin/crsctl delete css votedisk /dev/rdsk/c4t50060E800000000000002892000003FFd0s6 # /opt/oracrs/bin/crsctl add css votedisk /dev/rdsk/c4t60060E80056FB30000006FB300001019d0s6
3. Verify the new configuration.
# /opt/oracrs/bin/crsctl query css votedisk 0. 0 /dev/rdsk/c4t60060E80056FB30000006FB300001017d0s6 1. 0 /dev/rdsk/c4t60060E80056FB30000006FB300001018d0s6 2. 0 /dev/rdsk/c4t60060E80056FB30000006FB300001019d0s6
Reference:
Metalink #428681.1: OCR / Vote disk Maintenance Operations: (ADD/REMOVE/REPLACE/MOVE), including moving from RAW Devices to Block Devices









October 5th, 2009 at 11:56 am
Nice… and Great to see your post again.
I just curious about add/drop ASM disks
How much data in ASM DiskGroup?
and …
How long a time did you Add/Drop new disks on ASM diskgroups?
thank You
October 5th, 2009 at 1:28 pm
Yeah, it is good to be back too.
It takes roughly 40 minutes for 600GB of data using the rebalance power of 11. Note that this has been done when no users’ activities (planned maintenance).
October 5th, 2009 at 1:41 pm
Thank You, that’s great idea for me.
October 14th, 2009 at 9:22 am
[...] Ittichai Chammavanijakul-Online SAN Storage Migration for Oracle 11g RAC database with ASM [...]
October 21st, 2009 at 12:34 pm
Hello from Russia!
Can I quote a post in your blog with the link to you?
February 9th, 2010 at 9:27 am
Great information! very helpful!
March 3rd, 2010 at 8:09 am
need to read the article