What you have learnt is equivalent to the amount of sand you can hold in your hand. What you haven't is everything outside - Tamil Proverb


Labels

Tuesday, August 25, 2009

Managing ASM Disk Discovery



Most of the times, when everything else fails we turn to setting ASM_DISKSTRING as '/dev/oracleasm/disks/*' and it is almost always guaranteed to work. But this way we know that the ASM Library is not used at all and disk discovery happens outside the Library. Not a good thing. This can be confirmed using kfod (kfod asm_diskstring=ORCL:* disks=all) . So, what should you tinker with then  to use the ASM Lib rather than the SYSTEM library, as shown by the LIBRARY field of v$asm_disk? When doing a migration, you may also get a HEADER_STATUS=UNKNOWN and the errors ORA-15032, ORA-15063 and ORA-15186.

Well, if you are using multipathing s/w, you got to let the disk discovery use just the pseudo-devices and not any of the many single devices (thru' many I/O paths) that form a single pseudo device. If you are using EMC with PowerPath, set it to emcpower. If you are using NetApp with DeviceMapper, set it to dm.


oracle---tlxkrdbrr1.lex.lexmark.com--/home/oracle--orcl1
> su -
Password:
[root@tlxkrdbrr1 ~]# inq
Inquiry utility, Version V7.3-872 (Rev 0.0)      (SIL Version V6.5.0.0 (Edit Level 872)
Copyright (C) by EMC Corporation, all rights reserved.
For help type inq -h.

...............................................................................
....

-------------------------------------------------------------------------
DEVICE         :VEND    :PROD            :REV   :SER NUM    :CAP(kb)
-------------------------------------------------------------------------
/dev/sda       :DELL    :PERC 6/i        :1.21  :           :   142737408
/dev/sdb       :NETAPP  :LUN             :7310  :HnanPJQ/   :    15728640
/dev/sdc       :NETAPP  :LUN             :7310  :HnanPJQ/   :    20971520
/dev/sdd       :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sde       :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdf       :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdg       :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdh       :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdi       :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdj       :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdk       :NETAPP  :LUN             :7310  :HnanPJRN   :     2097152
/dev/sdl       :NETAPP  :LUN             :7310  :HnanPJQ/   :    15728640
/dev/sdm       :NETAPP  :LUN             :7310  :HnanPJQ/   :    20971520
/dev/sdn       :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdo       :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdp       :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdq       :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdr       :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sds       :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdt       :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdu       :NETAPP  :LUN             :7310  :HnanPJRN   :     2097152
/dev/sdv       :NETAPP  :LUN             :7310  :HnanPJQ/   :    15728640
/dev/sdw       :NETAPP  :LUN             :7310  :HnanPJQ/   :    20971520
/dev/sdx       :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdy       :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdz       :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/dm-0      :DELL    :PERC 6/i        :1.21  :           :   142737408
/dev/dm-1      :DELL    :PERC 6/i        :1.21  :           :   142737408
/dev/dm-2      :DELL    :PERC 6/i        :1.21  :           :   142737408
/dev/dm-3      :DELL    :PERC 6/i        :1.21  :           :   142737408
/dev/dm-4      :DELL    :PERC 6/i        :1.21  :           :   142737408
/dev/dm-5      :DELL    :PERC 6/i        :1.21  :           :   142737408
/dev/dm-6      :DELL    :PERC 6/i        :1.21  :           :   142737408
/dev/dm-7      :DELL    :PERC 6/i        :1.21  :           :   142737408
/dev/dm-8      :DELL    :PERC 6/i        :1.21  :           :   142737408
/dev/dm-9      :DELL    :PERC 6/i        :1.21  :           :   142737408
/dev/sdaa      :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdab      :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdac      :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdad      :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdae      :NETAPP  :LUN             :7310  :HnanPJRN   :     2097152
/dev/sdaf      :NETAPP  :LUN             :7310  :HnanPJQ/   :    15728640
/dev/sdag      :NETAPP  :LUN             :7310  :HnanPJQ/   :    20971520
/dev/sdah      :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdai      :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdaj      :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdak      :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdal      :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdam      :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdan      :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/sdao      :NETAPP  :LUN             :7310  :HnanPJRN   :     2097152
/dev/sdap      :DGC     :RAID 5          :0226  :65000091   :    20971520
/dev/sdaq      :DGC     :RAID 5          :0226  :69000093   :   157286400
/dev/sdar      :DGC     :RAID 5          :0226  :68000083   :    10485760
/dev/sdas      :DGC     :RAID 5          :0226  :65000091   :    20971520
/dev/sdat      :DGC     :RAID 5          :0226  :69000093   :   157286400
/dev/sdau      :DGC     :RAID 5          :0226  :68000083   :    10485760
/dev/sdav      :DGC     :RAID 5          :0226  :65000091   :    20971520
/dev/sdaw      :DGC     :RAID 5          :0226  :69000093   :   157286400
/dev/sdax      :DGC     :RAID 5          :0226  :68000083   :    10485760
/dev/sday      :DGC     :RAID 5          :0226  :65000091   :    20971520
/dev/sdaz      :DGC     :RAID 5          :0226  :69000093   :   157286400
/dev/sdba      :DGC     :RAID 5          :0226  :68000083   :    10485760
/dev/dm-10     :DELL    :PERC 6/i        :1.21  :           :   142737408
/dev/dm-11     :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/dm-12     :NETAPP  :LUN             :7310  :HnanPJQ/   :    15728640
/dev/dm-13     :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/dm-14     :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/dm-15     :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/dm-16     :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/dm-17     :NETAPP  :LUN             :7310  :HnanPJRN   :     2097152
/dev/dm-18     :NETAPP  :LUN             :7310  :HnanPJQ/   :    20971520
/dev/dm-19     :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/dm-20     :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/dm-21     :NETAPP  :LUN             :7310  :HnanPJQ/   :    20971520
/dev/dm-22     :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/dm-23     :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/dm-24     :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/dm-25     :NETAPP  :LUN             :7310  :HnanPJRN   :     2097152
/dev/dm-27     :NETAPP  :LUN             :7310  :HnanPJQ0   :     5242880
/dev/emcpowera :DGC     :RAID 5          :0226  :65000091   :    20971520
/dev/emcpowerb :DGC     :RAID 5          :0226  :69000093   :   157286400
/dev/emcpowerc :DGC     :RAID 5          :0226  :68000083   :    10485760
[root@tlxkrdbrr1 ~]#
[root@tlxkrdbrr1 ~]#
[root@tlxkrdbrr1 ~]#
[root@tlxkrdbrr1 ~]#
[root@tlxkrdbrr1 ~]#
[root@tlxkrdbrr1 ~]#
[root@tlxkrdbrr1 ~]# /etc/init.d/oracleasm listdisks
ASMDISK01
ASMDISK02
[root@tlxkrdbrr1 ~]# /etc/init.d/oracleasm querydisks ASMDISK01 ASMDISK02
Usage: /etc/init.d/oracleasm {start|stop|restart|enable|disable|configure|createdisk|deletedisk|querydisk|listdisks|scandisks|status}
[root@tlxkrdbrr1 ~]# /etc/init.d/oracleasm querydisk ASMDISK01 ASMDISK02
Disk "ASMDISK01" is a valid ASM disk on device [66, 145]
Disk "ASMDISK02" is a valid ASM disk on device [66, 161]
[root@tlxkrdbrr1 ~]# cat /proc/partitions | egrep '145|161'
   8   161    2095662 sdk1
  65   145    5238597 sdz1
  65   161    5238597 sdaa1
  66   145   20971504 sdap1  <====== This is totally wrong. The ASM disk should not be individual
  66   161  157284351 sdaq1  <====== disks. It should on the multipathed device
[root@tlxkrdbrr1 ~]# cat /proc/partitions | egrep -i emc
120    32   10485760 emcpowerc
120    33    3001328 emcpowerc1
120    34    3001344 emcpowerc2
120    35    4483072 emcpowerc3
120    16  157286400 emcpowerb
120    17  157284351 emcpowerb1 <===== ASMDISK02 SHOULD IDEALLY BE ON THIS
120     0   20971520 emcpowera
120     1   20971504 emcpowera1 <===== ASMDISK01 SHOULD IDEALLY BE ON THIS
[root@tlxkrdbrr1 ~]# cp /etc/sysconfig/oracleasm /etc/sysconfig/oracleasm.bk_jc_08_24
[root@tlxkrdbrr1 ~]# cat /etc/sysconfig/oracleasm
#
# This is a configuration file for automatic loading of the Oracle
# Automatic Storage Management library kernel driver.  It is generated
# By running /etc/init.d/oracleasm configure.  Please use that method
# to modify this file
#

# ORACLEASM_ENABELED: 'true' means to load the driver on boot.
ORACLEASM_ENABLED=true

# ORACLEASM_UID: Default user owning the /dev/oracleasm mount point.
ORACLEASM_UID=oracle

# ORACLEASM_GID: Default group owning the /dev/oracleasm mount point.
ORACLEASM_GID=oinstall

# ORACLEASM_SCANBOOT: 'true' means fix disk perms on boot
ORACLEASM_SCANBOOT=true

# ORACLEASM_CLEARBOOT: 'true' means clean old disk perms on boot
ORACLEASM_CLEARBOOT=true

# ORACLEASM_SCANORDER: Matching patterns to order disk scanning
ORACLEASM_SCANORDER=dm

# ORACLEASM_SCANEXCLUDE: Matching patterns to exclude disks from scan
ORACLEASM_SCANEXCLUDE=

[root@tlxkrdbrr1 ~]# vi /etc/sysconfig/oracleasm
[root@tlxkrdbrr1 ~]# cat /etc/sysconfig/oracleasm
#
# This is a configuration file for automatic loading of the Oracle
# Automatic Storage Management library kernel driver.  It is generated
# By running /etc/init.d/oracleasm configure.  Please use that method
# to modify this file
#

# ORACLEASM_ENABELED: 'true' means to load the driver on boot.
ORACLEASM_ENABLED=true

# ORACLEASM_UID: Default user owning the /dev/oracleasm mount point.
ORACLEASM_UID=oracle

# ORACLEASM_GID: Default group owning the /dev/oracleasm mount point.
ORACLEASM_GID=oinstall

# ORACLEASM_SCANBOOT: 'true' means fix disk perms on boot
ORACLEASM_SCANBOOT=true

# ORACLEASM_CLEARBOOT: 'true' means clean old disk perms on boot
ORACLEASM_CLEARBOOT=true

# ORACLEASM_SCANORDER: Matching patterns to order disk scanning
#ORACLEASM_SCANORDER=dm
ORACLEASM_SCANORDER=

# ORACLEASM_SCANEXCLUDE: Matching patterns to exclude disks from scan
ORACLEASM_SCANEXCLUDE=

[root@tlxkrdbrr1 ~]# /etc/init.d/oracleasm restart
Unmounting ASMlib driver filesystem:                       [  OK  ]
Unloading module "oracleasm":                              [  OK  ]
Loading module "oracleasm":                                [  OK  ]
Mounting ASMlib driver filesystem:                         [  OK  ]
Scanning system for ASM disks:                             [  OK  ]
[root@tlxkrdbrr1 ~]#
[root@tlxkrdbrr1 ~]#
[root@tlxkrdbrr1 ~]# /etc/init.d/oracleasm querydisk ASMDISK01 ASMDISK02
Disk "ASMDISK01" is a valid ASM disk on device [66, 145]  <===== STILL WRONG
Disk "ASMDISK02" is a valid ASM disk on device [66, 161]
[root@tlxkrdbrr1 ~]# vi /etc/sysconfig/oracleasm
[root@tlxkrdbrr1 ~]# /etc/init.d/oracleasm restart
Unmounting ASMlib driver filesystem:                       [  OK  ]
Unloading module "oracleasm":                              [  OK  ]
Loading module "oracleasm":                                [  OK  ]
Mounting ASMlib driver filesystem:                         [  OK  ]
Scanning system for ASM disks:                             [  OK  ]
[root@tlxkrdbrr1 ~]# /etc/init.d/oracleasm querydisk ASMDISK01 ASMDISK02
Disk "ASMDISK01" is a valid ASM disk on device [120, 1]
Disk "ASMDISK02" is a valid ASM disk on device [120, 17]
[root@tlxkrdbrr1 ~]#
[root@tlxkrdbrr1 ~]#
[root@tlxkrdbrr1 ~]#
[root@tlxkrdbrr1 ~]# ############### THATABOY
[root@tlxkrdbrr1 ~]#
[root@tlxkrdbrr1 ~]#
[root@tlxkrdbrr1 ~]#
[root@tlxkrdbrr1 ~]# cat /etc/sysconfig/oracleasm
#
# This is a configuration file for automatic loading of the Oracle
# Automatic Storage Management library kernel driver.  It is generated
# By running /etc/init.d/oracleasm configure.  Please use that method
# to modify this file
#

# ORACLEASM_ENABELED: 'true' means to load the driver on boot.
ORACLEASM_ENABLED=true

# ORACLEASM_UID: Default user owning the /dev/oracleasm mount point.
ORACLEASM_UID=oracle

# ORACLEASM_GID: Default group owning the /dev/oracleasm mount point.
ORACLEASM_GID=oinstall

# ORACLEASM_SCANBOOT: 'true' means fix disk perms on boot
ORACLEASM_SCANBOOT=true

# ORACLEASM_CLEARBOOT: 'true' means clean old disk perms on boot
ORACLEASM_CLEARBOOT=true

# ORACLEASM_SCANORDER: Matching patterns to order disk scanning
#ORACLEASM_SCANORDER=dm
ORACLEASM_SCANORDER=emcpower

# ORACLEASM_SCANEXCLUDE: Matching patterns to exclude disks from scan
ORACLEASM_SCANEXCLUDE=

My Blog List

Blog Archive

Total Pageviews


Custom Search