Renaming the subject to 'custom' and adding Karl to the cc list. Karl -
you'll need to subscribe to post...
* * * continuing... * * *
Hi Mark,
Apologies for the late response.. I already have the info on the flash disks
that are used by Exadata..
The machine has 12 hard disks.. and 16 flash disks.. and each of the drives
have a mapping to a particular /dev/sd device on this XML file
/opt/oracle/cell/cellsrv/deploy/config/cell_disk_config.xml
so when you actually do *fdisk -l* you will see all of the disks and flash
devices... below are the mapping on one of the storage cells...
[enkcel01:root] /root
> cellcli -e list celldisk attributes name,disktype,size
CD_00_cell01 HardDisk 1832.59375G
CD_01_cell01 HardDisk 1832.59375G
CD_02_cell01 HardDisk 1861.703125G
CD_03_cell01 HardDisk 1861.703125G
CD_04_cell01 HardDisk 1861.703125G
CD_05_cell01 HardDisk 1861.703125G
CD_06_cell01 HardDisk 1861.703125G
CD_07_cell01 HardDisk 1861.703125G
CD_08_cell01 HardDisk 1861.703125G
CD_09_cell01 HardDisk 1861.703125G
CD_10_cell01 HardDisk 1861.703125G
CD_11_cell01 HardDisk 1861.703125G
FD_00_cell01 FlashDisk 22.875G <-- "/dev/sdr"
FD_00_enkcel01 FlashDisk 22.875G <-- "/dev/sdaa"
FD_01_cell01 FlashDisk 22.875G <-- "/dev/sds"
FD_02_cell01 FlashDisk 22.875G <-- "/dev/sdt"
FD_03_cell01 FlashDisk 22.875G <-- "/dev/sdu"
FD_04_cell01 FlashDisk 22.875G <-- "/dev/sdz"
FD_06_cell01 FlashDisk 22.875G <-- "/dev/sdab"
FD_07_cell01 FlashDisk 22.875G <-- "/dev/sdac"
FD_08_cell01 FlashDisk 22.875G <-- "/dev/sdn"
FD_09_cell01 FlashDisk 22.875G <-- "/dev/sdo"
FD_10_cell01 FlashDisk 22.875G <-- "/dev/sdp"
FD_11_cell01 FlashDisk 22.875G <-- "/dev/sdq"
FD_12_cell01 FlashDisk 22.875G <-- "/dev/sdv"
FD_13_cell01 FlashDisk 22.875G <-- "/dev/sdw"
FD_14_cell01 FlashDisk 22.875G <-- "/dev/sdx"
FD_15_cell01 FlashDisk 22.875G <-- "/dev/sdy"
and below are the details of the /dev/sds device from
the cell_disk_config.xml and what is shown on dmesg
<Target TYPE="oracle.ossmgmt.ms.hwadapter.diskadp.MSPhysDiskImpl"
NAME="FLASH_1_1">
<Attribute NAME="physicalSize" VALUE="22.8880615234375G"></Attribute>
<Attribute NAME="diskType" VALUE="FlashDisk"></Attribute>
<Attribute NAME="id" VALUE="1014M02JYG"></Attribute>
<Attribute NAME="errCmdTimeoutCount" VALUE="0"></Attribute>
<Attribute NAME="physicalInsertTime" VALUE="1304701249972"></Attribute>
<Attribute NAME="isReenableLunDone" VALUE="FALSE"></Attribute>
<Attribute NAME="errHardReadCount" VALUE="0"></Attribute>
<Attribute NAME="errMediaCount" VALUE="0"></Attribute>
<Attribute NAME="errHardWriteCount" VALUE="0"></Attribute>
<Attribute NAME="sectorRemapCount" VALUE="0"></Attribute>
<Attribute NAME="status" VALUE="normal"></Attribute>
<Attribute NAME="doZap" VALUE="FALSE"></Attribute>
<Attribute NAME="slotNumber" VALUE="PCI Slot: 1; FDOM: 1"></Attribute>
<Attribute NAME="physicalSerial" VALUE="1014M02JYG"></Attribute>
<Attribute NAME="name" VALUE="FLASH_1_1"></Attribute>
<Attribute NAME="errOtherCount" VALUE="0"></Attribute>
<Attribute NAME="makeModel" VALUE="MARVELL SD88SA02"></Attribute>
<Attribute NAME="errSeekCount" VALUE="0"></Attribute>
</Target>
<Target TYPE="oracle.ossmgmt.ms.core.MSCellDisk" NAME="FD_01_cell01">
<Attribute NAME="interleaving" VALUE="none"></Attribute>
<Attribute NAME="diskType" VALUE="FlashDisk"></Attribute>
<Attribute NAME="devicePartition" VALUE="/dev/sds"></Attribute>
<Attribute NAME="id"
VALUE="00000128-e01a-a633-0000-000000000000"></Attribute>
<Attribute NAME="freeSpace" VALUE="0"></Attribute>
<Attribute NAME="comment"></Attribute>
<Attribute NAME="deviceName" VALUE="/dev/sds"></Attribute>
<Attribute NAME="status" VALUE="normal"></Attribute>
<Attribute NAME="errorCount" VALUE="0"></Attribute>
<Attribute NAME="lun" VALUE="1_1"></Attribute>
<Attribute NAME="name" VALUE="FD_01_cell01"></Attribute>
<Attribute NAME="creationTime" VALUE="1275070162567"></Attribute>
<Attribute NAME="size" VALUE="22.875G"></Attribute>
</Target>
> cat /var/log/dmesg | grep -i sds
SCSI device sds: 47999744 512-byte hdwr sectors (24576 MB)
sds: Write Protect is off
sds: Mode Sense: 73 00 00 08
SCSI device sds: drive cache: write through
SCSI device sds: 47999744 512-byte hdwr sectors (24576 MB)
sds: Write Protect is off
sds: Mode Sense: 73 00 00 08
SCSI device sds: drive cache: write through
sds: unknown partition table
sd 9:0:1:0: Attached scsi disk sds
so having known all of the /dev/sd devices.. I was thinking if I can have a
custom module similar to what the oracle guys did and name is as "FLASH"
which are disks performance numbers coming from the flash devices
# Thu Aug 18 16:09:30 2011 Connected: 4 of 4
#
<--------CPU--------><-----------Memory-----------><----------Disks-----------><----------Network----------><-Hello->
#Host cpu sys inter ctxsw Free Buff Cach Inac Slab Map KBRead Reads
KBWrit Writes KBIn PktIn KBOut PktOut Total
cell2 16 7 2368 17772 8M 3M 42M 20M 36M 558M 4 1
13 8 19 28 5 21 2570
cell3 13 5 2500 18337 9M 4M 47M 25M 37M 580M 0 0
7 4 10 15 3 11 2660
cell1 12 4 2547 18346 8M 6M 47M 26M 35M 536M 0 0
27 7 10 15 2 10 3020
db1 7 3 1513 3202 23M 31M 633M 86M 136M 994M 0 0
28 4 4 10 3 8 4190
This, brought me to another bunch of questions..
- can you walk me through the hello.ph on how can I include the 16 flash
disks to capture the columns "KBRead Reads KBWrit Writes" ?
- colmux -addr db1,cell1,cell2,cell3 -command "-scdmn" <-- so if I do
this command, having the flash disks also present when I do fdisk -l... will
the <----------Disks-----------> column include the stats for the 12 hard
disks and 16 flash disks? or just the 12 hard disks?
Thanks in advance Mark..
-Karl Arao
* * * My Reply * * *
so if you're telling me that the flash disks map to 'sd' disks, doesn't that
mean collectl already collects the data from them? wouldn't they all be
contained in /prod/diskstats? The easiest thing to do to verify this is
"collectl -sD" and I'll bet you see them all.
This is really a key question as it drives lots of other questions. For
example if this is true, it also means ALL the disks will have their I/O
included under 'disks' which I suspect you wouldn't want.
Since collectl does have filtering capability for the disk, you could
include something like --diskfilt "aa|bb|cc..." and include only the names
of the hard drives you want to be included in the disk totals. Then you can
handle the flash disks separately. What would be even better would be if
there was a way to force the flash disks to have some unique string in their
name like like 'sdba, sdbb, sdbc, etc...' and perhaps I could even modify
the filter test to exclude disks that match the pattern rather than only
include disks that match that pattern. Then you might be able to do
something like --diskfile !sdb[a-z] which could (if I implement it) exclude
any disk that has a letter following sdb.
Let's first get clear on this and then we can talk about what to do in an
import module. The short answer if is the data is already in
/proc/diskstats, it will already be loaded into collectl global variables
and all you'd need to do is put in a few print statements - real easy to
do...
-mark
------------------------------------------------------------------------------
Get a FREE DOWNLOAD! and learn more about uberSVN rich system,
user administration capabilities and model configuration. Take
the hassle out of deploying and managing Subversion and the
tools developers use with it. http://p.sf.net/sfu/wandisco-d2d-2
_______________________________________________
Collectl-interest mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/collectl-interest