Monitoring ASM disk performance using IOSTAT
April 18, 2022 Leave a comment
iostat
in asmcmd
displays I/O statistics for Oracle ASM disks in mounted disk groups.
Connect to the database node via GI owner:
# su - grid
Run iostat
with the following options (Reads & Writes are in bytes):
# asmcmd ASMCMD> iostat -t -G FRA 5 Group_Name Dsk_Name Reads Writes Read_Time Write_Time FRA RAC1$LUN3 585083392 98942464 94.659862 4.03044 FRA RAC2$LUN3 1847296 98942464 .054822 4.134049 FRA RACQ$LUN4 57344 24576 .035944 .018594 Group_Name Dsk_Name Reads Writes Read_Time Write_Time FRA RAC1$LUN3 368640.00 0.00 0.01 0.00 FRA RAC2$LUN3 0.00 0.00 0.00 0.00 FRA RACQ$LUN4 0.00 0.00 0.00 0.00
Where -t
displays time statistics (Read_Time, Write_Time)-G FRA
displays statistics for the FRA diskgroup, change the diskgroup name according to your needs. 5
is a refresh interval. When the interval is specified then the value displayed (bytes or I/Os) is the difference between the previous and current values, not the total value. But if a refresh interval is not specified, the number displayed represents the total number of bytes or I/Os.
For synopsis and description about all available iostat options, run help
:
ASMCMD> help iostat iostat Displays I/O statistics for Oracle ASM disks in mounted disk groups. Synopsis iostat [-et][--io] [--suppressheader] [--region] [-G <diskgroup>] [<interval>] Description iostat lists disk group statistics using the V$ASM_DISK_STAT view. The options for the iostat command are described below. -e - Displays error statistics (Read_Err, Write_Err). -G diskgroup - Displays statistics for the disk group name. --suppressheader - Suppresses column headings. --io - Displays information in number of I/Os, instead of bytes. -t - Displays time statistics (Read_Time, Write_Time). --region - Displays information for cold and hot disk regions (Cold_Reads, Cold_Writes, Hot_Reads, Hot_Writes). interval - Refreshes the statistics display based on the interval value (seconds). The attribute descriptions for iostat command output are described below. To view the complete set of statistics for a disk group, use the V$ASM_DISK_STAT view. Group_Name Name of the disk group. Dsk_Name Name of the disk. Reads Total number of bytes read from the disk. If the --io option is entered, then the value is displayed as number of I/Os. Writes Total number of bytes written to the disk. If the --io option is entered, then the value is displayed as number of I/Os. Cold_Reads Total number of bytes read from the cold disk region. If the --io option is entered, then the value is displayed as number of I/Os. Writes Total number of bytes written to the disk. Cold_Writes Total number of bytes written to the cold disk region. If the --io option is entered, then the value is displayed as number of I/Os. Hot_Reads Total number of bytes read from the hot disk region. If the --io option is entered, then the value is displayed as number of I/Os. Writes Total number of bytes written to the disk. Cold_Writes Total number of bytes written to the cold Hot_Writes Total number of bytes written to the hot disk region. If the --io option is entered, then the value is displayed as number of I/Os. Read_Err Total number of failed I/O read requests for the disk. Write_Err Total number of failed I/O write requests for the disk. Read_Time Total I/O time (in seconds) for read requests for the disk if the TIMED_STATISTICS initialization parameter is set to TRUE (0 if set to FALSE). Write_Time Total I/O time (in seconds) for write requests for the disk if the TIMED_STATISTICS initialization parameter is set to TRUE (0 if set to FALSE). Writes Total number of bytes written to the disk. Cold_Writes Total number of bytes written to the cold Hot_Writes Total number of bytes written to the hot disk If a refresh interval is not specified, the number displayed represents the total number of bytes or I/Os. Ifa refresh interval is specified, then the value displayed (bytes or I/Os) is the difference between the previous and current values, not the total value. Examples The following are examples of the iostat command. The first example displays disk I/O statistics for the data disk group in total number of bytes. The second example displays disk I/O statistics for the data disk group in total number of I/O operations. ASMCMD [+] > iostat -G data Group_Name Dsk_Name Reads Writes DATA DATA_0000 180488192 473707520 DATA DATA_0001 1089585152 469538816 DATA DATA_0002 191648256 489570304 DATA DATA_0003 175724032 424845824 DATA DATA_0004 183421952 781429248 DATA DATA_0005 1102540800 855269888 DATA DATA_0006 171290624 447662592 DATA DATA_0007 172281856 361337344 DATA DATA_0008 173225472 390840320 DATA DATA_0009 288497152 838680576 DATA DATA_0010 196657152 375764480 DATA DATA_0011 436420096 356003840 ASMCMD [+] > iostat --io -G data Group_Name Dsk_Name Reads Writes DATA DATA_0000 2801 34918 DATA DATA_0001 58301 35700 DATA DATA_0002 3320 36345 DATA DATA_0003 2816 10629 DATA DATA_0004 2883 34850 DATA DATA_0005 59306 38097 DATA DATA_0006 2151 10129 DATA DATA_0007 2686 10376 DATA DATA_0008 2105 8955 DATA DATA_0009 9121 36713 DATA DATA_0010 3557 8596 DATA DATA_0011 17458 9269