ASM Disk Discovery
Disk discovery is the mechanism used to find the operating system names for disks ASM can access. It is used to find all the disks that comprise a disk group to be mounted, the disks an administrator wants to add to a disk group, or the disks the administrator might consider adding to a disk group.How A Disk is Discovered :While an ASM instance is initialized, ASM discovers and examines the contents of all of the disks that are in the paths that we designated with values in the ASM_DISKSTRING initialization parameter.Disk discovery also occurs when:1) Run the ALTER DISKGROUP...ADD DISK and ALTER DISKGROUP...RESIZE DISK commands2) Query the V$ASM_DISKGROUP and V$ASM_DISK views :After ASM successfully discovers a disk, the disk appears in the V$ASM_DISK view.Disks that belong to a disk group, that is, disks that have a disk group name in the disk header, show a status of MEMBER. Disks that were discovered, but that have not yet been assigned to a disk group, have a status of either CANDIDATE or PROVISIONED.The PROVISIONED status implies that an additional platform-specific action has been taken by an administrator to make the disk available for ASM. For example, on Windows computers, the administrator might have used asmtool or asmtoolg to stamp the disk with a header. On Linux computers, the administrator might have used ASMLIB to prepare the disk for ASM.The following SQL query shows one candidate and six member disks:SQL>SELECT name, header_status, path FROM V$ASM_DISK;NAME HEADER_STATUS PATH--------- ------------- ---------------------CANDIDATE /dev/rdsk/disk07DISK06 MEMBER /dev/rdsk/disk06DISK05 MEMBER /dev/rdsk/disk05DISK04 MEMBER /dev/rdsk/disk04DISK03 MEMBER /dev/rdsk/disk03DISK02 MEMBER /dev/rdsk/disk02DISK01 MEMBER /dev/rdsk/disk017 rows selected.Disk Discovery Rules :The rules for discovering ASM disks are as follows:1) ASM can discover up to 10,000 disks. That is, if more than 10,000 disks match the ASM_DISKSTRING initialization parameter, then ASM discovers only the first 10,000.2) ASM only discovers disks that contain a partition table.ASM does not discover a disk that contains an operatingsystem partition table, even if the disk is in an ASM disk string search path and ASM has read and write permission for the disk.3) When adding a disk, the FORCE option must be used if ASM recognizes that the disk was managed by Oracle. Such a disk appears in the V$ASM_DISK view with a status of FOREIGN. In this case, we can only add the disk to a disk group by using the FORCE keyword.In addition, ASM identifies the following configuration errors during discovery:1) Multiple paths to the same diskIn this case, if the disk is part of a disk group, then disk group mount fails. If the disk is being added to a disk group with the ADD DISK or CREATE DISKGROUP command, then the command fails. To correct the error, adjust theASM_DISKSTRING value so that ASM will not discover multiple paths to the same disk. Or if we are using multipathing software, then ensure that we include only the pseudo-device name in the ASM_DISKSTRING value.2) Multiple ASM disks with the same disk headerThis can be caused by having copied one disk onto another. In this case, the disk group mount operation fails.Improving Disk Discovery Time :The value for the ASM_DISKSTRING initialization parameter is an operating system–dependent value that ASM uses to limit the set of paths that the discovery process uses to search for disks.When a new disk is added to a disk group, each ASM instance that has the disk group mounted must be able to discover the new disk using its ASM_DISKSTRING.In many cases, the default value (NULL) is sufficient. Using a more restrictive value might reduce the time required for ASM to perform discovery, and thus improve disk group mount time or the time for adding a disk to a disk group.Oracle might need to dynamically change the ASM_DISKSTRING before adding a disk so that the new disk will be discovered through this parameter.The default value of ASM_DISKSTRING might not find all disks in all situations. If our site is using a third-party vendor ASMLIB, then the vendor might have discovery string conventions that we must use for ASM_DISKSTRING.If our installation uses multipathing software, then the software might place pseudo-devices in a path that is different from the operating system default.
No comments:
Post a Comment