I have a server, with two external drive cages attached, on separate controllers: c0::dsk/c0t0d0 disk connected configured unknown c0::dsk/c0t1d0 disk connected configured unknown c0::dsk/c0t2d0 disk connected configured unknown c0::dsk/c0t3d0 disk connected configured unknown c0::dsk/c0t4d0 disk connected configured unknown c0::dsk/c0t5d0 disk connected configured unknown c0::dsk/c0t6d0 disk connected configured unknown c0::dsk/c0t7d0 disk connected configured unknown c0::dsk/c0t8d0 disk connected configured unknown c0::dsk/c0t9d0 disk connected configured unknown c0::dsk/c0t10d0 disk connected configured unknown c0::dsk/c0t11d0 disk connected configured unknown c1::dsk/c1t1d0 disk connected configured unknown c1::dsk/c1t2d0 disk connected configured unknown c1::dsk/c1t3d0 disk connected configured unknown c1::dsk/c1t4d0 disk connected configured unknown c1::dsk/c1t5d0 disk connected configured unknown c1::dsk/c1t6d0 disk connected configured unknown c1::dsk/c1t7d0 disk connected configured unknown c1::dsk/c1t8d0 disk connected configured unknown c1::dsk/c1t9d0 disk connected configured unknown c1::dsk/c1t10d0 disk connected configured unknown c1::dsk/c1t11d0 disk connected configured unknown It would be nice to create a setup similar to zpool create sub1 raidz c0t0d0 c0t1d0 c0t2d0 c0t3d0 c0t4d0 c0t5d0 zpool add sub1 raidz c0t6d0 c0t7d0 c0t8d0 c0t9d0 c0t10d0 c0t11d0 zpool create sub2 raidz c1t0d0 c1t1d0 c1t2d0 c1t3d0 c1t4d0 c1t5d0 zpool add sub2 raidz c1t6d0 c1t7d0 c1t8d0 c1t9d0 c1t10d0 c1t11d0 zpool create pool mirror sub1 sub2 As I could lose a HDD in either external drive cage, or indeed a whole external drive cage (controller/cable/power) without downtime. But I have a feeling I can not do this? What would be recommended? -- This message posted from opensolaris.org
24 disks, 2 controllers. You could create a mirrored pool of 12 vdevs, e.g. zpool create tank mirror c0t0d0 c1t1d0 zpool add tank mirror c0t1d0 c1t2d0 ... Alternating between the 2 controllers for each mirror so that when one controller fails, the pool would become degraded but still available. You would lose half the storage space to mirroring, but would gain better redundency, in my opinion. It all depends on the application of your pool. Otherwise, create 2 raidz-2 vdevs and add the second one the the pool. Hope that helps ;) -- This message posted from opensolaris.org
On Tue, 11 Jan 2011, Jorgen Lundman wrote:> > It would be nice to create a setup similar to > > zpool create sub1 raidz c0t0d0 c0t1d0 c0t2d0 c0t3d0 c0t4d0 c0t5d0 > zpool add sub1 raidz c0t6d0 c0t7d0 c0t8d0 c0t9d0 c0t10d0 c0t11d0 > > zpool create sub2 raidz c1t0d0 c1t1d0 c1t2d0 c1t3d0 c1t4d0 c1t5d0 > zpool add sub2 raidz c1t6d0 c1t7d0 c1t8d0 c1t9d0 c1t10d0 c1t11d0 > > zpool create pool mirror sub1 sub2 > > As I could lose a HDD in either external drive cage, or indeed a whole external drive cage (controller/cable/power) without downtime. > > But I have a feeling I can not do this? What would be recommended?Nothing is impossible (if you are willing to do part of this outside of zfs) but it is really not so wise to create huge mirror devices like this. It is much better to construct mirror pools using many smaller devices directly. The reason is that if something goes wrong, the failure is more isolated and resilver times are dramatically improved. Overall performance will be improved. The recommendation would be to add many mirror vdevs such as c0t0d0/c1t0d0. The wasted space would be a bit less than what you proposed since it would avoid the raidz overhead. Bob -- Bob Friesenhahn bfriesen at simple.dallas.tx.us, http://www.simplesystems.org/users/bfriesen/ GraphicsMagick Maintainer, http://www.GraphicsMagick.org/