ASM Diskgroup Redundancy
/* ASM Diskgroup Redundancy: In ASM, 3 types of redundancy are available:
- External Redundancy doesn't provide any mirroring or striping. When using this type of redundancy, disks must be protected by hardware mirroring or RAID.
- Normal Redundancy is the default level when the redundancy clause is omitted and it provides two way of mirroring and at least two failure groups must be created.
- High Redundancy provides three ways mirroring and is considered the highest redundancy level.
checking V$ASM_DISK view to check for the new candidate disks
1 2 3 4 5 6 | SET LINESIZE 150 col path format a20 col name format a15 SELECT group_number, disk_number, mount_status, header_status, state, total_mb, free_mb, name, path FROM v$asm_disk; | cs |
When you add extra new disks to virtual machine and want to add new disks as new diskgroup, new candidate disks are not available if ASM_DISKSTRINGS parameter was not set correctly or not updated
1 2 3 | SHOW PARAMETER asm_diskstring ALTER SYSTEM SET asm_diskstring='/dev/oracleasm/disks/*','/dev/disks/*'; | cs |
And you can create a new diskgroup using SQL*Plus, not only ASMCA utility. This code shows an example of creating new diskgroup with external redundancy.
1 | CRAETE DISKGROUP dg_ext EXTERNAL REDUNDANCY DISK '/dev/newdisk1' NAME NEWDISK1; | cs |
And this code is an example of creating a diskgroup with normal redundancy that has two failgroupst.
1 2 3 | CREATE DISKGROUP dg_norm NORMAL REDUNDANCY FAILGROUP fg_1 DISK '/dev/newdisk2' name NEWDISK2 FAILGROUP fg_2 DISK '/dev/newdisk3' name NEWDISK3; | cs |
Sure, you can drop diskgroup by using simple SQL*Plus code.
1 2 | DROP DISKGROUP dg_ext; DROP DISKGROUP dg_norm; | cs |
Add new disk to the diskgroup
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | CREATE DISKGROUP dg_ext EXTERNAL REDUNDANCY DISK '/dev/newdisk1' NAME NEWDISK1; /* Add extra disk to DISKGROUP that already created */ ALTER DISKGROUP dg_ext ADD DISK '/dev/newdisk2' NAME NEWDISK2; /* Drop disk from DISKGROUP */ ALTER DISKGROUP dg_ext DROP DISK NEWDISK2; /* Cancel the drop of disks */ ALTER DISKGROUP dg_ext UNDROP DISKS; /* Rebalance DISKGROUP */ ALTER DISKGROUP dg_ext REBALANCE POWER 5 WAIT; /* Mount/dismount DISKGROUP */ ALTER DISKGROUP dg_ext MOUNT; ALTER DISKGROUP dg_ext DISMOUNT; | cs |
/* GUI環境(asmca)でのdiskgroup追加及びディスク追加作業は7-1(6)で実習を行いましたので、ここでは割愛します。*/