<p>Hi Lars.</p>
<p>Thanks, I will get signed up for that list and resubmit.</p>
<p>Lars.</p>
<div class="gmail_quote">On Dec 23, 2010 5:03 PM, &quot;Lars Engels&quot; &lt;<a href="mailto:lars.engels@0x20.net">lars.engels@0x20.net</a>&gt; wrote:<br type="attribution">&gt; On Thu, Dec 23, 2010 at 11:30:25AM -0500, Lars R. Noldan wrote:<br>
&gt;&gt; On Dec.23 I shared the following the Dru in #PCBSD.  It was written by <br>&gt;&gt; my co-worker on Oct.10.  She requested that he post it here.  Since I <br>&gt;&gt; follow this list, and he doesn&#39;t I am going to post it here for him.<br>
&gt;&gt; <br>&gt;&gt; Thanks.<br>&gt;&gt; Lars<br>&gt;&gt; <br>&gt;&gt; FreeBSD needs work<br>&gt;&gt; last modified on 2010-10-10 at 19:33 - keywords: freebsd zfs iscsi whining<br>&gt;&gt; <br>&gt;&gt; Warning: This is not a post whining about Adobe Flash or how hard it is <br>
&gt;&gt; to get my playstation controller to work in Quake.<br>&gt;&gt; <br>&gt;&gt; This is, instead, a post whining about how hard it is to use ZFS and <br>&gt;&gt; iSCSI on FreeBSD. Recently I was tasked with building some <br>
&gt;&gt; storage-related projects. The tools of choice involved FreeBSD sitting <br>&gt;&gt; on some hardware with a large collection of high-volume drives. These <br>&gt;&gt; drives were presented JBOD-style to the host OS, and a couple of them <br>
&gt;&gt; were SSDs. The idea was to make one massive raidz2 zpool with a mirrored <br>&gt;&gt; ZIL on the SSDs. Then we could spin off zvols and pitch them via iSCSI <br>&gt;&gt; to our application and database servers.<br>
&gt;&gt; <br>&gt;&gt; Sound simple? It isn&#39;t. To get it working, we had to switch to <br>&gt;&gt; OpenSolaris. Which is a bit of a damn problem.<br>&gt;&gt; <br>&gt;&gt; There were two really bad problems in FreeBSD that prevented us from <br>
&gt;&gt; deploying our OS of choice to these systems.<br>&gt;&gt; <br>&gt;&gt; Problem the first:<br>&gt;&gt; ZFS on FreeBSD (at zpool version 13 as of this project) is only like 80% <br>&gt;&gt; there. What I mean by that is ZFS is friggin fantastic for your massive <br>
&gt;&gt; desktop nerdmachine, or your creepy 8TB basement &quot;media archive&quot;, or any <br>&gt;&gt; other low-traffic consumer-grade project you might want to undertake. <br>&gt;&gt; But when you start putting some load on it...<br>
&gt;&gt; <br>&gt;&gt; The biggest problem I had seemed to be caused by multiple read <br>&gt;&gt; operations during snapshot creation. If you took a snapshot while lots <br>&gt;&gt; of iSCSI (or NFS) (or local) access is going on, the zfs process gets <br>
&gt;&gt; stuck with a wait state. What it boils down to is that you have to be <br>&gt;&gt; super careful to disable access while you&#39;re creating (or, in bad cases, <br>&gt;&gt; sending) snapshots off -- which completely wrecks the point of the damn <br>
&gt;&gt; snapshot functionality.<br>&gt;&gt; <br>&gt;&gt; Oh, and it would crash BSD too. Sometimes it would just eat all the RAM <br>&gt;&gt; and the machine would fall down.<br>&gt;&gt; <br>&gt;&gt; Problem the second:<br>
&gt;&gt; iSCSI support in FreeBSD is abominable. I&#39;m given to understand this is <br>&gt;&gt; because the main iSCSI dev in FreeBSD-land is possessed of insufficient <br>&gt;&gt; hardware to model high-performance workloads. If that&#39;s the case, we <br>
&gt;&gt; need to get that man some damn hardware. Or convince Covad to update <br>&gt;&gt; their AoE stuff, since AoE is nicer anyway.<br>&gt;&gt; <br>&gt;&gt; If the iSCSI traffic crossed subnets, performance would tank. If the <br>
&gt;&gt; iSCSI targets were accessed from a non-FreeBSD initiator, performance <br>&gt;&gt; would tank. If a FreeBSD initiator accesses a non-FreeBSD target, <br>&gt;&gt; performance tanks. Are you seeing a pattern here? Best-practices <br>
&gt;&gt; objections aside, it&#39;s clear that the dev has a handful of machines on a <br>&gt;&gt; dumb switch, and that&#39;s the test platform. As soon as you instantiate <br>&gt;&gt; some sophistication, the whole thing falls down. Again.<br>
&gt;&gt; How do we fix this?<br>&gt;&gt; <br>&gt;&gt; I suppose I could devote some time to mastering the implementation <br>&gt;&gt; details of iSCSI and ZFS, then fix the stuff myself. That&#39;s not really <br>&gt;&gt; the best use of my time, however, and I&#39;m not in a position to get paid <br>
&gt;&gt; to do that sort of thing. But there are a few things anyone (myself <br>&gt;&gt; included) can do:<br>&gt;&gt; test.<br>&gt;&gt; <br>&gt;&gt;   * report bugs.<br>&gt;&gt;   * provide stack traces and failure scenarios.<br>
&gt;&gt;   * whine constantly.<br>&gt;&gt;   * provide testing hardware.<br>&gt;&gt; <br>&gt;&gt; All of these are helpful, especially the constant whining. The problem <br>&gt;&gt; needs to be front-and-center, or it&#39;ll get de-prioritized in favor of <br>
&gt;&gt; other (and in my opinion) less important problems. I don&#39;t give a crap <br>&gt;&gt; that your video card doesn&#39;t push hard enough to run EVE in FreeBSD. I <br>&gt;&gt; want the ZFS functionality that now only FreeBSD actively provides, and <br>
&gt;&gt; I want the iSCSI functionality ZFS was designed to enable.<br>&gt;&gt; <br>&gt; <br>&gt;&gt; _______________________________________________<br>&gt;&gt; Testing mailing list<br>&gt;&gt; <a href="mailto:Testing@lists.pcbsd.org">Testing@lists.pcbsd.org</a><br>
&gt;&gt; <a href="http://lists.pcbsd.org/mailman/listinfo/testing">http://lists.pcbsd.org/mailman/listinfo/testing</a><br>&gt; <br>&gt; <br>&gt; Hi Lars,<br>&gt; <br>&gt; I think that the PCBSD Testing mailing list might be the wrong list for<br>
&gt; this problem.<br>&gt; Please send this issue to <a href="mailto:freebsd-fs@freebsd.org">freebsd-fs@freebsd.org</a> <br>&gt; <br>&gt; Cheers<br>&gt; <br>&gt; Lars<br></div>