David L Kensiski
2009-Nov-04 16:29 UTC
[zfs-discuss] abysmal performance using zfs iSCSI target
I have created an iSCSI target using ZFS on host k01: k01# zfs create -V 100g kpool_k01/k01tgt-i21-solotest k01# zfs set shareiscsi=on kpool_k01/k01tgt-i21-solotest And attached it statically to an initiator node i21: i21# iscsiadm add static-config iqn.1986-03.com.sun: 02:d43c6110-67c8-46d5-92d1-ce39c592cd8c,192.168.168.161 i21# zpool create poolsolotest c5t600144F04AF06B990000238B1722B500d0 And now when I try to create a file in the pool, it is pitifully slow: i21# time mkfile 100m /poolsolotest/100m.file real 29.7 user 0.0 sys 0.1 Any thoughts about why this is or what I can do to improve performance? Thanks, --Dave -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.opensolaris.org/pipermail/zfs-discuss/attachments/20091104/602cdb6e/attachment.html>
Dave,> I have created an iSCSI target using ZFS on host k01: > > k01# zfs create -V 100g kpool_k01/k01tgt-i21-solotest > k01# zfs set shareiscsi=on kpool_k01/k01tgt-i21-solotest > > And attached it statically to an initiator node i21: > > i21# iscsiadm add static-config iqn.1986-03.com.sun: > 02:d43c6110-67c8-46d5-92d1-ce39c592cd8c,192.168.168.161 > i21# zpool create poolsolotest > c5t600144F04AF06B990000238B1722B500d0 > > And now when I try to create a file in the pool, it is pitifully slow: > > i21# time mkfile 100m /poolsolotest/100m.file > real 29.7 > user 0.0 > sys 0.1 > > Any thoughts about why this is or what I can do to improve > performance?Add the "-n" option to mkfile? :-) Seriously though, there are many possible places in the end-to-end data path that could attribute to the overall poor performance you are seeing, all details you have not mentioned in your posting above. The available CPU, memory, and other system resources on both nodes; k01 and i21, the network bandwidth and link latency between these systems, the type of ZFS storage pool on k01, the vdevs that make up that ZFS storage pool, other system workloads active, all come into play when looking at performance. It may not be just one of these things that cause poor performance, but maybe a combination of some, or all of them. The system k01 is also using the iSCSI Target Daemon, a subsystem which has been updated in Nevada / OpenSolaris with the iSCSI Target in COMSTAR. The iSCSI Target Daemon, being a single user-mode process in Solaris, was known to have performance issues, but not of the severity of what you are reporting above. Therefore factors other than the daemon itself are likely contributing factors to this poor end-to- end performance you are experiencing. If you are running Nevada / OpenSolaris, and have the means to switch to the iSCSI Target in COMSTAR, these other performance issues may still result in you seeing overall poor performance. You could remove the ZFS filesystem on the node i21, testing the raw device /dev/rdsk/c5t600144F04AF06B990000238B1722B500d0s0, and using the utility dd(1m), then test performance. You could not use the ZVOL on node k01, instead testing with a 100 MB ram disk, and configuring it with iSCSI Target''s CLI # ramdiskadm -a diskA 100m /dev/ramdisk/diskA # iscsitadm create target --backing-store /dev/ramdisk/diskA --lun 0 ram-diskA - Jim> > Thanks, > --Dave > > _______________________________________________ > zfs-discuss mailing list > zfs-discuss at opensolaris.org > http://mail.opensolaris.org/mailman/listinfo/zfs-discuss-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.opensolaris.org/pipermail/zfs-discuss/attachments/20091105/489de96c/attachment.html>