Hi all we consider using ZFS for various storages (DB, etc). Most features are great, especially the ease of use. Nevertheless, a few questions : - we are using SAN disks, so most JBOD recommandations dont apply, but I did not find many experiences of zpool of a few terabytes on Luns... anybody ? - we cannot remove a device from a pool. so no way of correcting the attachment of a 200 GB LUN on a 6 TB pool on which oracle runs ... am i the only one worrying ? - on a sun cluster, luns are seen on both nodes. Can we prevent mistakes like creating a pool on already assigned luns ? for example, veritas wants a "force" flag. With ZFS i can do : node1: zpool create X add lun1 lun2 node2 : zpool create Y add lun1 lun2 and then, results are unexpected, but pool X will never switch again ;-) resource and zone are dead. - what could be some interesting tools to test IO perfs ? did someone run iozone and publish baseline, modifications and according results ? well, anyway, thanks to zfs team :D This message posted from opensolaris.org
Hello Christophe, Friday, February 1, 2008, 7:55:31 PM, you wrote: CR> Hi all CR> we consider using ZFS for various storages (DB, etc). Most CR> features are great, especially the ease of use. CR> Nevertheless, a few questions : CR> - we are using SAN disks, so most JBOD recommandations dont CR> apply, but I did not find many experiences of zpool of a few terabytes on Luns... anybody ? Just works. CR> - we cannot remove a device from a pool. so no way of correcting CR> the attachment of a 200 GB LUN on a 6 TB pool on which oracle runs CR> ... am i the only one worrying ? You are not the only one. It''s somewhere on ZFS developers list... CR> - on a sun cluster, luns are seen on both nodes. Can we prevent CR> mistakes like creating a pool on already assigned luns ? for CR> example, veritas wants a "force" flag. With ZFS i can do : CR> node1: zpool create X add lun1 lun2 CR> node2 : zpool create Y add lun1 lun2 CR> and then, results are unexpected, but pool X will never switch CR> again ;-) resource and zone are dead. Actually it should complain and using -f (force) option will have to be used to do something like above. CR> - what could be some interesting tools to test IO perfs ? did CR> someone run iozone and publish baseline, modifications and according results ? Check for filebench (included with recent SXCE). Also check list archives and various blogs (including mine) for some zfs benchmarks. -- Best regards, Robert Milkowski mailto:milek at task.gda.pl http://milek.blogspot.com
Hi Robert, thanks for the answer.> You are not the only one. It''s somewhere on ZFS developers list...yes, i checked this on the whole list. so, lets wait for the feature.> Actually it should complain and using -f (force)on the active node, yes. but if we want to "reuse" the luns on the other node, there is no warning.> CR> - what could be some interesting tools to test IO > Check for filebench (included with recent SXCE).i ll try it. thanks for your answer christophe This message posted from opensolaris.org
Christophe Rolland wrote:> Hi all > we consider using ZFS for various storages (DB, etc). Most features are great, especially the ease of use. > Nevertheless, a few questions : > > - we are using SAN disks, so most JBOD recommandations dont apply, but I did not find many experiences of zpool of a few terabytes on Luns... anybody ? >Many X4500 customers have many TBytes of storage under ZFS (JBOD).> - we cannot remove a device from a pool. so no way of correcting the attachment of a 200 GB LUN on a 6 TB pool on which oracle runs ... am i the only one worrying ? >There is no way to prevent you from running "rm -rf /" either. In a real production environment, using best practices, you would never type such commands -- you would always script them and test on the test environment prior to rolling into production.> - on a sun cluster, luns are seen on both nodes. Can we prevent mistakes like creating a pool on already assigned luns ? for example, veritas wants a "force" flag. With ZFS i can do : > node1: zpool create X add lun1 lun2 > node2 : zpool create Y add lun1 lun2 > and then, results are unexpected, but pool X will never switch again ;-) resource and zone are dead. >We''ve had some informal discussions on how to do this. Currently, zpool and other commands which manage disk partitioning (eg. format) use libdiskmgt calls to determine if the slices or partitions are in use on the local machine. For shared storage, we won''t know if another machine might be using another slice. For Solaris Cluster, we could write an extended protocol for checking with other nodes in the cluster for use. However, even this does not work for the general case, such as a SAN or a SAN with heterogeneous nodes. -- richard> - what could be some interesting tools to test IO perfs ? did someone run iozone and publish baseline, modifications and according results ? > > well, anyway, thanks to zfs team :D > > > This message posted from opensolaris.org > _______________________________________________ > zfs-discuss mailing list > zfs-discuss at opensolaris.org > http://mail.opensolaris.org/mailman/listinfo/zfs-discuss >
> - on a sun cluster, luns are seen on both nodes. Can > we prevent mistakes like creating a pool on already > assigned luns ? for example, veritas wants a "force" > flag. With ZFS i can do : > node1: zpool create X add lun1 lun2 > node2 : zpool create Y add lun1 lun2 > and then, results are unexpected, but pool X will > never switch again ;-) resource and zone are dead.For our iSCSI SAN, we use iSNS to put LUNs into separate discovery domains (default + domain per host). So as part of creating or expanding a pool we first move LUNs to the appropriate host''s domain. Create would fail on node2 because it wouldn''t have visibility to the luns. Would that address your issue? This message posted from opensolaris.org