This discussion is archived
1 Reply Latest reply: Feb 20, 2012 8:37 AM by mgerdts - oracle RSS

How do I figure out which disk in my ZFS pool is the slowest?

918533 Newbie
Currently Being Moderated
In contravention to all advice, I built my home backup server using whatever hard drives were available at the time. As a result I have a completely heterogeneous ZFS system as shown below.

I now have some spare money to upgrade the system, I am wondering how to determine which disks are the slowest performers and therefore where best to spend my meagre resources.

Everything I can find about ZFS reports statistics at the mirror level. I know my mirrors have some fast disks and some slow ones. Short of pulling each one and plugging it into a Linux system and running "hdparm -tT", is there any Solaris 11 command which will tell me the individual performance of each drive?

[Background - I started out as a C programmer and sysadmin on SunOS 4.1 20 years ago; now freshly back with Solaris after a 10 year experiment with Linux, and only because of the data security which ZFS offers.]

root@proliant1:~# zpool status
pool: tank
state: ONLINE
scan: scrub repaired 0 in 14h33m with 0 errors on Wed Feb 1 15:33:49 2012
config:

NAME STATE READ WRITE CKSUM
tank ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
c7t1d0 ONLINE 0 0 0
c7t2d0 ONLINE 0 0 0
mirror-1 ONLINE 0 0 0
c11t0d0 ONLINE 0 0 0
c12t0d0 ONLINE 0 0 0
mirror-2 ONLINE 0 0 0
c15t0d0 ONLINE 0 0 0
c7t0d0 ONLINE 0 0 0
c7t5d0 ONLINE 0 0 0
cache
c8t0d0s0 ONLINE 0 0 0
c13t0d0 ONLINE 0 0 0
spares
c7t3d0 AVAIL

errors: No known data errors

pool: tpool
state: ONLINE
scan: scrub repaired 0 in 0h24m with 0 errors on Tue Feb 14 23:24:26 2012
config:

NAME STATE READ WRITE CKSUM
tpool ONLINE 0 0 0
c16t0d0s0 ONLINE 0 0 0

errors: No known data errors


root@proliant1:~# zpool iostat -v tank 30
capacity operations bandwidth
pool alloc free read write read write
----------- ----- ----- ----- ----- ----- -----
tank 1.21T 1.29T 10 115 736K 504K
mirror 677G 1.15T 4 38 382K 214K
c7t1d0 - - 3 14 361K 215K
c7t2d0 - - 3 14 361K 215K
mirror 334G 130G 2 38 201K 158K
c11t0d0 - - 2 9 190K 159K
c12t0d0 - - 2 9 190K 159K
mirror 224G 8.08G 2 38 153K 131K
c15t0d0 - - 1 11 142K 131K
c7t0d0 - - 1 13 142K 131K
c7t5d0 - - 1 14 142K 131K
cache - - - - - -
c8t0d0s0 1.96G 7.87M 0 0 4.33K 43.8K
c13t0d0 1.94G 7.98M 0 0 4.05K 43.2K
----------- ----- ----- ----- ----- ----- -----

capacity operations bandwidth
pool alloc free read write read write
----------- ----- ----- ----- ----- ----- -----
tank 1.21T 1.29T 15 649 225K 2.45M
mirror 677G 1.15T 6 219 156K 1.13M
c7t1d0 - - 2 79 65.5K 1.12M
c7t2d0 - - 3 80 92.0K 1.13M
mirror 334G 130G 3 215 9.88K 671K
c11t0d0 - - 2 49 5.59K 674K
c12t0d0 - - 1 49 4.68K 674K
mirror 224G 8.08G 5 214 59.0K 683K
c15t0d0 - - 1 60 9.43K 685K
c7t0d0 - - 2 76 36.2K 685K
c7t5d0 - - 1 76 13.6K 685K
cache - - - - - -
c8t0d0s0 1.96G 7.98M 3 2 17.2K 42.7K
c13t0d0 1.94G 7.61M 2 2 15.1K 114K
----------- ----- ----- ----- ----- ----- -----

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points